1
0
forked from ha5pls/ONBEAT

feat(tx): add flowgraph for txing over audio (SSB, NFM, etc.)

This commit is contained in:
2025-12-06 13:34:07 +01:00
parent 235c2dd60d
commit 915ac7bf89

359
onbeat_tx_audio.grc Normal file
View File

@@ -0,0 +1,359 @@
options:
parameters:
author: HA5PLS
catch_exceptions: 'True'
category: '[GRC Hier Blocks]'
cmake_opt: ''
comment: ''
copyright: GPL 3.0 or later
description: Transmitter flowgraph for onbeat
gen_cmake: 'On'
gen_linking: dynamic
generate_options: qt_gui
hier_block_src_path: '.:'
id: onbeat_tx
max_nouts: '0'
output_language: python
placement: (0,0)
qt_qss_theme: ''
realtime_scheduling: ''
run: 'True'
run_command: '{python} -u {filename}'
run_options: prompt
sizing_mode: fixed
thread_safe_setters: ''
title: ONBEAT transmitter - audio
window_size: (1000,1000)
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [8, 8]
rotation: 0
state: enabled
blocks:
- name: OVERSAMPLING
id: variable
parameters:
comment: ''
value: '24'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [288, 12.0]
rotation: 0
state: enabled
- name: RRC_ALPHA
id: variable
parameters:
comment: ''
value: '0.35'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [816, 12.0]
rotation: 0
state: enabled
- name: samp_rate
id: variable
parameters:
comment: ''
value: '48000'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [192, 12.0]
rotation: 0
state: enabled
- name: symbol_map
id: variable
parameters:
comment: ''
value: '[0, 1, 3, 2]'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [712, 12.0]
rotation: 0
state: enabled
- name: ONBEAT_Mod_0
id: ONBEAT_Mod
parameters:
OVERSAMPLING: OVERSAMPLING
RRC_ALPHA: RRC_ALPHA
affinity: ''
alias: ''
comment: ''
data_len: '1'
maxoutbuf: '0'
minoutbuf: '0'
preamble: '[0x33 for i in range(0, 128*2, 8)]'
syncword: syncword
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [480, 268.0]
rotation: 0
state: enabled
- name: analog_sig_source_x_0
id: analog_sig_source_x
parameters:
affinity: ''
alias: ''
amp: '1'
comment: ''
freq: 2700/2
maxoutbuf: '0'
minoutbuf: '0'
offset: '0'
phase: '0'
samp_rate: samp_rate
type: complex
waveform: analog.GR_COS_WAVE
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [480, 404.0]
rotation: 0
state: enabled
- name: audio_sink_0
id: audio_sink
parameters:
affinity: ''
alias: ''
comment: ''
device_name: ''
num_inputs: '1'
ok_to_block: 'True'
samp_rate: samp_rate
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1344, 356.0]
rotation: 0
state: true
- name: blocks_complex_to_real_0
id: blocks_complex_to_real
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [912, 360.0]
rotation: 0
state: enabled
- name: blocks_multiply_const_xx_0
id: blocks_multiply_const_xx
parameters:
affinity: ''
alias: ''
comment: ''
const: '0.1'
maxoutbuf: '0'
minoutbuf: '0'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1104, 356.0]
rotation: 0
state: true
- name: blocks_multiply_xx_0
id: blocks_multiply_xx
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '2'
type: complex
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [768, 344.0]
rotation: 0
state: true
- name: network_socket_pdu_1
id: network_socket_pdu
parameters:
affinity: ''
alias: ''
comment: ''
host: 0.0.0.0
maxoutbuf: '0'
minoutbuf: '0'
mtu: '10000'
port: tx_port
tcp_no_delay: 'False'
type: TCP_SERVER
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [40, 276.0]
rotation: 0
state: enabled
- name: pdu_pdu_to_tagged_stream_0
id: pdu_pdu_to_tagged_stream
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
tag: packet_len
type: byte
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [240, 300.0]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '1.0'
axislabels: 'True'
bw: samp_rate
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: '0'
fftsize: '1024'
freqhalf: 'True'
grid: 'False'
gui_hint: ''
label: Relative Gain
label1: ''
label10: ''''''
label2: ''''''
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'True'
maxoutbuf: '0'
minoutbuf: '0'
name: '""'
nconnections: '1'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '10'
ymin: '-140'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1260.0, 432]
rotation: 270
state: true
- name: syncword
id: parameter
parameters:
alias: ''
comment: ''
hide: none
label: ''
short_id: ''
type: ''
value: '"0000011100001001000110110010110101110111100110001010100111111010"'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [448, 12.0]
rotation: 0
state: enabled
- name: tx_port
id: parameter
parameters:
alias: ''
comment: ''
hide: none
label: ''
short_id: ''
type: str
value: '50001'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [40, 180.0]
rotation: 0
state: enabled
connections:
- [ONBEAT_Mod_0, '0', blocks_multiply_xx_0, '0']
- [analog_sig_source_x_0, '0', blocks_multiply_xx_0, '1']
- [blocks_complex_to_real_0, '0', blocks_multiply_const_xx_0, '0']
- [blocks_multiply_const_xx_0, '0', audio_sink_0, '0']
- [blocks_multiply_const_xx_0, '0', qtgui_freq_sink_x_0_0, '0']
- [blocks_multiply_xx_0, '0', blocks_complex_to_real_0, '0']
- [network_socket_pdu_1, pdus, pdu_pdu_to_tagged_stream_0, pdus]
- [pdu_pdu_to_tagged_stream_0, '0', ONBEAT_Mod_0, '0']
metadata:
file_format: 1