Created
May 21, 2022 08:31
-
-
Save daniestevez/d7a969170c9c8a13070304b728e91f94 to your computer and use it in GitHub Desktop.
QO-100 multimedia beacon GNU Radio decoder flowgraph
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
options: | |
parameters: | |
author: Daniel Estevez | |
catch_exceptions: 'True' | |
category: '[GRC Hier Blocks]' | |
cmake_opt: '' | |
comment: '' | |
copyright: '' | |
description: '' | |
gen_cmake: 'On' | |
gen_linking: dynamic | |
generate_options: qt_gui | |
hier_block_src_path: '.:' | |
id: qo100_multimedia_beacon | |
max_nouts: '0' | |
output_language: python | |
placement: (0,0) | |
qt_qss_theme: '' | |
realtime_scheduling: '' | |
run: 'True' | |
run_command: '{python} -u {filename}' | |
run_options: run | |
sizing_mode: fixed | |
thread_safe_setters: '' | |
title: QO-100 multimedia beacon RX | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [8, 8] | |
rotation: 0 | |
state: enabled | |
blocks: | |
- name: baudrate | |
id: variable | |
parameters: | |
comment: '' | |
value: '2400' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [80, 660.0] | |
rotation: 0 | |
state: true | |
- name: constellation_8apsk | |
id: variable_constellation | |
parameters: | |
comment: '' | |
const_points: sym_points | |
dims: '1' | |
normalization: digital.constellation.NO_NORMALIZATION | |
precision: '8' | |
rot_sym: '7' | |
soft_dec_lut: None | |
sym_map: sym_map | |
type: calcdist | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [976, 468.0] | |
rotation: 0 | |
state: true | |
- name: decim1 | |
id: variable | |
parameters: | |
comment: '' | |
value: '25' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [232, 228.0] | |
rotation: 0 | |
state: true | |
- name: decim2 | |
id: variable | |
parameters: | |
comment: '' | |
value: 100//decim1 | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [376, 228.0] | |
rotation: 0 | |
state: true | |
- name: nfilt | |
id: variable | |
parameters: | |
comment: '' | |
value: '64' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [256, 660.0] | |
rotation: 0 | |
state: true | |
- name: rrc_taps | |
id: variable | |
parameters: | |
comment: '' | |
value: firdes.root_raised_cosine(nfilt, nfilt, 1.0/sps, 0.2, int(ceil(15*sps*nfilt))) | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [336, 660.0] | |
rotation: 0 | |
state: true | |
- name: samp_rate | |
id: variable | |
parameters: | |
comment: '' | |
value: '600000' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [296, 16.0] | |
rotation: 0 | |
state: true | |
- name: sps | |
id: variable | |
parameters: | |
comment: '' | |
value: samp_rate/(decim1*decim2*baudrate) | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [176, 660.0] | |
rotation: 0 | |
state: true | |
- name: sym_map | |
id: variable | |
parameters: | |
comment: '' | |
value: '[0b000, 0b100, 0b001, 0b011, 0b010, 0b110, 0b111, 0b101]' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [976, 388.0] | |
rotation: 0 | |
state: true | |
- name: sym_map_inv | |
id: variable | |
parameters: | |
comment: '' | |
value: '[sym_map.index(a) for a in range(8)]' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [1144, 388.0] | |
rotation: 0 | |
state: true | |
- name: sym_points | |
id: variable | |
parameters: | |
comment: '' | |
value: '[0] + list(np.exp(1j*2*np.pi*np.arange(7)/7) * np.sqrt(8/7))' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [976, 316.0] | |
rotation: 0 | |
state: true | |
- name: syncword_bits | |
id: variable | |
parameters: | |
comment: '' | |
value: '''010100111110000110100110''' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [368, 796.0] | |
rotation: 0 | |
state: true | |
- name: syncword_symbols | |
id: variable | |
parameters: | |
comment: '' | |
value: '[sym_points[sym_map.index(a)] for a in [2, 4, 7, 6, 0, 6, 4, 6]]' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [752, 620.0] | |
rotation: 0 | |
state: true | |
- name: syncword_threshold | |
id: variable | |
parameters: | |
comment: '' | |
value: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [608, 816.0] | |
rotation: 0 | |
state: true | |
- name: tune | |
id: variable_qtgui_entry | |
parameters: | |
comment: '' | |
gui_hint: 1,0,1,1 | |
label: Tune frequency (Hz) | |
type: real | |
value: '-140' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [576, 24.0] | |
rotation: 0 | |
state: true | |
- name: blocks_complex_to_float_0 | |
id: blocks_complex_to_float | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [848, 720.0] | |
rotation: 0 | |
state: true | |
- name: blocks_complex_to_mag_0 | |
id: blocks_complex_to_mag | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [856, 792.0] | |
rotation: 0 | |
state: true | |
- name: blocks_conjugate_cc_0 | |
id: blocks_conjugate_cc | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [232, 408.0] | |
rotation: 0 | |
state: true | |
- name: blocks_file_sink_0 | |
id: blocks_file_sink | |
parameters: | |
affinity: '' | |
alias: '' | |
append: 'False' | |
comment: '' | |
file: /tmp/qo100_symbols.c64 | |
type: complex | |
unbuffered: 'False' | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [728, 356.0] | |
rotation: 0 | |
state: true | |
- name: blocks_interleaved_short_to_complex_0 | |
id: blocks_interleaved_short_to_complex | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
scale_factor: 2**15 | |
swap: 'False' | |
vector_input: 'False' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [376, 140.0] | |
rotation: 0 | |
state: true | |
- name: blocks_keep_m_in_n_0 | |
id: blocks_keep_m_in_n | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
m: 1392//2 | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
n: (24+1392)//2 | |
offset: 24//2 | |
type: short | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [232, 132.0] | |
rotation: 0 | |
state: enabled | |
- name: blocks_multiply_const_vxx_0 | |
id: blocks_multiply_const_vxx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
const: np.exp(1j*2*np.pi/7) | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
type: complex | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [48, 1012.0] | |
rotation: 0 | |
state: true | |
- name: blocks_multiply_const_vxx_0_0 | |
id: blocks_multiply_const_vxx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
const: np.exp(1j*2*np.pi*2/7) | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
type: complex | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [48, 1100.0] | |
rotation: 0 | |
state: true | |
- name: blocks_multiply_const_vxx_0_0_0 | |
id: blocks_multiply_const_vxx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
const: np.exp(1j*2*np.pi*5/7) | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
type: complex | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [48, 1364.0] | |
rotation: 0 | |
state: true | |
- name: blocks_multiply_const_vxx_0_1 | |
id: blocks_multiply_const_vxx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
const: np.exp(1j*2*np.pi*3/7) | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
type: complex | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [48, 1188.0] | |
rotation: 0 | |
state: true | |
- name: blocks_multiply_const_vxx_0_1_0 | |
id: blocks_multiply_const_vxx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
const: np.exp(1j*2*np.pi*6/7) | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
type: complex | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [48, 1452.0] | |
rotation: 0 | |
state: true | |
- name: blocks_multiply_const_vxx_0_2 | |
id: blocks_multiply_const_vxx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
const: np.exp(1j*2*np.pi*4/7) | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
type: complex | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [48, 1276.0] | |
rotation: 0 | |
state: true | |
- name: blocks_udp_source_0 | |
id: blocks_udp_source | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
eof: 'False' | |
ipaddr: 0.0.0.0 | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
port: '50100' | |
psize: '1472' | |
type: short | |
vlen: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [16, 124.0] | |
rotation: 0 | |
state: enabled | |
- name: blocks_unpack_k_bits_bb_0 | |
id: blocks_unpack_k_bits_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
k: '3' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [672, 924.0] | |
rotation: 0 | |
state: true | |
- name: blocks_unpack_k_bits_bb_0_0 | |
id: blocks_unpack_k_bits_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
k: '3' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [672, 1012.0] | |
rotation: 0 | |
state: true | |
- name: blocks_unpack_k_bits_bb_0_0_0 | |
id: blocks_unpack_k_bits_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
k: '3' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [672, 1276.0] | |
rotation: 0 | |
state: true | |
- name: blocks_unpack_k_bits_bb_0_1 | |
id: blocks_unpack_k_bits_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
k: '3' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [672, 1100.0] | |
rotation: 0 | |
state: true | |
- name: blocks_unpack_k_bits_bb_0_1_0 | |
id: blocks_unpack_k_bits_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
k: '3' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [672, 1364.0] | |
rotation: 0 | |
state: true | |
- name: blocks_unpack_k_bits_bb_0_1_0_0 | |
id: blocks_unpack_k_bits_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
k: '3' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [672, 1452.0] | |
rotation: 0 | |
state: true | |
- name: blocks_unpack_k_bits_bb_0_2 | |
id: blocks_unpack_k_bits_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
k: '3' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [672, 1188.0] | |
rotation: 0 | |
state: true | |
- name: digital_constellation_decoder_cb_0 | |
id: digital_constellation_decoder_cb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: constellation_8apsk | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [272, 924.0] | |
rotation: 0 | |
state: true | |
- name: digital_constellation_decoder_cb_0_0 | |
id: digital_constellation_decoder_cb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: constellation_8apsk | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [272, 1012.0] | |
rotation: 0 | |
state: true | |
- name: digital_constellation_decoder_cb_0_0_0 | |
id: digital_constellation_decoder_cb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: constellation_8apsk | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [272, 1276.0] | |
rotation: 0 | |
state: true | |
- name: digital_constellation_decoder_cb_0_1 | |
id: digital_constellation_decoder_cb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: constellation_8apsk | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [272, 1100.0] | |
rotation: 0 | |
state: true | |
- name: digital_constellation_decoder_cb_0_1_0 | |
id: digital_constellation_decoder_cb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: constellation_8apsk | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [272, 1364.0] | |
rotation: 0 | |
state: true | |
- name: digital_constellation_decoder_cb_0_1_0_0 | |
id: digital_constellation_decoder_cb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: constellation_8apsk | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [272, 1452.0] | |
rotation: 0 | |
state: true | |
- name: digital_constellation_decoder_cb_0_2 | |
id: digital_constellation_decoder_cb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: constellation_8apsk | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [272, 1188.0] | |
rotation: 0 | |
state: true | |
- name: digital_map_bb_0 | |
id: digital_map_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
map: sym_map | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [488, 924.0] | |
rotation: 0 | |
state: true | |
- name: digital_map_bb_0_0 | |
id: digital_map_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
map: sym_map | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [488, 1012.0] | |
rotation: 0 | |
state: true | |
- name: digital_map_bb_0_0_0 | |
id: digital_map_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
map: sym_map | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [488, 1276.0] | |
rotation: 0 | |
state: true | |
- name: digital_map_bb_0_1 | |
id: digital_map_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
map: sym_map | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [488, 1100.0] | |
rotation: 0 | |
state: true | |
- name: digital_map_bb_0_1_0 | |
id: digital_map_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
map: sym_map | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [488, 1364.0] | |
rotation: 0 | |
state: true | |
- name: digital_map_bb_0_1_0_0 | |
id: digital_map_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
map: sym_map | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [488, 1452.0] | |
rotation: 0 | |
state: true | |
- name: digital_map_bb_0_2 | |
id: digital_map_bb | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
map: sym_map | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [488, 1188.0] | |
rotation: 0 | |
state: true | |
- name: digital_symbol_sync_xx_0 | |
id: digital_symbol_sync_xx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
constellation: digital.constellation_bpsk().base() | |
damping: '1.0' | |
loop_bw: '0.005' | |
max_dev: '0.01' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
nfilters: nfilt | |
osps: '1' | |
pfb_mf_taps: rrc_taps | |
resamp_type: digital.IR_PFB_MF | |
sps: sps | |
ted_gain: '0.5' | |
ted_type: digital.TED_SIGNAL_TIMES_SLOPE_ML | |
type: cc | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [144, 460.0] | |
rotation: 0 | |
state: enabled | |
- name: epy_block_0 | |
id: epy_block | |
parameters: | |
_source_code: "\"\"\"\nEmbedded Python Blocks:\n\nEach time this file is saved,\ | |
\ GRC will instantiate the first class it finds\nto get ports and parameters\ | |
\ of your block. The arguments to __init__ will\nbe the parameters. All of\ | |
\ them are required to have default values!\n\"\"\"\n\nimport numpy as np\n\ | |
from gnuradio import gr\n\n\nclass blk(gr.sync_block): # other base classes\ | |
\ are basic_block, decim_block, interp_block\n \"\"\"8APSK Costas Loop\"\"\ | |
\"\n\n def __init__(self, alpha=0.01, beta=0.001, freq_limit=1.0): # only\ | |
\ default arguments here\n \"\"\"arguments to this function show up as\ | |
\ parameters in GRC\"\"\"\n gr.sync_block.__init__(\n self,\n\ | |
\ name='8APSK Costas Loop', # will show up in GRC\n \ | |
\ in_sig=[np.complex64],\n out_sig=[np.complex64]\n )\n \ | |
\ self.alpha = alpha\n self.beta = beta\n self.freq_limit\ | |
\ = freq_limit\n self.phase = 0\n self.freq = 0\n\n def work(self,\ | |
\ input_items, output_items):\n for j, x in enumerate(input_items[0]):\n\ | |
\ output_items[0][j] = z = x * np.exp(-1j * self.phase)\n \ | |
\ if np.abs(z) <= 0.5:\n error = 0\n else:\n \ | |
\ error = (np.angle(z) * 7 + np.pi) % (2*np.pi) - np.pi\n \ | |
\ self.freq += self.beta * error\n self.freq = np.clip(self.freq,\ | |
\ -self.freq_limit, self.freq_limit)\n self.phase += self.alpha *\ | |
\ error + self.freq\n self.phase = (self.phase + np.pi) % (2*np.pi)\ | |
\ - np.pi\n return len(output_items[0])\n" | |
affinity: '' | |
alias: '' | |
alpha: 1e-2 | |
beta: 1e-3 | |
comment: '' | |
freq_limit: 1e-1 | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
_io_cache: ('8APSK Costas Loop', 'blk', [('alpha', '0.01'), ('beta', '0.001'), | |
('freq_limit', '1.0')], [('0', 'complex', 1)], [('0', 'complex', 1)], '8APSK | |
Costas Loop', ['alpha', 'beta', 'freq_limit']) | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [512, 468.0] | |
rotation: 0 | |
state: true | |
- name: epy_block_1 | |
id: epy_block | |
parameters: | |
_source_code: "\"\"\"\nEmbedded Python Blocks:\n\nEach time this file is saved,\ | |
\ GRC will instantiate the first class it finds\nto get ports and parameters\ | |
\ of your block. The arguments to __init__ will\nbe the parameters. All of\ | |
\ them are required to have default values!\n\"\"\"\n\nimport numpy as np\n\ | |
from gnuradio import gr\nimport pmt\n\nsequence = np.array(\n [130 , 239\ | |
\ , 223 , 19 , 146 , 254 , 12 , 86 , 106 , 68 ,\n 77\ | |
\ , 213 , 243 , 216 , 102 , 227 , 108 , 113 , 229 , 89 ,\n\ | |
\ 26 , 64 , 138 , 216 , 225 , 121 , 194 , 137 , 152 , \ | |
\ 64 ,\n 51 , 175 , 68 , 200 , 37 , 104 , 247 , 68 ,\ | |
\ 193 , 50 ,\n 19 , 14 , 196 , 81 , 4 , 236 , 191 ,\ | |
\ 249 , 83 , 25 ,\n 161 , 171 , 167 , 29 , 33 , 139 ,\ | |
\ 7 , 152 , 230 , 144 ,\n 125 , 206 , 34 , 236 , 112 ,\ | |
\ 78 , 219 , 34 , 181 , 161 ,\n 7 , 45 , 198 , 235 ,\ | |
\ 62 , 115 , 194 , 100 , 209 , 95 ,\n 186 , 161 , 53 ,\ | |
\ 10 , 110 , 246 , 122 , 246 , 207 , 194 ,\n 178 , 63 ,\ | |
\ 232 , 93 , 158 , 234 , 231 , 73 , 214 , 64,\n 130 , \ | |
\ 239 , 223 , 19 , 146 , 254 , 12 , 86 , 106 , 68 ,\n \ | |
\ 77 , 213 , 243 , 216 , 102 , 227 , 108 , 113 , 229 , \ | |
\ 89 ,\n 26 , 64 , 138 , 216 , 225 , 121 , 194 , 137 , \ | |
\ 152 , 64 ,\n 51 , 175 , 68 , 200 , 37 , 104 , 247 ,\ | |
\ 68 , 193 , 50 ,\n 19 , 14 , 196 , 81 , 4 , 236 ,\ | |
\ 191 , 249 , 83 , 25 ,\n 161 , 171 , 167 , 29 , 33 ,\ | |
\ 139 , 7 , 152 , 230 , 144 ,\n 125 , 206 , 34 , 236 ,\ | |
\ 112 , 78 , 219 , 34 , 181 , 161 ,\n 7 , 45 , 198 ,\ | |
\ 235 , 62 , 115 , 194 , 100 , 209 , 95 ,\n 186 , 161 ,\ | |
\ 53 , 10 , 110 , 246 , 122 , 246 , 207 , 194 ,\n 178 ,\ | |
\ 63 , 232 , 93 , 158 , 234 , 231 , 73 , 214 , 64,\n \ | |
\ 130 , 239 , 223 , 19 , 146 , 254 , 12 , 86 , 106 , 68\ | |
\ ,\n 77 , 213 , 243 , 216 , 102 , 227 , 108 , 113 , 229\ | |
\ , 89 ,\n 26 , 64 , 138 , 216 , 225 , 121 , 194 , 137\ | |
\ , 152 , 64 ,\n 51 , 175 , 68 , 200 , 37 , 104 , 247\ | |
\ , 68 , 193 , 50 ,\n 19 , 14 , 196 , 81 , 4 , 236\ | |
\ , 191 , 249 , 83 , 25 ,\n 161 , 171 , 167 , 29 , 33\ | |
\ , 139 , 7 , 152 , 230 , 144 ,\n 125 , 206 , 34 , 236\ | |
\ , 112 , 78 , 219 , 34 , 181 , 161 ,\n 7 , 45 , 198\ | |
\ , 235 , 62 , 115 , 194 , 100 , 209 , 95 ,\n 186 , 161\ | |
\ , 53 , 10 , 110 , 246 , 122 , 246 , 207 , 194 ,\n 178\ | |
\ , 63 , 232 , 93 , 158 , 234 , 231 , 73 , 214 , 64,\n\ | |
\ 130 , 239 , 223 , 19 , 146 , 254 , 12 , 86 , 106 , \ | |
\ 68 ,\n 77 , 213 , 243 , 216 , 102 , 227 , 108 , 113 ,\ | |
\ 229 , 89 ,\n 26 , 64 , 138 , 216 , 225 , 121 , 194 ,\ | |
\ 137 , 152 , 64 ,\n 51 , 175 , 68 , 200 , 37 , 104 ,\ | |
\ 247 , 68 , 193 , 50 ,\n 19 , 14 , 196 , 81 , 4 ,\ | |
\ 236 , 191 , 249 , 83 , 25 ,\n 161 , 171 , 167 , 29 ,\ | |
\ 33 , 139 , 7 , 152 , 230 , 144 ,\n 125 , 206 , 34 ,\ | |
\ 236 , 112 , 78 , 219 , 34 , 181 , 161 ,\n 7 , 45 ,\ | |
\ 198 , 235 , 62 , 115 , 194 , 100 , 209 , 95 ,\n 186 ,\ | |
\ 161 , 53 , 10 , 110 , 246 , 122 , 246 , 207 , 194 ,\n\ | |
\ 178 , 63 , 232 , 93 , 158 , 234 , 231 , 73 , 214 , \ | |
\ 64],\n 'uint8')\n\nclass blk(gr.sync_block): # other base classes are\ | |
\ basic_block, decim_block, interp_block\n \"\"\"QO-100 scrambler\"\"\"\n\ | |
\n def __init__(self): # only default arguments here\n \"\"\"arguments\ | |
\ to this function show up as parameters in GRC\"\"\"\n gr.sync_block.__init__(\n\ | |
\ self,\n name='QO-100 Scrambler', # will show up in\ | |
\ GRC\n in_sig=[],\n out_sig=[]\n )\n self.message_port_register_in(pmt.intern('in'))\n\ | |
\ self.set_msg_handler(pmt.intern('in'), self.handle_msg)\n self.message_port_register_out(pmt.intern('out'))\n\ | |
\n def handle_msg(self, msg_pmt):\n msg = pmt.cdr(msg_pmt)\n \ | |
\ if not pmt.is_u8vector(msg):\n print('[ERROR] Received invalid\ | |
\ message type. Expected u8vector')\n return\n packet = np.frombuffer(bytes(pmt.u8vector_elements(msg)),\ | |
\ 'uint8')\n packet = packet ^ sequence[:packet.size]\n packet\ | |
\ = list(packet)\n self.message_port_pub(\n pmt.intern('out'),\n\ | |
\ pmt.cons(pmt.PMT_NIL, pmt.init_u8vector(len(packet), packet)))\n" | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
states: | |
_io_cache: ('QO-100 Scrambler', 'blk', [], [('in', 'message', 1)], [('out', 'message', | |
1)], 'QO-100 scrambler', []) | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [1072, 1104.0] | |
rotation: 0 | |
state: true | |
- name: fir_filter_xxx_0 | |
id: fir_filter_xxx | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
decim: '1' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
samp_delay: '0' | |
taps: np.conjugate(syncword_symbols)[::-1] | |
type: ccc | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [632, 724.0] | |
rotation: 0 | |
state: true | |
- name: freq_xlating_fir_filter_xxx_0 | |
id: freq_xlating_fir_filter_xxx | |
parameters: | |
affinity: '' | |
alias: '' | |
center_freq: 240e3 + tune | |
comment: '' | |
decim: decim1 | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
samp_rate: samp_rate | |
taps: firdes.low_pass(1, samp_rate, 3000, samp_rate/decim1 - 2*3000) | |
type: ccc | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [552, 140.0] | |
rotation: 0 | |
state: enabled | |
- name: import_0 | |
id: import | |
parameters: | |
alias: '' | |
comment: '' | |
imports: from math import ceil | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [776, 28.0] | |
rotation: 0 | |
state: true | |
- name: import_0_0 | |
id: import | |
parameters: | |
alias: '' | |
comment: '' | |
imports: import numpy as np | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [888, 28.0] | |
rotation: 0 | |
state: true | |
- name: low_pass_filter_0 | |
id: low_pass_filter | |
parameters: | |
affinity: '' | |
alias: '' | |
beta: '6.76' | |
comment: '' | |
cutoff_freq: '2500' | |
decim: decim2 | |
gain: '1' | |
interp: '1' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
samp_rate: samp_rate/decim1 | |
type: fir_filter_ccf | |
width: samp_rate/(decim1 * decim2) - 2 * 2500 | |
win: window.WIN_HAMMING | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [784, 116.0] | |
rotation: 0 | |
state: enabled | |
- name: qtgui_const_sink_x_0 | |
id: qtgui_const_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' | |
axislabels: 'True' | |
color1: '"blue"' | |
color10: '"red"' | |
color2: '"red"' | |
color3: '"red"' | |
color4: '"red"' | |
color5: '"red"' | |
color6: '"red"' | |
color7: '"red"' | |
color8: '"red"' | |
color9: '"red"' | |
comment: '' | |
grid: 'False' | |
gui_hint: 0,1,1,1 | |
label1: '' | |
label10: '' | |
label2: '' | |
label3: '' | |
label4: '' | |
label5: '' | |
label6: '' | |
label7: '' | |
label8: '' | |
label9: '' | |
legend: 'False' | |
marker1: '0' | |
marker10: '0' | |
marker2: '0' | |
marker3: '0' | |
marker4: '0' | |
marker5: '0' | |
marker6: '0' | |
marker7: '0' | |
marker8: '0' | |
marker9: '0' | |
name: 8APSK constellation | |
nconnections: '1' | |
size: int(0.5*baudrate) | |
style1: '0' | |
style10: '0' | |
style2: '0' | |
style3: '0' | |
style4: '0' | |
style5: '0' | |
style6: '0' | |
style7: '0' | |
style8: '0' | |
style9: '0' | |
tr_chan: '0' | |
tr_level: '0.0' | |
tr_mode: qtgui.TRIG_MODE_FREE | |
tr_slope: qtgui.TRIG_SLOPE_POS | |
tr_tag: '""' | |
type: complex | |
update_time: '0.10' | |
width1: '1' | |
width10: '1' | |
width2: '1' | |
width3: '1' | |
width4: '1' | |
width5: '1' | |
width6: '1' | |
width7: '1' | |
width8: '1' | |
width9: '1' | |
xmax: '2' | |
xmin: '-2' | |
ymax: '2' | |
ymin: '-2' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [704, 468.0] | |
rotation: 0 | |
state: enabled | |
- name: qtgui_freq_sink_x_0 | |
id: qtgui_freq_sink_x | |
parameters: | |
affinity: '' | |
alias: '' | |
alpha1: '1.0' | |
alpha10: '1.0' | |
alpha2: '0.25' | |
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/(decim1*decim2) | |
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: '4096' | |
freqhalf: 'True' | |
grid: 'False' | |
gui_hint: 0,0,1,1 | |
label: Relative Gain | |
label1: Signal | |
label10: '''''' | |
label2: Mirrored signal | |
label3: '''''' | |
label4: '''''' | |
label5: '''''' | |
label6: '''''' | |
label7: '''''' | |
label8: '''''' | |
label9: '''''' | |
legend: 'True' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
name: Spectrum | |
nconnections: '2' | |
norm_window: 'False' | |
showports: 'False' | |
tr_chan: '0' | |
tr_level: '0.0' | |
tr_mode: qtgui.TRIG_MODE_FREE | |
tr_tag: '""' | |
type: complex | |
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: '-20' | |
ymin: '-70' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [440, 340.0] | |
rotation: 0 | |
state: true | |
- name: qtgui_time_sink_x_0 | |
id: qtgui_time_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' | |
axislabels: 'True' | |
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' | |
entags: 'True' | |
grid: 'False' | |
gui_hint: 2,0,1,2 | |
label1: I | |
label10: Signal 10 | |
label2: Q | |
label3: Amplitude | |
label4: Signal 4 | |
label5: Signal 5 | |
label6: Signal 6 | |
label7: Signal 7 | |
label8: Signal 8 | |
label9: Signal 9 | |
legend: 'True' | |
marker1: '-1' | |
marker10: '-1' | |
marker2: '-1' | |
marker3: '-1' | |
marker4: '-1' | |
marker5: '-1' | |
marker6: '-1' | |
marker7: '-1' | |
marker8: '-1' | |
marker9: '-1' | |
name: Syncword correlation | |
nconnections: '3' | |
size: (255+3)*8//3*2 | |
srate: baudrate | |
stemplot: 'False' | |
style1: '1' | |
style10: '1' | |
style2: '1' | |
style3: '1' | |
style4: '1' | |
style5: '1' | |
style6: '1' | |
style7: '1' | |
style8: '1' | |
style9: '1' | |
tr_chan: '0' | |
tr_delay: '0' | |
tr_level: '0.0' | |
tr_mode: qtgui.TRIG_MODE_FREE | |
tr_slope: qtgui.TRIG_SLOPE_POS | |
tr_tag: '""' | |
type: float | |
update_time: '0.10' | |
width1: '1' | |
width10: '1' | |
width2: '1' | |
width3: '1' | |
width4: '1' | |
width5: '1' | |
width6: '1' | |
width7: '1' | |
width8: '1' | |
width9: '1' | |
ylabel: Amplitude | |
ymax: '10' | |
ymin: '-10' | |
yunit: '""' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [1040, 720.0] | |
rotation: 0 | |
state: true | |
- name: satellites_crc_check_0 | |
id: satellites_crc_check | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
discard_crc: 'True' | |
final_xor: '0x0000' | |
initial_value: '0xFFFF' | |
input_reflected: 'True' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
num_bits: '16' | |
poly: '0x1021' | |
result_reflected: 'True' | |
skip_header_bytes: '0' | |
swap_endianness: 'False' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [1104, 1344.0] | |
rotation: 0 | |
state: enabled | |
- name: satellites_decode_rs_0 | |
id: satellites_decode_rs | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
fcr: '120' | |
gfpoly: '0x187' | |
interleave: '1' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
nroots: '32' | |
nsym: '8' | |
prim: '1' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [1112, 1180.0] | |
rotation: 0 | |
state: enabled | |
- name: satellites_file_receiver_0 | |
id: satellites_file_receiver | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
options: '""' | |
path: /tmp/ | |
receiver: qo100_multimedia | |
verbose: 'True' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [1128, 1492.0] | |
rotation: 0 | |
state: true | |
- name: satellites_hexdump_sink_0 | |
id: satellites_hexdump_sink | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
options: '""' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [1200, 1440.0] | |
rotation: 0 | |
state: disabled | |
- name: satellites_rms_agc_0 | |
id: satellites_rms_agc | |
parameters: | |
affinity: '' | |
alias: '' | |
alpha: 1e-2 | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
reference: '1.0' | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [88, 332.0] | |
rotation: 0 | |
state: enabled | |
- name: satellites_sync_to_pdu_packed_0 | |
id: satellites_sync_to_pdu_packed | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
packlen: '255' | |
sync: syncword_bits | |
threshold: syncword_threshold | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [816, 908.0] | |
rotation: 0 | |
state: true | |
- name: satellites_sync_to_pdu_packed_0_0 | |
id: satellites_sync_to_pdu_packed | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
packlen: '255' | |
sync: syncword_bits | |
threshold: syncword_threshold | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [816, 996.0] | |
rotation: 0 | |
state: true | |
- name: satellites_sync_to_pdu_packed_0_0_0 | |
id: satellites_sync_to_pdu_packed | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
packlen: '255' | |
sync: syncword_bits | |
threshold: syncword_threshold | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [816, 1260.0] | |
rotation: 0 | |
state: true | |
- name: satellites_sync_to_pdu_packed_0_1 | |
id: satellites_sync_to_pdu_packed | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
packlen: '255' | |
sync: syncword_bits | |
threshold: syncword_threshold | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [816, 1084.0] | |
rotation: 0 | |
state: true | |
- name: satellites_sync_to_pdu_packed_0_1_0 | |
id: satellites_sync_to_pdu_packed | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
packlen: '255' | |
sync: syncword_bits | |
threshold: syncword_threshold | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [816, 1348.0] | |
rotation: 0 | |
state: true | |
- name: satellites_sync_to_pdu_packed_0_1_0_0 | |
id: satellites_sync_to_pdu_packed | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
packlen: '255' | |
sync: syncword_bits | |
threshold: syncword_threshold | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [816, 1436.0] | |
rotation: 0 | |
state: true | |
- name: satellites_sync_to_pdu_packed_0_2 | |
id: satellites_sync_to_pdu_packed | |
parameters: | |
affinity: '' | |
alias: '' | |
comment: '' | |
maxoutbuf: '0' | |
minoutbuf: '0' | |
packlen: '255' | |
sync: syncword_bits | |
threshold: syncword_threshold | |
states: | |
bus_sink: false | |
bus_source: false | |
bus_structure: null | |
coordinate: [816, 1172.0] | |
rotation: 0 | |
state: true | |
connections: | |
- [blocks_complex_to_float_0, '0', qtgui_time_sink_x_0, '0'] | |
- [blocks_complex_to_float_0, '1', qtgui_time_sink_x_0, '1'] | |
- [blocks_complex_to_mag_0, '0', qtgui_time_sink_x_0, '2'] | |
- [blocks_conjugate_cc_0, '0', qtgui_freq_sink_x_0, '1'] | |
- [blocks_interleaved_short_to_complex_0, '0', freq_xlating_fir_filter_xxx_0, '0'] | |
- [blocks_keep_m_in_n_0, '0', blocks_interleaved_short_to_complex_0, '0'] | |
- [blocks_multiply_const_vxx_0, '0', digital_constellation_decoder_cb_0_0, '0'] | |
- [blocks_multiply_const_vxx_0_0, '0', digital_constellation_decoder_cb_0_1, '0'] | |
- [blocks_multiply_const_vxx_0_0_0, '0', digital_constellation_decoder_cb_0_1_0, '0'] | |
- [blocks_multiply_const_vxx_0_1, '0', digital_constellation_decoder_cb_0_2, '0'] | |
- [blocks_multiply_const_vxx_0_1_0, '0', digital_constellation_decoder_cb_0_1_0_0, | |
'0'] | |
- [blocks_multiply_const_vxx_0_2, '0', digital_constellation_decoder_cb_0_0_0, '0'] | |
- [blocks_udp_source_0, '0', blocks_keep_m_in_n_0, '0'] | |
- [blocks_unpack_k_bits_bb_0, '0', satellites_sync_to_pdu_packed_0, '0'] | |
- [blocks_unpack_k_bits_bb_0_0, '0', satellites_sync_to_pdu_packed_0_0, '0'] | |
- [blocks_unpack_k_bits_bb_0_0_0, '0', satellites_sync_to_pdu_packed_0_0_0, '0'] | |
- [blocks_unpack_k_bits_bb_0_1, '0', satellites_sync_to_pdu_packed_0_1, '0'] | |
- [blocks_unpack_k_bits_bb_0_1_0, '0', satellites_sync_to_pdu_packed_0_1_0, '0'] | |
- [blocks_unpack_k_bits_bb_0_1_0_0, '0', satellites_sync_to_pdu_packed_0_1_0_0, '0'] | |
- [blocks_unpack_k_bits_bb_0_2, '0', satellites_sync_to_pdu_packed_0_2, '0'] | |
- [digital_constellation_decoder_cb_0, '0', digital_map_bb_0, '0'] | |
- [digital_constellation_decoder_cb_0_0, '0', digital_map_bb_0_0, '0'] | |
- [digital_constellation_decoder_cb_0_0_0, '0', digital_map_bb_0_0_0, '0'] | |
- [digital_constellation_decoder_cb_0_1, '0', digital_map_bb_0_1, '0'] | |
- [digital_constellation_decoder_cb_0_1_0, '0', digital_map_bb_0_1_0, '0'] | |
- [digital_constellation_decoder_cb_0_1_0_0, '0', digital_map_bb_0_1_0_0, '0'] | |
- [digital_constellation_decoder_cb_0_2, '0', digital_map_bb_0_2, '0'] | |
- [digital_map_bb_0, '0', blocks_unpack_k_bits_bb_0, '0'] | |
- [digital_map_bb_0_0, '0', blocks_unpack_k_bits_bb_0_0, '0'] | |
- [digital_map_bb_0_0_0, '0', blocks_unpack_k_bits_bb_0_0_0, '0'] | |
- [digital_map_bb_0_1, '0', blocks_unpack_k_bits_bb_0_1, '0'] | |
- [digital_map_bb_0_1_0, '0', blocks_unpack_k_bits_bb_0_1_0, '0'] | |
- [digital_map_bb_0_1_0_0, '0', blocks_unpack_k_bits_bb_0_1_0_0, '0'] | |
- [digital_map_bb_0_2, '0', blocks_unpack_k_bits_bb_0_2, '0'] | |
- [digital_symbol_sync_xx_0, '0', epy_block_0, '0'] | |
- [epy_block_0, '0', blocks_file_sink_0, '0'] | |
- [epy_block_0, '0', blocks_multiply_const_vxx_0, '0'] | |
- [epy_block_0, '0', blocks_multiply_const_vxx_0_0, '0'] | |
- [epy_block_0, '0', blocks_multiply_const_vxx_0_0_0, '0'] | |
- [epy_block_0, '0', blocks_multiply_const_vxx_0_1, '0'] | |
- [epy_block_0, '0', blocks_multiply_const_vxx_0_1_0, '0'] | |
- [epy_block_0, '0', blocks_multiply_const_vxx_0_2, '0'] | |
- [epy_block_0, '0', digital_constellation_decoder_cb_0, '0'] | |
- [epy_block_0, '0', fir_filter_xxx_0, '0'] | |
- [epy_block_0, '0', qtgui_const_sink_x_0, '0'] | |
- [epy_block_1, out, satellites_decode_rs_0, in] | |
- [fir_filter_xxx_0, '0', blocks_complex_to_float_0, '0'] | |
- [fir_filter_xxx_0, '0', blocks_complex_to_mag_0, '0'] | |
- [freq_xlating_fir_filter_xxx_0, '0', low_pass_filter_0, '0'] | |
- [low_pass_filter_0, '0', satellites_rms_agc_0, '0'] | |
- [satellites_crc_check_0, ok, satellites_file_receiver_0, in] | |
- [satellites_crc_check_0, ok, satellites_hexdump_sink_0, in] | |
- [satellites_decode_rs_0, out, satellites_crc_check_0, in] | |
- [satellites_rms_agc_0, '0', blocks_conjugate_cc_0, '0'] | |
- [satellites_rms_agc_0, '0', digital_symbol_sync_xx_0, '0'] | |
- [satellites_rms_agc_0, '0', qtgui_freq_sink_x_0, '0'] | |
- [satellites_sync_to_pdu_packed_0, out, epy_block_1, in] | |
- [satellites_sync_to_pdu_packed_0_0, out, epy_block_1, in] | |
- [satellites_sync_to_pdu_packed_0_0_0, out, epy_block_1, in] | |
- [satellites_sync_to_pdu_packed_0_1, out, epy_block_1, in] | |
- [satellites_sync_to_pdu_packed_0_1_0, out, epy_block_1, in] | |
- [satellites_sync_to_pdu_packed_0_1_0_0, out, epy_block_1, in] | |
- [satellites_sync_to_pdu_packed_0_2, out, epy_block_1, in] | |
metadata: | |
file_format: 1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment