Comments (3)
The RS92-NGP (still flying in the US) might have different calibration data or a new firmware.
from rs.
RS92-NGP calib-data and PTU seems to be xor-obfuscated.
345f60d
from rs.
RS92-NGP
The RS92-SGP has 66 calibration coefficients starting at offset 0x40 (5 bytes each, 1 byte index plus 4 byte float32).
At first glance the RS92-NGP calibration data does not show these calibration values, although the config bytes suggest there are also 0x14A bytes for the coefficients, 5 bytes each.
However the XOR difference of two NGP-config/calib datasets shows the same parts being constant that are constant across RS92-SGP:
Though XORing NGP and SGP does not immediately reveal a potential XOR mask:
It turns out that except for the index and the float32-MSB, the middle bytes are permuted.
The 8x3=24 raw PTU values are also obfuscated. Here there are no constant values to be expected, only the MSB of each int24 should be constant most of the time. Observing a longer recording one can notice that the bytes change along with the (16 bit) frame counter, hence XORing the frame counter and the raw PTU gives data that looks more like 8 int24 values.
From a whole flight all the bytes (more or less) can be reconstructed. This shows that after 16 bytes the mask repeats, i.e. probably again 16 bytes (or 8 16-bit words).
Now a look into the EEPROM data shows, how the mask is generated and how the data is scrambled. Thanks to @pinkavaj for making a disassembler!
https://github.com/pinkavaj/vsdsp_asm
The seed starts at offset 0x24 in the config data, the raw asm function does something like this:
Lines 365 to 418 in 471e023
Another interesting observation is the data whitening sequence that RS92-AGP (and RS41) use instead of Manchester coding, this sequence can be found in the RS92-SGP and RS92-NGP as well. But the PTU scrambling of RS92-NGP is probably done for a different reason, it uses Manchester coding anyway.
from rs.
Related Issues (20)
- RS41 SGP Pressure Sensor Value HOT 2
- RS41 - dew point HOT 2
- rawhex input HOT 2
- Commandline for direct decode with rtl_fm HOT 10
- fft calculated using iq_server looks a bit strange HOT 12
- MP3-H1 sondes bandwidth HOT 2
- PTU not printed in JSON in silent mode HOT 1
- iq_server continues fft scanning mode HOT 5
- c34dft input arguments parsing problem HOT 3
- iq_fm --wav switch creates wav that canno't be played with the aplay HOT 7
- bch_ecc.c:54:15: error: unknown type name ‘ui8_t’ HOT 2
- RS41 temperature and humidity calculation. HOT 3
- DFM XDATA Support? HOT 7
- m10ptu show invalid frames HOT 2
- Meteosis: help needed HOT 59
- MRZ-H1 uBlox Version HOT 4
- Missing db.txt HOT 3
- Weathex WxR-301D decoding HOT 28
- weathex sonde HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rs.