gr-sarsat-modern/grc/sarsat_sarp_msg_extract.block.yml
Ryan Malloy 5867c54de3 feat: port gr-sarsat to GNU Radio 3.10+
Ported from zleffke/gr-sarsat (2018, GNU Radio 3.7):
- Updated Python 2 → Python 3
- Converted XML block definitions to YAML
- Added pyproject.toml for modern packaging
- Preserved original MIT license

Blocks:
- biphase_l_decode_bb: Manchester decoder (decim_block)
- pds_frame_sync: Frame synchronizer with PDU output
- sarp_msg_extract: SARP message splitter/validator
2026-02-11 02:22:28 -07:00

38 lines
934 B
YAML

id: sarsat_sarp_msg_extract
label: SARP Message Extractor
category: '[Sarsat]'
templates:
imports: from sarsat import sarp_msg_extract
make: sarp_msg_extract()
inputs:
- label: in
domain: message
outputs:
- label: valid
domain: message
- label: invalid
domain: message
documentation: |-
SARP (Search And Rescue Processor) Message Extractor.
Each 72-byte PDS frame contains three 24-byte SARP messages.
Each SARP message should start with the sync word 0xD60 (12 bits).
This block splits incoming PDS frames into individual SARP messages
and validates the sync word:
- 'valid' port: Messages with correct sync word (0xD60)
- 'invalid' port: Messages with incorrect sync word
Note: Even messages on the 'invalid' port may contain recoverable
beacon data - check BCH error correction codes.
Input: PDU from PDS Frame Sync block (72 bytes)
Output: Individual 24-byte SARP messages
file_format: 1