portapack-mayhem / mayhem-firmware

Custom firmware for the HackRF+PortaPack H1/H2
GNU General Public License v3.0
3.26k stars 533 forks source link

Radiosonde meteomodem M20 decoding #743

Closed przemo3679 closed 1 year ago

przemo3679 commented 1 year ago

There is new type of radiosonde from meteomodem: M20.

Unfortunetly I know nothing about decoding them. At current state mayhem 1.5.4 recognise it as a : meteomodem ??? and decodes only DateTime.

It would be nice to be able to decode at least position coordinates from the signal. This would help at sonde hunting proces.

gullradriel commented 1 year ago

Maybe you can try to look at how it's done and adjust a new setting ?

przemo3679 commented 1 year ago

Well, i'm not a programmer unfortunetly. But there is this project on Github: radiosonde_auto_rx. It is open source, and found there how it decodes M20. As I said, I'm not a programmer, but it looks vewry similar to M10 which is alredy coded. Probably code needs just a few tweaks.

gullradriel commented 1 year ago

I'm telling myself we should try to reach the author and connect him with someone familiar with how portapack is doing the actual work for his decoding, and try to add some more with their help.

joyel24 commented 1 year ago

I'm gonna try... I made this diff file from this project https://github.com/projecthorus/radiosonde_auto_rx left file is M10 and right is M20 The diff file expires in 1 month but anyway the original files are here : https://raw.githubusercontent.com/projecthorus/radiosonde_auto_rx/master/demod/mod/m10mod.c https://raw.githubusercontent.com/projecthorus/radiosonde_auto_rx/master/demod/mod/m20mod.c

I hope it will not be so hard... Diff file is here : https://www.diffchecker.com/5wBRPNFe/

joyel24 commented 1 year ago

Unfortunetly I know nothing about decoding them. At current state mayhem 1.5.4 recognise it as a : meteomodem ??? and decodes only DateTime.

After reading a bit the code I can say that the DateTime is not extracted from the rf packet, so not decoded. I've not tested but if you change the date of your portapack, I think you will see the change. ;)

I made my first tests yesterday to try to support meteomodem M20 but I had to wait for a new launch and climb a mountain to test the result as I did not git any sonde before.

But fortunately the sky gave me one at less than 15km today so it will be easier now !

przemo3679 commented 1 year ago

I made my first tests yesterday to try to support meteomodem M20 but I had to wait for a new launch and climb a mountain to test the result as I did not git any sonde before.

But fortunately the sky gave me one at less than 15km today so it will be easier now !

Unfortunetly i can't help you with coding, but i have several M20, device that decode them correctly (TTBeam + MySondyGo), and HackRF with Portapack. If You need help with testing just hit me up, so we can work together.

joyel24 commented 1 year ago

I made my first tests yesterday to try to support meteomodem M20 but I had to wait for a new launch and climb a mountain to test the result as I did not git any sonde before. But fortunately the sky gave me one at less than 15km today so it will be easier now !

Unfortunetly i can't help you with coding, but i have several M20, device that decode them correctly (TTBeam + MySondyGo), and HackRF with Portapack. If You need help with testing just hit me up, so we can work together.

I don't know how you can help me afar but If you wish to send me a TTGO it will be very helpful for me to take new ones as I also plan to try making a new firmware for the stm32 chip running on this M20 radiosonde to use it in other projects. I only have one for the moment so I don't want to brick it... 😊

Edit : I already have some results, coordinates looks ok but I have troubles with conversions and don't get decimals yet, only entire degrees. IMG_20230429_015557.jpg

joyel24 commented 1 year ago

DONE ! 😁

932

joyel24 commented 1 year ago

This issue can be closed...

joyel24 commented 1 year ago

I made my first tests yesterday to try to support meteomodem M20 but I had to wait for a new launch and climb a mountain to test the result as I did not git any sonde before. But fortunately the sky gave me one at less than 15km today so it will be easier now !

Unfortunetly i can't help you with coding, but i have several M20, device that decode them correctly (TTBeam + MySondyGo), and HackRF with Portapack. If You need help with testing just hit me up, so we can work together.

Finally I have a job for you if you are free now...

Flash this firmware on your portapack https://github.com/joyel24/portapack-mayhem/releases/tag/a74d0e5 Power on an M20 Take your TTGO and compare the altitude with portapack.

Thank you

przemo3679 commented 1 year ago

Rly sorry mate, 29.04-3.05 are holidays in my country, and im out of home. As soon as i get back i will flash and test your relase. Thanks for patience.

przemo3679 commented 1 year ago

Finally I have a job for you if you are free now...

Well, it seems to work to some extend. I've had M20 fly-by just now and this is the resaults. Note: difference between alt and coordinates are caused by delay between pictures. As is now it seems pretty accurate Thanks for your hard work mate. 20230503_014248 Screenshot_20230503_014605_MySondy GO

joyel24 commented 1 year ago

Really nice ! Thanks for your report. 🙂 Here, the wind direction changed and I have not been able to capture any packet since my recent work on the altitude decoding. I think I'm gonna open a new PR. 👍