rs1729 / RS

radiosonde decoding
GNU General Public License v3.0
171 stars 56 forks source link

Possible new DFM Model #16

Closed darksidelemm closed 5 years ago

darksidelemm commented 5 years ago

An interesting one observed by Pit[m] in Germany. A DFM sonde that has lat/lon etc decoding fine, but never obtains an ID.

I've got the raw bit output from auto_rx hosted here: https://rfhead.net/sondes/samples/dfm_unknown.bin

Run with: cat dfm_unknown.bin |./dfm09mod --bin (and whatever options you need)

Might be something new?

darksidelemm commented 5 years ago

Pit[m] has also mentioned that it appears to be showing up as DF63890B on radiosondy.info, but who knows what dxlAPRS is doing...

rs1729 commented 5 years ago

Interesting. The old decoder shows

[140] 2019-07-18 11:07:10.0 lat: 49.489927 lon: 7.784052 alt: 12808.4 vH: 12.69 D: 116.8 vV: 4.20 [141] 2019-07-18 11:07:11.0 lat: 49.489875 lon: 7.784207 alt: 12812.5 vH: 12.60 D: 118.0 vV: 4.16 [145] 2019-07-18 11:07:15.0 lat: 49.489659 lon: 7.784831 alt: 12828.6 vH: 12.76 D: 119.5 vV: 4.04 (ID9:17008907) [146] 2019-07-18 11:07:16.0 lat: 49.489605 lon: 7.784985 alt: 12832.6 vH: 12.57 D: 117.7 vV: 4.11 [147] 2019-07-18 11:07:17.0 lat: 49.489555 lon: 7.785137 alt: 12832.6 vH: 12.07 D: 116.8 vV: 4.11 [148] 2019-07-18 11:07:18.0 lat: 49.489505 lon: 7.785282 alt: 12840.8 vH: 11.53 D: 119.2 vV: 4.07 [149] 2019-07-18 11:07:19.0 lat: 49.489454 lon: 7.785418 alt: 12844.7 vH: 11.29 D: 120.7 vV: 3.95 [150] 2019-07-18 11:07:20.0 lat: 49.489403 lon: 7.785555 alt: 12848.9 vH: 11.55 D: 120.2 vV: 4.18 [151] 2019-07-18 11:07:21.0 lat: 49.489351 lon: 7.785695 alt: 12852.7 vH: 11.92 D: 119.3 vV: 3.91 [152] 2019-07-18 11:07:22.0 lat: 49.489351 lon: 7.785838 alt: 12856.7 vH: 11.92 D: 122.0 vV: 4.07 [153] 2019-07-18 11:07:23.0 lat: 49.489236 lon: 7.785979 alt: 12860.6 vH: 12.36 D: 124.0 vV: 3.93 [154] 2019-07-18 11:07:24.0 lat: 49.489174 lon: 7.786123 alt: 12864.6 vH: 12.67 D: 122.4 vV: 4.07 [156] 2019-07-18 11:07:26.0 lat: 49.489053 lon: 7.786422 alt: 12872.6 vH: 12.74 D: 122.5 vV: 4.16 (ID9:17008907) [158] 2019-07-18 11:07:28.0 lat: 49.488934 lon: 7.786703 alt: 12880.4 vH: 11.73 D: 122.2 vV: 4.11

dfm06ptu detects only DFM06 and DFM09. DFM09 has the ID in channel A, the last channel. Newer models have more channels, so the ID in the last channel could be in channel C or D. dfm09mod is more flexible and tries to detect the ID in the last channel. In all the samples I tested, the channel before the last one was always zero, that was easier to detect, since a decode in poor conditions could show higher max-channel numbers, if decoding went wrong, or lower, if the highest channel could not be decoded at all. So maybe if no zero-channel is detected, an alternative approach should be taken to detect the highest channel number without errors. Will take a look.

Also the second nibble next to the channel number seems to be "C" for the ID-channel, maybe that's a good alternative. (for DFM09 and higher, not sure about pilotsonde) my comment here: https://github.com/projecthorus/radiosonde_auto_rx/issues/109#issuecomment-459564600

DFM-09 has the ID in "channel A". Second nibble seems to be C for A, C, D.

UPDATE: quick fix (513): 0xsCaaaab (i.e. 2nd_nibble==0xC) no max-ch reset (yet), if another/second dfm is encountered (would require more book-keeping).

rs1729 commented 5 years ago

Pit[m] has also mentioned that it appears to be showing up as DF63890B on radiosondy.info, but who knows what dxlAPRS is doing...

ID9:17008907 = 0x103890B

They take the last 5 nibbles, DF6:3890B. But they have different methods, and DF6 or DF9 is sometimes misleading/confusing: https://github.com/projecthorus/radiosonde_auto_rx/issues/118#issuecomment-462707452

darksidelemm commented 5 years ago

Simple enough! Have changed my code to match. I've also merged in your dfm09mod changes (and confirmed they work fine with all the samples I have).

Thanks for the fixes!