id: apollo_fm_mod label: Apollo FM Mod category: '[Apollo USB]' flags: [python] parameters: - id: fm_deviation_hz label: FM Deviation (Hz) dtype: real default: '500000' - id: sample_rate label: Sample Rate dtype: real default: '5120000' inputs: - label: in domain: stream dtype: float outputs: - label: out domain: stream dtype: complex templates: imports: from apollo.fm_mod import fm_mod make: apollo.fm_mod.fm_mod(fm_deviation_hz=${fm_deviation_hz}, sample_rate=${sample_rate}) documentation: |- Apollo FM Modulator Applies frequency modulation to produce complex baseband signal. Takes a composite modulating signal (sum of SCO subcarriers) and outputs an FM complex baseband where instantaneous frequency is proportional to the input amplitude. Used in FM downlink mode (pre-launch checkout), not PM mode. This is the transmit-side counterpart to Apollo FM Demod. Parameters: fm_deviation_hz: Max frequency deviation in Hz (default 500 kHz) sample_rate: Sample rate in Hz (default 5.12 MHz) file_format: 1