Difference between revisions of "Adding a new data decoder"
From SatNOGS Wiki
m (→Resources) (Tag: Visual edit) |
(→How to create the parser for a new satellite downlink: imrove guide) (Tag: Visual edit) |
||
Line 13: | Line 13: | ||
#* Create a new .ksy-format file (press the empty sheet button in the lower left) | #* Create a new .ksy-format file (press the empty sheet button in the lower left) | ||
#* Upload the previously fetched raw frames as example data (press the cloud button in the lower left, select all files with raw frames) | #* Upload the previously fetched raw frames as example data (press the cloud button in the lower left, select all files with raw frames) | ||
− | #* Write the kaitai struct. | + | #* Write the kaitai struct. You can use existing parsers from the [https://gitlab.com/librespacefoundation/satnogs/satnogs-decoders satnogs-decoders] repository for reference. |
− | #* | + | #* Add a link to all the documentation of the satellite downlink which was used to write the kaitai struct (this can be done with a doc key) |
− | |||
# Check the results of your parser | # Check the results of your parser | ||
#* If another parser exists, cross-check your results with the output it provides. | #* If another parser exists, cross-check your results with the output it provides. | ||
#* Sometimes there are examples frames or examples recordings provided. Use them for verification (if the data is well-known.) | #* Sometimes there are examples frames or examples recordings provided. Use them for verification (if the data is well-known.) | ||
− | # | + | # |
+ | # Fork the [https://gitlab.com/librespacefoundation/satnogs/satnogs-decoders satnogs-decoders] repository and add your decoder as described in the [https://gitlab.com/librespacefoundation/satnogs/satnogs-decoders/tree/master#adding-a-new-decoder README] | ||
+ | # Create a commit with your new kaitai struct, push it to your fork and submit a Merge Request to satnogs-decoders | ||
+ | # Done. | ||
==== Resources ==== | ==== Resources ==== |
Revision as of 18:28, 14 April 2019
How to create the parser for a new satellite downlink
For satellite downlinks where SatNOGS provides demodulated data, but no decoder exists yet.
- Find and read documentation of the satellite downlink.
- Extract raw frames either from satnogs-network or satnogs-db.
- from network: Open good observations whith demodulated data,
- then open the observation via the API,
- copy the link to the payloads and download them (e.g. via wget)
- from db: Export frames of your satellite (how?), then convert them from hex to raw
- from network: Open good observations whith demodulated data,
- Write the Kaitai Struct (.ksy-file)
- Open the Kaitai WebIDE
- Create a new .ksy-format file (press the empty sheet button in the lower left)
- Upload the previously fetched raw frames as example data (press the cloud button in the lower left, select all files with raw frames)
- Write the kaitai struct. You can use existing parsers from the satnogs-decoders repository for reference.
- Add a link to all the documentation of the satellite downlink which was used to write the kaitai struct (this can be done with a doc key)
- Check the results of your parser
- If another parser exists, cross-check your results with the output it provides.
- Sometimes there are examples frames or examples recordings provided. Use them for verification (if the data is well-known.)
- Fork the satnogs-decoders repository and add your decoder as described in the README
- Create a commit with your new kaitai struct, push it to your fork and submit a Merge Request to satnogs-decoders
- Done.