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
40 lines
880 B
YAML
40 lines
880 B
YAML
id: sarsat_pds_frame_sync
|
|
label: PDS Frame Sync
|
|
category: '[Sarsat]'
|
|
|
|
parameters:
|
|
- id: tag_name
|
|
label: Tag Name
|
|
dtype: string
|
|
default: pds_sync
|
|
|
|
templates:
|
|
imports: from sarsat import pds_frame_sync
|
|
make: pds_frame_sync(tag_name=${tag_name})
|
|
|
|
inputs:
|
|
- label: in
|
|
domain: stream
|
|
dtype: byte
|
|
|
|
outputs:
|
|
- label: out
|
|
domain: message
|
|
|
|
documentation: |-
|
|
PDS (Polar-orbiting satellite Data Service) Frame Synchronizer.
|
|
|
|
Expects "Correlate Access Code - Tag" block upstream with the Biphase-L
|
|
decoded frame sync pattern (0x7FF = 15 ones).
|
|
|
|
When a frame sync tag is detected, collects the following 576 bits (72 bytes)
|
|
and emits as a PDU message.
|
|
|
|
Parameters:
|
|
tag_name: Name of the stream tag to look for (default: "pds_sync")
|
|
|
|
Input: Biphase-L decoded bit stream with frame sync tags
|
|
Output: PDU messages containing 72-byte PDS frames
|
|
|
|
file_format: 1
|