diff options
author | Håkon Vågsether <haakonsv@gmail.com> | 2017-09-24 12:16:22 +0200 |
---|---|---|
committer | Håkon Vågsether <haakonsv@gmail.com> | 2017-10-10 10:49:36 +0200 |
commit | baf7eaf8f29d5a490f2580917362cf5b3db47281 (patch) | |
tree | 7afab4ee2dfa6439ecf95d47aa68996020ea04c5 /gr-digital/grc | |
parent | 6fa9d33246251f44a0e78682e50e9a1cb0b03171 (diff) |
Added auto-generated YAML blocks
Diffstat (limited to 'gr-digital/grc')
147 files changed, 3093 insertions, 4718 deletions
diff --git a/gr-digital/grc/CMakeLists.txt b/gr-digital/grc/CMakeLists.txt index a3d0223290..78c8261525 100644 --- a/gr-digital/grc/CMakeLists.txt +++ b/gr-digital/grc/CMakeLists.txt @@ -17,7 +17,7 @@ # the Free Software Foundation, Inc., 51 Franklin Street, # Boston, MA 02110-1301, USA. -file(GLOB xml_files "*.xml") -install(FILES ${xml_files} +file(GLOB yml_files "*.yml") +install(FILES ${yml_files} DESTINATION ${GRC_BLOCKS_DIR} ) diff --git a/gr-digital/grc/digital.tree.yml b/gr-digital/grc/digital.tree.yml new file mode 100644 index 0000000000..0e4c2463e8 --- /dev/null +++ b/gr-digital/grc/digital.tree.yml @@ -0,0 +1,85 @@ +'[Core]': +- Coding: + - digital_additive_scrambler_bb + - digital_descrambler_bb + - digital_scrambler_bb +- Equalizers: + - digital_cma_equalizer_cc + - digital_lms_dd_equalizer_cc + - digital_kurtotic_equalizer_cc +- Measurement Tools: + - digital_mpsk_snr_est_cc + - digital_probe_density_b + - digital_probe_mpsk_snr_est_c +- Modulators: + - digital_cpmmod_bc + - digital_gfsk_mod + - digital_gfsk_demod + - digital_gmskmod_bc + - digital_gmsk_mod + - digital_gmsk_demod + - digital_constellation_modulator + - digital_constellation_receiver_cb + - variable_constellation + - variable_constellation_rect + - variable_modulate_vector +- Packet Operators: + - digital_correlate_access_code_tag_bb + - digital_correlate_access_code_xx_ts + - digital_crc32_bb + - digital_crc32_async_bb + - digital_framer_sink_1 + - variable_header_format_default + - digital_protocol_formatter_async + - digital_protocol_formatter_bb + - digital_protocol_parser_b + - digital_header_payload_demux + - digital_packet_headergenerator_bb + - digital_packet_headergenerator_bb_default + - digital_packet_headerparser_b + - digital_packet_headerparser_b_default + - digital_packet_sink + - digital_hdlc_framer_pb + - digital_hdlc_deframer_bp + - digital_simple_framer + - digital_simple_correlator +- OFDM: + - digital_ofdm_mod + - digital_ofdm_demod + - digital_ofdm_carrier_allocator_cvc + - digital_ofdm_chanest_vcvc + - digital_ofdm_cyclic_prefixer + - digital_ofdm_frame_acquisition + - digital_ofdm_frame_equalizer_vcvc + - digital_ofdm_frame_sink + - digital_ofdm_insert_preamble + - digital_ofdm_rx + - digital_ofdm_sampler + - digital_ofdm_serializer_vcc + - digital_ofdm_sync_pn + - digital_ofdm_sync_sc_cfb + - digital_ofdm_tx +- Symbol Coding: + - digital_binary_slicer_fb + - digital_chunks_to_symbols_xx + - digital_constellation_decoder_cb + - digital_constellation_receiver_cb + - digital_constellation_soft_decoder_cf + - digital_diff_decoder_bb + - digital_diff_encoder_bb + - digital_diff_phasor_cc + - digital_map_bb +- Synchronizers: + - digital_clock_recovery_mm_xx + - digital_costas_loop_cc + - digital_fll_band_edge_cc + - digital_pfb_clock_sync_xxx + - digital_pn_correlator_cc + - digital_symbol_sync_xx + - digital_corr_est_cc +- Waveform Generators: + - digital_glfsr_source_x +- Deprecated: + - digital_correlate_access_code_bb + - digital_simple_framer + - digital_simple_correlator diff --git a/gr-digital/grc/digital_additive_scrambler_bb.block.yml b/gr-digital/grc/digital_additive_scrambler_bb.block.yml new file mode 100644 index 0000000000..d447a2822d --- /dev/null +++ b/gr-digital/grc/digital_additive_scrambler_bb.block.yml @@ -0,0 +1,43 @@ +id: digital_additive_scrambler_bb +label: Additive Scrambler + +parameters: +- id: mask + label: Mask + dtype: hex + default: '0x8A' +- id: seed + label: Seed + dtype: hex + default: '0x7F' +- id: len + label: Length + dtype: int + default: '7' +- id: count + label: Count + dtype: int + default: '0' +- id: bits_per_byte + label: Bits per byte + dtype: int + default: '1' +- id: reset_tag_key + label: Reset tag key + dtype: string + default: '""' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.additive_scrambler_bb(${mask}, ${seed}, ${len}, count=${count}, + bits_per_byte=${bits_per_byte}, reset_tag_key=${reset_tag_key}) + +file_format: 1 diff --git a/gr-digital/grc/digital_additive_scrambler_bb.xml b/gr-digital/grc/digital_additive_scrambler_bb.xml deleted file mode 100644 index 2bb06e48a3..0000000000 --- a/gr-digital/grc/digital_additive_scrambler_bb.xml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Additive Scrambler -################################################### - --> -<block> - <name>Additive Scrambler</name> - <key>digital_additive_scrambler_bb</key> - <import>from gnuradio import digital</import> - <make>digital.additive_scrambler_bb($mask, $seed, $len, count=$count, bits_per_byte=$bits_per_byte, reset_tag_key=$reset_tag_key)</make> - <param> - <name>Mask</name> - <key>mask</key> - <value>0x8A</value> - <type>hex</type> - </param> - <param> - <name>Seed</name> - <key>seed</key> - <value>0x7F</value> - <type>hex</type> - </param> - <param> - <name>Length</name> - <key>len</key> - <value>7</value> - <type>int</type> - </param> - <param> - <name>Count</name> - <key>count</key> - <value>0</value> - <type>int</type> - </param> - <param> - <name>Bits per byte</name> - <key>bits_per_byte</key> - <value>1</value> - <type>int</type> - </param> - <param> - <name>Reset tag key</name> - <key>reset_tag_key</key> - <value>""</value> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_binary_slicer_fb.block.yml b/gr-digital/grc/digital_binary_slicer_fb.block.yml new file mode 100644 index 0000000000..143c97c0ed --- /dev/null +++ b/gr-digital/grc/digital_binary_slicer_fb.block.yml @@ -0,0 +1,16 @@ +id: digital_binary_slicer_fb +label: Binary Slicer + +inputs: +- domain: stream + dtype: float + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.binary_slicer_fb() + +file_format: 1 diff --git a/gr-digital/grc/digital_binary_slicer_fb.xml b/gr-digital/grc/digital_binary_slicer_fb.xml deleted file mode 100644 index 3187d13f92..0000000000 --- a/gr-digital/grc/digital_binary_slicer_fb.xml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Binary Slicer -################################################### - --> -<block> - <name>Binary Slicer</name> - <key>digital_binary_slicer_fb</key> - <import>from gnuradio import digital</import> - <make>digital.binary_slicer_fb()</make> - <sink> - <name>in</name> - <type>float</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_block_tree.xml b/gr-digital/grc/digital_block_tree.xml deleted file mode 100644 index 10346cbcd0..0000000000 --- a/gr-digital/grc/digital_block_tree.xml +++ /dev/null @@ -1,134 +0,0 @@ -<?xml version="1.0"?> -<!-- - Copyright (C) 2011-2017 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -##Block Tree for GR Digital blocks. -################################################### - --> -<cat> - <name>[Core]</name> - <cat> - <name>Coding</name> - <block>digital_additive_scrambler_bb</block> - <block>digital_descrambler_bb</block> - <block>digital_scrambler_bb</block> - </cat> - <cat> - <name>Equalizers</name> - <block>digital_cma_equalizer_cc</block> - <block>digital_lms_dd_equalizer_cc</block> - <block>digital_kurtotic_equalizer_cc</block> - </cat> - <cat> - <name>Measurement Tools</name> - <block>digital_mpsk_snr_est_cc</block> - <block>digital_probe_density_b</block> - <block>digital_probe_mpsk_snr_est_c</block> - </cat> - <cat> - <name>Modulators</name> - <block>digital_cpmmod_bc</block> - <block>digital_gfsk_mod</block> - <block>digital_gfsk_demod</block> - <block>digital_gmskmod_bc</block> - <block>digital_gmsk_mod</block> - <block>digital_gmsk_demod</block> - <block>digital_constellation_modulator</block> - <block>digital_constellation_receiver_cb</block> - <block>variable_constellation</block> - <block>variable_constellation_rect</block> - <block>variable_modulate_vector</block> - </cat> - <cat> - <name>Packet Operators</name> - <block>digital_correlate_access_code_tag_bb</block> - <block>digital_correlate_access_code_xx_ts</block> - <block>digital_crc32_bb</block> - <block>digital_crc32_async_bb</block> - <block>digital_framer_sink_1</block> - <block>variable_header_format_default</block> - <block>digital_protocol_formatter_async</block> - <block>digital_protocol_formatter_bb</block> - <block>digital_protocol_parser_b</block> - <block>digital_header_payload_demux</block> - <block>digital_packet_headergenerator_bb</block> - <block>digital_packet_headergenerator_bb_default</block> - <block>digital_packet_headerparser_b</block> - <block>digital_packet_headerparser_b_default</block> - <block>digital_packet_sink</block> - <block>digital_hdlc_framer_pb</block> - <block>digital_hdlc_deframer_bp</block> - <block>digital_simple_framer</block> - <block>digital_simple_correlator</block> - </cat> - <cat> - <name>OFDM</name> - <block>digital_ofdm_mod</block> - <block>digital_ofdm_demod</block> - <block>digital_ofdm_carrier_allocator_cvc</block> - <block>digital_ofdm_chanest_vcvc</block> - <block>digital_ofdm_cyclic_prefixer</block> - <block>digital_ofdm_frame_acquisition</block> - <block>digital_ofdm_frame_equalizer_vcvc</block> - <block>digital_ofdm_frame_sink</block> - <block>digital_ofdm_insert_preamble</block> - <block>digital_ofdm_rx</block> - <block>digital_ofdm_sampler</block> - <block>digital_ofdm_serializer_vcc</block> - <block>digital_ofdm_sync_pn</block> - <block>digital_ofdm_sync_sc_cfb</block> - <block>digital_ofdm_tx</block> - </cat> - <cat> - <name>Symbol Coding</name> - <block>digital_binary_slicer_fb</block> - <block>digital_chunks_to_symbols_xx</block> - <block>digital_constellation_decoder_cb</block> - <block>digital_constellation_receiver_cb</block> - <block>digital_constellation_soft_decoder_cf</block> - <block>digital_diff_decoder_bb</block> - <block>digital_diff_encoder_bb</block> - <block>digital_diff_phasor_cc</block> - <block>digital_map_bb</block> - </cat> - <cat> - <name>Synchronizers</name> - <block>digital_clock_recovery_mm_xx</block> - <block>digital_costas_loop_cc</block> - <block>digital_fll_band_edge_cc</block> - <block>digital_pfb_clock_sync_xxx</block> - <block>digital_pn_correlator_cc</block> - <block>digital_symbol_sync_xx</block> - <block>digital_corr_est_cc</block> - </cat> - <cat> - <name>Waveform Generators</name> - <block>digital_glfsr_source_x</block> - </cat> - <cat> - <name>Deprecated</name> - <block>digital_correlate_access_code_bb</block> - <block>digital_simple_framer</block> - <block>digital_simple_correlator</block> - </cat> -</cat> diff --git a/gr-digital/grc/digital_burst_shaper.block.yml b/gr-digital/grc/digital_burst_shaper.block.yml new file mode 100644 index 0000000000..a6d7defb4b --- /dev/null +++ b/gr-digital/grc/digital_burst_shaper.block.yml @@ -0,0 +1,50 @@ +id: digital_burst_shaper_xx +label: Burst Shaper +category: '[Core]/Packet Operators' + +parameters: +- id: type + label: Type + dtype: enum + options: [float, complex] + option_attributes: + fcn: [ff, cc] + taps: [float_vector, complex_vector] + hide: part +- id: window + label: Window Taps + dtype: ${ type.taps } + default: ([]) +- id: pre_padding + label: Pre-padding Length + dtype: int + default: '0' +- id: post_padding + label: Post-padding Length + dtype: int + default: '0' +- id: insert_phasing + label: Insert phasing symbols + dtype: enum + default: 'False' + options: ['False', 'True'] + option_labels: ['No', 'Yes'] +- id: length_tag_name + label: Length Tag Name + dtype: string + default: '"packet_len"' + +inputs: +- domain: stream + dtype: ${ type } + +outputs: +- domain: stream + dtype: ${ type } + +templates: + imports: from gnuradio import digital + make: digital.burst_shaper_${type.fcn}(${window}, ${pre_padding}, ${post_padding}, + ${insert_phasing}, ${length_tag_name}) + +file_format: 1 diff --git a/gr-digital/grc/digital_burst_shaper.xml b/gr-digital/grc/digital_burst_shaper.xml deleted file mode 100644 index 95e1bcbc77..0000000000 --- a/gr-digital/grc/digital_burst_shaper.xml +++ /dev/null @@ -1,71 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>Burst Shaper</name> - <key>digital_burst_shaper_xx</key> - <category>[Core]/Packet Operators</category> - <import>from gnuradio import digital</import> - <make>digital.burst_shaper_$(type.fcn)($window, $pre_padding, $post_padding, $insert_phasing, $length_tag_name)</make> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Float</name> - <key>float</key> - <opt>fcn:ff</opt> - <opt>taps:float_vector</opt> - </option> - <option> - <name>Complex</name> - <key>complex</key> - <opt>fcn:cc</opt> - <opt>taps:complex_vector</opt> - </option> - </param> - <param> - <name>Window Taps</name> - <key>window</key> - <value>([])</value> - <type>$(type.taps)</type> - </param> - <param> - <name>Pre-padding Length</name> - <key>pre_padding</key> - <value>0</value> - <type>int</type> - </param> - <param> - <name>Post-padding Length</name> - <key>post_padding</key> - <value>0</value> - <type>int</type> - </param> - <param> - <name>Insert phasing symbols</name> - <key>insert_phasing</key> - <value>False</value> - <type>enum</type> - <option> - <name>No</name> - <key>False</key> - </option> - <option> - <name>Yes</name> - <key>True</key> - </option> - </param> - <param> - <name>Length Tag Name</name> - <key>length_tag_name</key> - <value>"packet_len"</value> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>$type</type> - </sink> - <source> - <name>out</name> - <type>$type</type> - </source> -</block> diff --git a/gr-digital/grc/digital_chunks_to_symbols.block.yml b/gr-digital/grc/digital_chunks_to_symbols.block.yml new file mode 100644 index 0000000000..35b5ee94c6 --- /dev/null +++ b/gr-digital/grc/digital_chunks_to_symbols.block.yml @@ -0,0 +1,53 @@ +id: digital_chunks_to_symbols_xx +label: Chunks to Symbols + +parameters: +- id: in_type + label: Input Type + dtype: enum + options: [int, short, byte] + option_attributes: + fcn: [i, s, b] + hide: part +- id: out_type + label: Output Type + dtype: enum + options: [complex, float] + option_attributes: + fcn: [c, f] + table: [complex_vector, real_vector] + hide: part +- id: symbol_table + label: Symbol Table + dtype: ${ out_type.table } +- id: dimension + label: Dimension + dtype: int + default: '2' +- id: num_ports + label: Num Ports + dtype: int + default: '1' + hide: part + +inputs: +- domain: stream + dtype: ${ in_type } + multiplicity: ${ num_ports } + +outputs: +- domain: stream + dtype: ${ out_type } + multiplicity: ${ num_ports } + +asserts: +- ${ num_ports > 0 } + +templates: + imports: from gnuradio import digital + make: digital.chunks_to_symbols_${in_type.fcn}${out_type.fcn}(${symbol_table}, + ${dimension}) + callbacks: + - set_symbol_table(${symbol_table}) + +file_format: 1 diff --git a/gr-digital/grc/digital_chunks_to_symbols.xml b/gr-digital/grc/digital_chunks_to_symbols.xml deleted file mode 100644 index 9c6f952ec0..0000000000 --- a/gr-digital/grc/digital_chunks_to_symbols.xml +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Chunks to Symbols -################################################### - --> -<block> - <name>Chunks to Symbols</name> - <key>digital_chunks_to_symbols_xx</key> - <import>from gnuradio import digital</import> - <make>digital.chunks_to_symbols_$(in_type.fcn)$(out_type.fcn)($symbol_table, $dimension)</make> - <callback>set_symbol_table($symbol_table)</callback> - <param> - <name>Input Type</name> - <key>in_type</key> - <type>enum</type> - <option> - <name>Int</name> - <key>int</key> - <opt>fcn:i</opt> - </option> - <option> - <name>Short</name> - <key>short</key> - <opt>fcn:s</opt> - </option> - <option> - <name>Byte</name> - <key>byte</key> - <opt>fcn:b</opt> - </option> - </param> - <param> - <name>Output Type</name> - <key>out_type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>complex</key> - <opt>fcn:c</opt> - <opt>table:complex_vector</opt> - </option> - <option> - <name>Float</name> - <key>float</key> - <opt>fcn:f</opt> - <opt>table:real_vector</opt> - </option> - </param> - <param> - <name>Symbol Table</name> - <key>symbol_table</key> - <type>$out_type.table</type> - </param> - <param> - <name>Dimension</name> - <key>dimension</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Num Ports</name> - <key>num_ports</key> - <value>1</value> - <type>int</type> - </param> - <check>$num_ports > 0</check> - <sink> - <name>in</name> - <type>$in_type</type> - <nports>$num_ports</nports> - </sink> - <source> - <name>out</name> - <type>$out_type</type> - <nports>$num_ports</nports> - </source> -</block> diff --git a/gr-digital/grc/digital_clock_recovery_mm_xx.block.yml b/gr-digital/grc/digital_clock_recovery_mm_xx.block.yml new file mode 100644 index 0000000000..f4b8a9439d --- /dev/null +++ b/gr-digital/grc/digital_clock_recovery_mm_xx.block.yml @@ -0,0 +1,51 @@ +id: digital_clock_recovery_mm_xx +label: Clock Recovery MM + +parameters: +- id: type + label: Type + dtype: enum + options: [complex, float] + option_attributes: + fcn: [cc, ff] + hide: part +- id: omega + label: Omega + dtype: real + default: samp_per_sym*(1+0.0) +- id: gain_omega + label: Gain Omega + dtype: real + default: 0.25*0.175*0.175 +- id: mu + label: Mu + dtype: real + default: '0.5' +- id: gain_mu + label: Gain Mu + dtype: real + default: '0.175' +- id: omega_relative_limit + label: Omega Relative Limit + dtype: real + default: '0.005' + +inputs: +- domain: stream + dtype: ${ type } + +outputs: +- domain: stream + dtype: ${ type } + +templates: + imports: from gnuradio import digital + make: digital.clock_recovery_mm_${type.fcn}(${omega}, ${gain_omega}, ${mu}, ${gain_mu}, + ${omega_relative_limit}) + callbacks: + - set_omega(${omega}) + - set_gain_omega(${gain_omega}) + - set_mu(${mu}) + - set_gain_mu(${gain_mu}) + +file_format: 1 diff --git a/gr-digital/grc/digital_clock_recovery_mm_xx.xml b/gr-digital/grc/digital_clock_recovery_mm_xx.xml deleted file mode 100644 index a0857686be..0000000000 --- a/gr-digital/grc/digital_clock_recovery_mm_xx.xml +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Clock Recovery MM -################################################### - --> -<block> - <name>Clock Recovery MM</name> - <key>digital_clock_recovery_mm_xx</key> - <import>from gnuradio import digital</import> - <make>digital.clock_recovery_mm_$(type.fcn)($omega, $gain_omega, $mu, $gain_mu, $omega_relative_limit)</make> - <callback>set_omega($omega)</callback> - <callback>set_gain_omega($gain_omega)</callback> - <callback>set_mu($mu)</callback> - <callback>set_gain_mu($gain_mu)</callback> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>complex</key> - <opt>fcn:cc</opt> - </option> - <option> - <name>Float</name> - <key>float</key> - <opt>fcn:ff</opt> - </option> - </param> - <param> - <name>Omega</name> - <key>omega</key> - <value>samp_per_sym*(1+0.0)</value> - <type>real</type> - </param> - <param> - <name>Gain Omega</name> - <key>gain_omega</key> - <value>0.25*0.175*0.175</value> - <type>real</type> - </param> - <param> - <name>Mu</name> - <key>mu</key> - <value>0.5</value> - <type>real</type> - </param> - <param> - <name>Gain Mu</name> - <key>gain_mu</key> - <value>0.175</value> - <type>real</type> - </param> - <param> - <name>Omega Relative Limit</name> - <key>omega_relative_limit</key> - <value>0.005</value> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>$type</type> - </sink> - <source> - <name>out</name> - <type>$type</type> - </source> -</block> diff --git a/gr-digital/grc/digital_cma_equalizer_cc.block.yml b/gr-digital/grc/digital_cma_equalizer_cc.block.yml new file mode 100644 index 0000000000..64e83390d5 --- /dev/null +++ b/gr-digital/grc/digital_cma_equalizer_cc.block.yml @@ -0,0 +1,33 @@ +id: digital_cma_equalizer_cc +label: CMA Equalizer + +parameters: +- id: num_taps + label: Num. Taps + dtype: int +- id: modulus + label: Modulus + dtype: real +- id: mu + label: Gain + dtype: real +- id: sps + label: Samples per Symbol + dtype: int + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.cma_equalizer_cc(${num_taps}, ${modulus}, ${mu}, ${sps}) + callbacks: + - set_gain(${mu}) + - set_modulus(${modulus}) + +file_format: 1 diff --git a/gr-digital/grc/digital_cma_equalizer_cc.xml b/gr-digital/grc/digital_cma_equalizer_cc.xml deleted file mode 100644 index 118c18e294..0000000000 --- a/gr-digital/grc/digital_cma_equalizer_cc.xml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## CMA Equalizer -################################################### - --> -<block> - <name>CMA Equalizer</name> - <key>digital_cma_equalizer_cc</key> - <import>from gnuradio import digital</import> - <make>digital.cma_equalizer_cc($num_taps, $modulus, $mu, $sps)</make> - <callback>set_gain($mu)</callback> - <callback>set_modulus($modulus)</callback> - <param> - <name>Num. Taps</name> - <key>num_taps</key> - <type>int</type> - </param> - <param> - <name>Modulus</name> - <key>modulus</key> - <type>real</type> - </param> - <param> - <name>Gain</name> - <key>mu</key> - <type>real</type> - </param> - <param> - <name>Samples per Symbol</name> - <key>sps</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_constellation.block.yml b/gr-digital/grc/digital_constellation.block.yml new file mode 100644 index 0000000000..b604140888 --- /dev/null +++ b/gr-digital/grc/digital_constellation.block.yml @@ -0,0 +1,72 @@ +id: variable_constellation +label: Constellation Object +category: Modulators + +parameters: +- id: type + label: Constellation Type + dtype: enum + options: [calcdist, bpsk, qpsk, dqpsk, 8psk, 16qam] + option_labels: [Variable Constellation, BPSK, QPSK, DQPSK, 8PSK, 16QAM] +- id: sym_map + label: Symbol Map + dtype: int_vector + default: '[0, 1, 3, 2]' + hide: ${ ( 'none' if str(type) == "calcdist" else 'all') } +- id: const_points + label: Constellation Points + dtype: complex_vector + default: '[-1-1j, -1+1j, 1+1j, 1-1j]' + hide: ${ ( 'none' if str(type) == "calcdist" else 'all') } +- id: rot_sym + label: Rotational Symmetry + dtype: int + default: '4' + hide: ${ ( 'none' if str(type) == "calcdist" else 'all') } +- id: dims + label: Dimensionality + dtype: int + default: '1' + hide: ${ ( 'none' if str(type) == "calcdist" else 'all') } +- id: precision + label: Soft Decisions Precision + dtype: int + default: '8' + hide: part +- id: soft_dec_lut + label: Soft Decisions LUT + dtype: raw + default: None + hide: ${ ('part' if str(soft_dec_lut) == 'None' else 'none') } +value: ${ digital.constellation_calcdist(const_points, sym_map, rot_sym, dims) if (str(type) == "calcdist") else digital.constellation_type} + +templates: + imports: from gnuradio import digital + var_make: ' + + % if str(type) == "calcdist": + + self.${id} = ${id} = digital.constellation_calcdist(${const_points}, ${sym_map}, + ${rot_sym}, ${dims}).base() + + % else: + + self.${id} = ${id} = digital.constellation_${type}().base() + + % endif + + + % if str(soft_dec_lut).lower() == ''"auto"'' or str(soft_dec_lut).lower() + == "''auto''": + + self.${id}.gen_soft_dec_lut(${precision}) + + % elif str(soft_dec_lut) != ''None'': + + self.${id}.set_soft_dec_lut(${soft_dec_lut}, ${precision}) + + % endif + + ' + +file_format: 1 diff --git a/gr-digital/grc/digital_constellation.xml b/gr-digital/grc/digital_constellation.xml deleted file mode 100644 index ef5364d248..0000000000 --- a/gr-digital/grc/digital_constellation.xml +++ /dev/null @@ -1,113 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Create a Constellation Object -################################################### - --> -<block> - <name>Constellation Object</name> - <key>variable_constellation</key> - <category>Modulators</category> - <import>from gnuradio import digital</import> - <var_make> -#if str($type) == "calcdist" -self.$(id) = $(id) = digital.constellation_calcdist($const_points, $sym_map, $rot_sym, $dims).base() -#else -self.$(id) = $(id) = digital.constellation_$(type)().base() -#end if - -#if str($soft_dec_lut).lower() == '"auto"' or str($soft_dec_lut).lower() == "'auto'" -self.$(id).gen_soft_dec_lut($precision) -#else if str($soft_dec_lut) != 'None' -self.$(id).set_soft_dec_lut($soft_dec_lut, $precision) -#end if -</var_make> - -<var_value> -#if str($type) == "calcdist" -digital.constellation_calcdist($const_points, $sym_map, $rot_sym, $dims) -#else -digital.constellation_$(type)() -#end if -</var_value> - - <make></make> - <!--<callback></callback>--> - - <param> - <name>Constellation Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Variable Constellation</name> - <key>calcdist</key> - </option> - <option> - <name>BPSK</name> - <key>bpsk</key> - </option> - <option> - <name>QPSK</name> - <key>qpsk</key> - </option> - <option> - <name>DQPSK</name> - <key>dqpsk</key> - </option> - <option> - <name>8PSK</name> - <key>8psk</key> - </option> - <option> - <name>16QAM</name> - <key>16qam</key> - </option> - - </param> - <param> - <name>Symbol Map</name> - <key>sym_map</key> - <value>[0, 1, 3, 2]</value> - <type>int_vector</type> - <hide> #if str($type) == "calcdist" then 'none' else 'all' #</hide> - </param> - - <param> - <name>Constellation Points</name> - <key>const_points</key> - <value>[-1-1j, -1+1j, 1+1j, 1-1j]</value> - <type>complex_vector</type> - <hide> #if str($type) == "calcdist" then 'none' else 'all' #</hide> - </param> - - <param> - <name>Rotational Symmetry</name> - <key>rot_sym</key> - <value>4</value> - <type>int</type> - <hide> #if str($type) == "calcdist" then 'none' else 'all' #</hide> - </param> - - <param> - <name>Dimensionality</name> - <key>dims</key> - <value>1</value> - <type>int</type> - <hide> #if str($type) == "calcdist" then 'none' else 'all' #</hide> - </param> - <param> - <name>Soft Decisions Precision</name> - <key>precision</key> - <value>8</value> - <type>int</type> - <hide>part</hide> - </param> - - <param> - <name>Soft Decisions LUT</name> - <key>soft_dec_lut</key> - <value>None</value> - <type>raw</type> - <hide>#if str($soft_dec_lut) == 'None' then 'part' else 'none'#</hide> - </param> -</block> diff --git a/gr-digital/grc/digital_constellation_decoder_cb.block.yml b/gr-digital/grc/digital_constellation_decoder_cb.block.yml new file mode 100644 index 0000000000..59d312d89a --- /dev/null +++ b/gr-digital/grc/digital_constellation_decoder_cb.block.yml @@ -0,0 +1,21 @@ +id: digital_constellation_decoder_cb +label: Constellation Decoder + +parameters: +- id: constellation + label: Constellation Object + dtype: raw + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.constellation_decoder_cb(${constellation}) + +file_format: 1 diff --git a/gr-digital/grc/digital_constellation_decoder_cb.xml b/gr-digital/grc/digital_constellation_decoder_cb.xml deleted file mode 100644 index c7353e2888..0000000000 --- a/gr-digital/grc/digital_constellation_decoder_cb.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Constellation Decoder -################################################### - --> -<block> - <name>Constellation Decoder</name> - <key>digital_constellation_decoder_cb</key> - <import>from gnuradio import digital</import> - <make>digital.constellation_decoder_cb($constellation)</make> - <param> - <name>Constellation Object</name> - <key>constellation</key> - <type>raw</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_constellation_modulator.block.yml b/gr-digital/grc/digital_constellation_modulator.block.yml new file mode 100644 index 0000000000..8be84449ad --- /dev/null +++ b/gr-digital/grc/digital_constellation_modulator.block.yml @@ -0,0 +1,58 @@ +id: digital_constellation_modulator +label: Constellation Modulator + +parameters: +- id: constellation + label: Constellation + dtype: raw +- id: differential + label: Differential Encoding + dtype: bool + default: 'True' + options: ['True', 'False'] + option_labels: ['Yes', 'No'] +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: excess_bw + label: Excess BW + dtype: real + default: '0.35' +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: |- + digital.generic_mod( + constellation=${constellation}, + differential=${differential}, + samples_per_symbol=${samples_per_symbol}, + pre_diff_code=True, + excess_bw=${excess_bw}, + verbose=${verbose}, + log=${log}, + ) + +file_format: 1 diff --git a/gr-digital/grc/digital_constellation_modulator.xml b/gr-digital/grc/digital_constellation_modulator.xml deleted file mode 100644 index 9905197f93..0000000000 --- a/gr-digital/grc/digital_constellation_modulator.xml +++ /dev/null @@ -1,111 +0,0 @@ -<?xml version="1.0"?> - -<!-- - Copyright 2013 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -## Modulates any given constellation object -################################################### - --> -<block> - <name>Constellation Modulator</name> - <key>digital_constellation_modulator</key> - <import>from gnuradio import digital</import> - <make>digital.generic_mod( - constellation=$constellation, - differential=$differential, - samples_per_symbol=$samples_per_symbol, - pre_diff_code=True, - excess_bw=$excess_bw, - verbose=$verbose, - log=$log, - )</make> - <param> - <name>Constellation</name> - <key>constellation</key> - <type>raw</type> - </param> - <param> - <name>Differential Encoding</name> - <key>differential</key> - <value>True</value> - <type>bool</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Excess BW</name> - <key>excess_bw</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_constellation_receiver_cb.block.yml b/gr-digital/grc/digital_constellation_receiver_cb.block.yml new file mode 100644 index 0000000000..6221348805 --- /dev/null +++ b/gr-digital/grc/digital_constellation_receiver_cb.block.yml @@ -0,0 +1,62 @@ +id: digital_constellation_receiver_cb +label: Constellation Receiver + +parameters: +- id: constellation + label: Constellation Object + dtype: raw +- id: loop_bw + label: Loop Bandwidth + dtype: real +- id: fmin + label: Minimum Freq Deviation + dtype: real +- id: fmax + label: Maximum Freq Deviation + dtype: real +- id: showports + label: Show Msg Ports + dtype: enum + default: 'True' + options: ['False', 'True'] + option_labels: ['Yes', 'No'] + hide: part + +inputs: +- domain: stream + dtype: complex +- domain: message + id: set_constellation + optional: true + hide: ${ showports } +- domain: message + id: rotate_phase + optional: true + hide: ${ showports } + +outputs: +- domain: stream + dtype: byte +- label: error + domain: stream + dtype: float + optional: true +- label: phase + domain: stream + dtype: float + optional: true +- label: frequency + domain: stream + dtype: float + optional: true +- label: symbol + domain: stream + dtype: complex + optional: true + +templates: + imports: from gnuradio import digital + make: digital.constellation_receiver_cb(${constellation}, ${loop_bw}, ${fmin}, + ${fmax}) + +file_format: 1 diff --git a/gr-digital/grc/digital_constellation_receiver_cb.xml b/gr-digital/grc/digital_constellation_receiver_cb.xml deleted file mode 100644 index 06155ecae9..0000000000 --- a/gr-digital/grc/digital_constellation_receiver_cb.xml +++ /dev/null @@ -1,92 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Constellation Receiver -################################################### - --> -<block> - <name>Constellation Receiver</name> - <key>digital_constellation_receiver_cb</key> - <import>from gnuradio import digital</import> - <make>digital.constellation_receiver_cb($constellation, $loop_bw, $fmin, $fmax)</make> - <param> - <name>Constellation Object</name> - <key>constellation</key> - <type>raw</type> - </param> - <param> - <name>Loop Bandwidth</name> - <key>loop_bw</key> - <type>real</type> - </param> - <param> - <name>Minimum Freq Deviation</name> - <key>fmin</key> - <type>real</type> - </param> - <param> - <name>Maximum Freq Deviation</name> - <key>fmax</key> - <type>real</type> - </param> - - <param> - <name>Show Msg Ports</name> - <key>showports</key> - <value>True</value> - <type>enum</type> - <hide>part</hide> - <option> - <name>Yes</name> - <key>False</key> - </option> - <option> - <name>No</name> - <key>True</key> - </option> - </param> - - <sink> - <name>in</name> - <type>complex</type> - </sink> - - <sink> - <name>set_constellation</name> - <type>message</type> - <optional>1</optional> - <hide>$showports</hide> - </sink> - - <sink> - <name>rotate_phase</name> - <type>message</type> - <optional>1</optional> - <hide>$showports</hide> - </sink> - - <source> - <name>out</name> - <type>byte</type> - </source> - <source> - <name>error</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>phase</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>frequency</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>symbol</name> - <type>complex</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_constellation_rect.block.yml b/gr-digital/grc/digital_constellation_rect.block.yml new file mode 100644 index 0000000000..e9e58001c2 --- /dev/null +++ b/gr-digital/grc/digital_constellation_rect.block.yml @@ -0,0 +1,65 @@ +id: variable_constellation_rect +label: Constellation Rect. Object +category: Modulators + +parameters: +- id: sym_map + label: Symbol Map + dtype: int_vector + default: '[0, 1, 3, 2]' +- id: const_points + label: Constellation Points + dtype: complex_vector + default: '[-1-1j, -1+1j, 1+1j, 1-1j]' +- id: rot_sym + label: Rotational Symmetry + dtype: int + default: '4' +- id: real_sect + label: Real Sectors + dtype: int + default: '2' +- id: imag_sect + label: Imaginary Sectors + dtype: int + default: '2' +- id: w_real_sect + label: Width Real Sectors + dtype: int + default: '1' +- id: w_imag_sect + label: Width Imaginary Sectors + dtype: int + default: '1' +- id: precision + label: Soft bits precision + dtype: int + default: '8' + hide: part +- id: soft_dec_lut + label: Soft Decisions LUT + dtype: raw + default: None + hide: ${ ('part' if str(soft_dec_lut) == 'None' else 'none') } +value: ${ digital.constellation_rect(const_points, sym_map, rot_sym, real_sect, imag_sect, + w_real_sect, w_imag_sect) } + +templates: + imports: from gnuradio import digital + var_make: 'self.${id} = ${id} = digital.constellation_rect(${const_points}, ${sym_map}, + ${rot_sym}, ${real_sect}, ${imag_sect}, ${w_real_sect}, ${w_imag_sect}).base() + + % if str(soft_dec_lut).lower() == ''"auto"'' or str(soft_dec_lut).lower() + == "''auto''": + + self.${id}.gen_soft_dec_lut(${precision}) + + % elif str(soft_dec_lut) != ''None'': + + self.${id}.set_soft_dec_lut(${soft_dec_lut}, ${precision}) + + % endif + + ' + +file_format: 1 diff --git a/gr-digital/grc/digital_constellation_rect.xml b/gr-digital/grc/digital_constellation_rect.xml deleted file mode 100644 index 9e50fe84b7..0000000000 --- a/gr-digital/grc/digital_constellation_rect.xml +++ /dev/null @@ -1,89 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Create a Rectangular Constellation Object -################################################### - --> -<block> - <name>Constellation Rect. Object</name> - <key>variable_constellation_rect</key> - <category>Modulators</category> - <import>from gnuradio import digital</import> - <var_make>self.$(id) = $(id) = digital.constellation_rect($const_points, $sym_map, $rot_sym, $real_sect, $imag_sect, $w_real_sect, $w_imag_sect).base() -#if str($soft_dec_lut).lower() == '"auto"' or str($soft_dec_lut).lower() == "'auto'" -self.$(id).gen_soft_dec_lut($precision) -#else if str($soft_dec_lut) != 'None' -self.$(id).set_soft_dec_lut($soft_dec_lut, $precision) -#end if -</var_make> - - <var_value>digital.constellation_rect($const_points, $sym_map, $rot_sym, $real_sect, $imag_sect, $w_real_sect, $w_imag_sect)</var_value> - - <make></make> - <!--<callback>set_softbits($softbits_lut, $precision)</callback>--> - - <param> - <name>Symbol Map</name> - <key>sym_map</key> - <value>[0, 1, 3, 2]</value> - <type>int_vector</type> - </param> - - <param> - <name>Constellation Points</name> - <key>const_points</key> - <value>[-1-1j, -1+1j, 1+1j, 1-1j]</value> - <type>complex_vector</type> - </param> - - <param> - <name>Rotational Symmetry</name> - <key>rot_sym</key> - <value>4</value> - <type>int</type> - </param> - - <param> - <name>Real Sectors</name> - <key>real_sect</key> - <value>2</value> - <type>int</type> - </param> - - <param> - <name>Imaginary Sectors</name> - <key>imag_sect</key> - <value>2</value> - <type>int</type> - </param> - - <param> - <name>Width Real Sectors</name> - <key>w_real_sect</key> - <value>1</value> - <type>int</type> - </param> - - <param> - <name>Width Imaginary Sectors</name> - <key>w_imag_sect</key> - <value>1</value> - <type>int</type> - </param> - - <param> - <name>Soft bits precision</name> - <key>precision</key> - <value>8</value> - <type>int</type> - <hide>part</hide> - </param> - - <param> - <name>Soft Decisions LUT</name> - <key>soft_dec_lut</key> - <value>None</value> - <type>raw</type> - <hide>#if str($soft_dec_lut) == 'None' then 'part' else 'none'#</hide> - </param> -</block> diff --git a/gr-digital/grc/digital_constellation_soft_decoder_cf.block.yml b/gr-digital/grc/digital_constellation_soft_decoder_cf.block.yml new file mode 100644 index 0000000000..2b352a7f21 --- /dev/null +++ b/gr-digital/grc/digital_constellation_soft_decoder_cf.block.yml @@ -0,0 +1,21 @@ +id: digital_constellation_soft_decoder_cf +label: Constellation Soft Decoder + +parameters: +- id: constellation + label: Constellation Object + dtype: raw + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: float + +templates: + imports: from gnuradio import digital + make: digital.constellation_soft_decoder_cf(${constellation}) + +file_format: 1 diff --git a/gr-digital/grc/digital_constellation_soft_decoder_cf.xml b/gr-digital/grc/digital_constellation_soft_decoder_cf.xml deleted file mode 100644 index 6b0995acc9..0000000000 --- a/gr-digital/grc/digital_constellation_soft_decoder_cf.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Constellation Decoder, soft bits out -################################################### - --> -<block> - <name>Constellation Soft Decoder</name> - <key>digital_constellation_soft_decoder_cf</key> - <import>from gnuradio import digital</import> - <make>digital.constellation_soft_decoder_cf($constellation)</make> - <param> - <name>Constellation Object</name> - <key>constellation</key> - <type>raw</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>float</type> - </source> -</block> diff --git a/gr-digital/grc/digital_corr_est_cc.block.yml b/gr-digital/grc/digital_corr_est_cc.block.yml new file mode 100644 index 0000000000..b3a9698d18 --- /dev/null +++ b/gr-digital/grc/digital_corr_est_cc.block.yml @@ -0,0 +1,38 @@ +id: digital_corr_est_cc +label: Correlation Estimator + +parameters: +- id: symbols + label: Symbols + dtype: complex_vector +- id: sps + label: Samples per Symbol + dtype: float +- id: mark_delay + label: Tag marking delay + dtype: int +- id: threshold + label: Threshold + dtype: float + default: '0.9' + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex +- label: corr + domain: stream + dtype: complex + optional: true + +templates: + imports: from gnuradio import digital + make: digital.corr_est_cc(${symbols}, ${sps}, ${mark_delay}, ${threshold}) + callbacks: + - set_mark_delay(${mark_delay}) + - set_threshold(${threshold}) + +file_format: 1 diff --git a/gr-digital/grc/digital_corr_est_cc.xml b/gr-digital/grc/digital_corr_est_cc.xml deleted file mode 100644 index 1a1c449efb..0000000000 --- a/gr-digital/grc/digital_corr_est_cc.xml +++ /dev/null @@ -1,50 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>Correlation Estimator</name> - <key>digital_corr_est_cc</key> - <import>from gnuradio import digital</import> - <make>digital.corr_est_cc($symbols, $sps, $mark_delay, $threshold)</make> - <callback>set_mark_delay($mark_delay)</callback> - <callback>set_threshold($threshold)</callback> - - <param> - <name>Symbols</name> - <key>symbols</key> - <type>complex_vector</type> - </param> - - <param> - <name>Samples per Symbol</name> - <key>sps</key> - <type>float</type> - </param> - - <param> - <name>Tag marking delay</name> - <key>mark_delay</key> - <type>int</type> - </param> - - <param> - <name>Threshold</name> - <key>threshold</key> - <value>0.9</value> - <type>float</type> - </param> - - <sink> - <name>in</name> - <type>complex</type> - </sink> - - <source> - <name>out</name> - <type>complex</type> - </source> - - <source> - <name>corr</name> - <type>complex</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_correlate_access_code_bb.block.yml b/gr-digital/grc/digital_correlate_access_code_bb.block.yml new file mode 100644 index 0000000000..57394668b6 --- /dev/null +++ b/gr-digital/grc/digital_correlate_access_code_bb.block.yml @@ -0,0 +1,25 @@ +id: digital_correlate_access_code_bb +label: Correlate Access Code + +parameters: +- id: access_code + label: Access Code + dtype: string + default: '101010' +- id: threshold + label: Threshold + dtype: int + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.correlate_access_code_bb(${access_code}, ${threshold}) + +file_format: 1 diff --git a/gr-digital/grc/digital_correlate_access_code_bb.xml b/gr-digital/grc/digital_correlate_access_code_bb.xml deleted file mode 100644 index 3941834c40..0000000000 --- a/gr-digital/grc/digital_correlate_access_code_bb.xml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Correlate Access Code -################################################### - --> -<block> - <name>Correlate Access Code</name> - <key>digital_correlate_access_code_bb</key> - <import>from gnuradio import digital</import> - <make>digital.correlate_access_code_bb($access_code, $threshold)</make> - <param> - <name>Access Code</name> - <key>access_code</key> - <value>101010</value> - <type>string</type> - </param> - <param> - <name>Threshold</name> - <key>threshold</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_correlate_access_code_tag_xx.block.yml b/gr-digital/grc/digital_correlate_access_code_tag_xx.block.yml new file mode 100644 index 0000000000..6cf81129c2 --- /dev/null +++ b/gr-digital/grc/digital_correlate_access_code_tag_xx.block.yml @@ -0,0 +1,40 @@ +id: digital_correlate_access_code_tag_xx +label: Correlate Access Code - Tag + +parameters: +- id: type + label: IO Type + dtype: enum + options: [byte, float] + option_attributes: + fcn: [bb, ff] + hide: part +- id: access_code + label: Access Code + dtype: string + default: '101010' +- id: threshold + label: Threshold + dtype: int +- id: tagname + label: Tag Name + dtype: string + +inputs: +- domain: stream + dtype: ${ type } + +outputs: +- domain: stream + dtype: ${ type } + +templates: + imports: from gnuradio import digital + make: digital.correlate_access_code_tag_${type.fcn}(${access_code}, ${threshold}, + ${tagname}) + callbacks: + - set_access_code(${access_code}) + - set_threshold(${threshold}) + - set_tagname(${tagname}) + +file_format: 1 diff --git a/gr-digital/grc/digital_correlate_access_code_tag_xx.xml b/gr-digital/grc/digital_correlate_access_code_tag_xx.xml deleted file mode 100644 index c7c137187f..0000000000 --- a/gr-digital/grc/digital_correlate_access_code_tag_xx.xml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Correlate Access Code -################################################### - --> -<block> - <name>Correlate Access Code - Tag</name> - <key>digital_correlate_access_code_tag_xx</key> - <import>from gnuradio import digital</import> - <make>digital.correlate_access_code_tag_$(type.fcn)($access_code, $threshold, $tagname)</make> - <callback>set_access_code($access_code)</callback> - <callback>set_threshold($threshold)</callback> - <callback>set_tagname($tagname)</callback> - - <param> - <name>IO Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Byte</name> - <key>byte</key> - <opt>fcn:bb</opt> - </option> - <option> - <name>Float</name> - <key>float</key> - <opt>fcn:ff</opt> - </option> - </param> - <param> - <name>Access Code</name> - <key>access_code</key> - <value>101010</value> - <type>string</type> - </param> - <param> - <name>Threshold</name> - <key>threshold</key> - <type>int</type> - </param> - <param> - <name>Tag Name</name> - <key>tagname</key> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>$type</type> - </sink> - <source> - <name>out</name> - <type>$type</type> - </source> -</block> diff --git a/gr-digital/grc/digital_correlate_access_code_xx_ts.block.yml b/gr-digital/grc/digital_correlate_access_code_xx_ts.block.yml new file mode 100644 index 0000000000..d51ba9833d --- /dev/null +++ b/gr-digital/grc/digital_correlate_access_code_xx_ts.block.yml @@ -0,0 +1,37 @@ +id: digital_correlate_access_code_xx_ts +label: Correlate Access Code - Tag Stream + +parameters: +- id: type + label: IO Type + dtype: enum + options: [float, byte] + option_attributes: + fcn: [ff, bb] + hide: part +- id: access_code + label: Access Code + dtype: string + default: '101010' +- id: threshold + label: Threshold + dtype: int +- id: tagname + label: Tag Name + dtype: string + +inputs: +- domain: stream + dtype: ${ type } + +outputs: +- domain: stream + dtype: ${ type } + +templates: + imports: from gnuradio import digital + make: |- + digital.correlate_access_code_${type.fcn}_ts(${access_code}, + ${threshold}, ${tagname}) + +file_format: 1 diff --git a/gr-digital/grc/digital_correlate_access_code_xx_ts.xml b/gr-digital/grc/digital_correlate_access_code_xx_ts.xml deleted file mode 100644 index 467c2c84d9..0000000000 --- a/gr-digital/grc/digital_correlate_access_code_xx_ts.xml +++ /dev/null @@ -1,58 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Correlate Access Code - to tag stream -################################################### - --> -<block> - <name>Correlate Access Code - Tag Stream</name> - <key>digital_correlate_access_code_xx_ts</key> - <import>from gnuradio import digital</import> - <make>digital.correlate_access_code_$(type.fcn)_ts($access_code, - $threshold, $tagname)</make> - - <param> - <name>IO Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Float</name> - <key>float</key> - <opt>fcn:ff</opt> - </option> - <option> - <name>Byte</name> - <key>byte</key> - <opt>fcn:bb</opt> - </option> - </param> - - <param> - <name>Access Code</name> - <key>access_code</key> - <value>101010</value> - <type>string</type> - </param> - - <param> - <name>Threshold</name> - <key>threshold</key> - <type>int</type> - </param> - - <param> - <name>Tag Name</name> - <key>tagname</key> - <type>string</type> - </param> - - <sink> - <name>in</name> - <type>$type</type> - </sink> - - <source> - <name>out</name> - <type>$type</type> - </source> -</block> diff --git a/gr-digital/grc/digital_costas_loop_cc.block.yml b/gr-digital/grc/digital_costas_loop_cc.block.yml new file mode 100644 index 0000000000..6134774f32 --- /dev/null +++ b/gr-digital/grc/digital_costas_loop_cc.block.yml @@ -0,0 +1,48 @@ +id: digital_costas_loop_cc +label: Costas Loop + +parameters: +- id: w + label: Loop Bandwidth + dtype: real +- id: order + label: Order + dtype: int +- id: use_snr + label: Use SNR + dtype: enum + default: 'False' + options: ['True', 'False'] + option_labels: ['Yes', 'No'] + hide: part + +inputs: +- domain: stream + dtype: complex +- domain: message + id: noise + optional: true + +outputs: +- domain: stream + dtype: complex +- label: frequency + domain: stream + dtype: float + optional: true +- label: phase + domain: stream + dtype: float + optional: true +- label: error + domain: stream + dtype: float + optional: true + +templates: + imports: from gnuradio import digital + make: digital.costas_loop_cc(${w}, ${order}, ${use_snr}) + callbacks: + - set_loop_bandwidth(${w}) + +file_format: 1 diff --git a/gr-digital/grc/digital_costas_loop_cc.xml b/gr-digital/grc/digital_costas_loop_cc.xml deleted file mode 100644 index 23e3ca9037..0000000000 --- a/gr-digital/grc/digital_costas_loop_cc.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Costas Loop -################################################### - --> -<block> - <name>Costas Loop</name> - <key>digital_costas_loop_cc</key> - <import>from gnuradio import digital</import> - <make>digital.costas_loop_cc($w, $order, $use_snr)</make> - <callback>set_loop_bandwidth($w)</callback> - - <param> - <name>Loop Bandwidth</name> - <key>w</key> - <type>real</type> - </param> - - <param> - <name>Order</name> - <key>order</key> - <type>int</type> - </param> - - <param> - <name>Use SNR</name> - <key>use_snr</key> - <value>False</value> - <type>enum</type> - <hide>part</hide> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - - <sink> - <name>in</name> - <type>complex</type> - </sink> - - <sink> - <name>noise</name> - <type>message</type> - <optional>1</optional> - </sink> - - <source> - <name>out</name> - <type>complex</type> - </source> - - <!-- Optional Outputs --> - <source> - <name>frequency</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>phase</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>error</name> - <type>float</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_cpmmod_bc.block.yml b/gr-digital/grc/digital_cpmmod_bc.block.yml new file mode 100644 index 0000000000..1a6435289b --- /dev/null +++ b/gr-digital/grc/digital_cpmmod_bc.block.yml @@ -0,0 +1,40 @@ +id: digital_cpmmod_bc +label: Continuous Phase Modulation + +parameters: +- id: type + label: CPM Type + dtype: enum + options: [analog.cpm.LREC, analog.cpm.LRC, analog.cpm.LSRC, analog.cpm.TFM, analog.cpm.GAUSSIAN] + option_labels: [L-REC (Rectangular phase response), L-RC (Raised Cosine), L-SRC + (Spectral raised cosine), TFM (Tamed frequency modulation), Gaussian] +- id: mod_index + label: Modulation Index + dtype: real + default: '0.5' +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '4' +- id: L + label: Pulse Duration (Symbols) + dtype: int + default: '4' +- id: beta + label: Phase Response Parameter (BT or Beta) + dtype: real + default: '0.3' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import gr, digital, analog + make: digital.cpmmod_bc(${type}, ${mod_index}, ${samples_per_symbol}, ${L}, ${beta}) + +file_format: 1 diff --git a/gr-digital/grc/digital_cpmmod_bc.xml b/gr-digital/grc/digital_cpmmod_bc.xml deleted file mode 100644 index 94231775c9..0000000000 --- a/gr-digital/grc/digital_cpmmod_bc.xml +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Continuous Phase Modulation -################################################### - --> -<block> - <name>Continuous Phase Modulation</name> - <key>digital_cpmmod_bc</key> - <import>from gnuradio import gr, digital, analog</import> - <make>digital.cpmmod_bc($type, $mod_index, $samples_per_symbol, $L, $beta)</make> - <param> - <name>CPM Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>L-REC (Rectangular phase response)</name> - <key>analog.cpm.LREC</key> - </option> - <option> - <name>L-RC (Raised Cosine)</name> - <key>analog.cpm.LRC</key> - </option> - <option> - <name>L-SRC (Spectral raised cosine)</name> - <key>analog.cpm.LSRC</key> - </option> - <option> - <name>TFM (Tamed frequency modulation)</name> - <key>analog.cpm.TFM</key> - </option> - <option> - <name>Gaussian</name> - <key>analog.cpm.GAUSSIAN</key> - </option> - </param> - <param> - <name>Modulation Index</name> - <key>mod_index</key> - <value>0.5</value> - <type>real</type> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>4</value> - <type>int</type> - </param> - <param> - <name>Pulse Duration (Symbols)</name> - <key>L</key> - <value>4</value> - <type>int</type> - </param> - <param> - <name>Phase Response Parameter (BT or Beta)</name> - <key>beta</key> - <value>0.3</value> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_crc32_async_bb.block.yml b/gr-digital/grc/digital_crc32_async_bb.block.yml new file mode 100644 index 0000000000..19b6732217 --- /dev/null +++ b/gr-digital/grc/digital_crc32_async_bb.block.yml @@ -0,0 +1,25 @@ +id: digital_crc32_async_bb +label: Async CRC32 + +parameters: +- id: check + label: Mode + dtype: enum + options: ['False', 'True'] + option_labels: [Generate CRC, Check CRC] + +inputs: +- domain: message + id: in + optional: true + +outputs: +- domain: message + id: out + optional: true + +templates: + imports: from gnuradio import digital + make: digital.crc32_async_bb(${check}) + +file_format: 1 diff --git a/gr-digital/grc/digital_crc32_async_bb.xml b/gr-digital/grc/digital_crc32_async_bb.xml deleted file mode 100644 index 84c60e60ab..0000000000 --- a/gr-digital/grc/digital_crc32_async_bb.xml +++ /dev/null @@ -1,32 +0,0 @@ -<block> - <name>Async CRC32</name> - <key>digital_crc32_async_bb</key> - <import>from gnuradio import digital</import> - <make>digital.crc32_async_bb($check)</make> - - <param> - <name>Mode</name> - <key>check</key> - <type>enum</type> - <option> - <name>Generate CRC</name> - <key>False</key> - </option> - <option> - <name>Check CRC</name> - <key>True</key> - </option> - </param> - - <sink> - <name>in</name> - <type>message</type> - <optional>1</optional> - </sink> - - <source> - <name>out</name> - <type>message</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_crc32_bb.block.yml b/gr-digital/grc/digital_crc32_bb.block.yml new file mode 100644 index 0000000000..9e88a63f74 --- /dev/null +++ b/gr-digital/grc/digital_crc32_bb.block.yml @@ -0,0 +1,33 @@ +id: digital_crc32_bb +label: Stream CRC32 + +parameters: +- id: check + label: Mode + dtype: enum + options: ['False', 'True'] + option_labels: [Generate CRC, Check CRC] +- id: lengthtagname + label: Length tag name + dtype: string + default: '"packet_len"' +- id: packed + label: Packed + dtype: bool + default: 'True' + options: ['True', 'False'] + option_labels: ['Yes', 'No'] + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.crc32_bb(${check}, ${lengthtagname}, ${packed}) + +file_format: 1 diff --git a/gr-digital/grc/digital_crc32_bb.xml b/gr-digital/grc/digital_crc32_bb.xml deleted file mode 100644 index 2fc6c248d3..0000000000 --- a/gr-digital/grc/digital_crc32_bb.xml +++ /dev/null @@ -1,47 +0,0 @@ -<block> - <name>Stream CRC32</name> - <key>digital_crc32_bb</key> - <import>from gnuradio import digital</import> - <make>digital.crc32_bb($check, $lengthtagname, $packed)</make> - <param> - <name>Mode</name> - <key>check</key> - <type>enum</type> - <option> - <name>Generate CRC</name> - <key>False</key> - </option> - <option> - <name>Check CRC</name> - <key>True</key> - </option> - </param> - <param> - <name>Length tag name</name> - <key>lengthtagname</key> - <value>"packet_len"</value> - <type>string</type> - </param> - <param> - <name>Packed</name> - <key>packed</key> - <value>True</value> - <type>bool</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_descrambler_bb.block.yml b/gr-digital/grc/digital_descrambler_bb.block.yml new file mode 100644 index 0000000000..fbb65c0ddc --- /dev/null +++ b/gr-digital/grc/digital_descrambler_bb.block.yml @@ -0,0 +1,30 @@ +id: digital_descrambler_bb +label: Descrambler + +parameters: +- id: mask + label: Mask + dtype: hex + default: '0x8A' +- id: seed + label: Seed + dtype: hex + default: '0x7F' +- id: len + label: Length + dtype: int + default: '7' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.descrambler_bb(${mask}, ${seed}, ${len}) + +file_format: 1 diff --git a/gr-digital/grc/digital_descrambler_bb.xml b/gr-digital/grc/digital_descrambler_bb.xml deleted file mode 100644 index 4f52c79645..0000000000 --- a/gr-digital/grc/digital_descrambler_bb.xml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Descrambler -################################################### - --> -<block> - <name>Descrambler</name> - <key>digital_descrambler_bb</key> - <import>from gnuradio import digital</import> - <make>digital.descrambler_bb($mask, $seed, $len)</make> - <param> - <name>Mask</name> - <key>mask</key> - <value>0x8A</value> - <type>hex</type> - </param> - <param> - <name>Seed</name> - <key>seed</key> - <value>0x7F</value> - <type>hex</type> - </param> - <param> - <name>Length</name> - <key>len</key> - <value>7</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_diff_decoder_bb.block.yml b/gr-digital/grc/digital_diff_decoder_bb.block.yml new file mode 100644 index 0000000000..4b988007c2 --- /dev/null +++ b/gr-digital/grc/digital_diff_decoder_bb.block.yml @@ -0,0 +1,21 @@ +id: digital_diff_decoder_bb +label: Differential Decoder + +parameters: +- id: modulus + label: Modulus + dtype: int + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.diff_decoder_bb(${modulus}) + +file_format: 1 diff --git a/gr-digital/grc/digital_diff_decoder_bb.xml b/gr-digital/grc/digital_diff_decoder_bb.xml deleted file mode 100644 index a7c94b834c..0000000000 --- a/gr-digital/grc/digital_diff_decoder_bb.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Differential Decoder -################################################### - --> -<block> - <name>Differential Decoder</name> - <key>digital_diff_decoder_bb</key> - <import>from gnuradio import digital</import> - <make>digital.diff_decoder_bb($modulus)</make> - <param> - <name>Modulus</name> - <key>modulus</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_diff_encoder_bb.block.yml b/gr-digital/grc/digital_diff_encoder_bb.block.yml new file mode 100644 index 0000000000..45a5c71302 --- /dev/null +++ b/gr-digital/grc/digital_diff_encoder_bb.block.yml @@ -0,0 +1,21 @@ +id: digital_diff_encoder_bb +label: Differential Encoder + +parameters: +- id: modulus + label: Modulus + dtype: int + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.diff_encoder_bb(${modulus}) + +file_format: 1 diff --git a/gr-digital/grc/digital_diff_encoder_bb.xml b/gr-digital/grc/digital_diff_encoder_bb.xml deleted file mode 100644 index 3885bed9aa..0000000000 --- a/gr-digital/grc/digital_diff_encoder_bb.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Differential Encoder -################################################### - --> -<block> - <name>Differential Encoder</name> - <key>digital_diff_encoder_bb</key> - <import>from gnuradio import digital</import> - <make>digital.diff_encoder_bb($modulus)</make> - <param> - <name>Modulus</name> - <key>modulus</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_diff_phasor_cc.block.yml b/gr-digital/grc/digital_diff_phasor_cc.block.yml new file mode 100644 index 0000000000..e63c718277 --- /dev/null +++ b/gr-digital/grc/digital_diff_phasor_cc.block.yml @@ -0,0 +1,16 @@ +id: digital_diff_phasor_cc +label: Differential Phasor + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.diff_phasor_cc() + +file_format: 1 diff --git a/gr-digital/grc/digital_diff_phasor_cc.xml b/gr-digital/grc/digital_diff_phasor_cc.xml deleted file mode 100644 index 506bf400ba..0000000000 --- a/gr-digital/grc/digital_diff_phasor_cc.xml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Differential Phasor -################################################### - --> -<block> - <name>Differential Phasor</name> - <key>digital_diff_phasor_cc</key> - <import>from gnuradio import digital</import> - <make>digital.diff_phasor_cc()</make> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_dxpsk_demod.block.yml b/gr-digital/grc/digital_dxpsk_demod.block.yml new file mode 100644 index 0000000000..99e7f40e6c --- /dev/null +++ b/gr-digital/grc/digital_dxpsk_demod.block.yml @@ -0,0 +1,75 @@ +id: digital_dxpsk_demod +label: DPSK Demod +category: '[Core]/Deprecated' + +parameters: +- id: type + label: Type + dtype: enum + options: [dbpsk, dqpsk] + option_labels: [DBPSK, DQPSK] +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: excess_bw + label: Excess BW + dtype: real + default: '0.35' +- id: freq_bw + label: FLL Bandwidth + dtype: real + default: 6.28/100.0 +- id: phase_bw + label: Phase Loop Bandwidth + dtype: real + default: 6.28/100.0 +- id: timing_bw + label: Timing Bandwidth + dtype: real + default: 6.28/100.0 +- id: mod_code + label: Gray Code + dtype: enum + options: ['"gray"', '"none"'] + option_labels: ['Yes', 'No'] +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } +- id: sync_out + label: Sync Out + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: "digital.${type}_demod(\n\tsamples_per_symbol=${samples_per_symbol},\n\t\ + excess_bw=${excess_bw},\n\tfreq_bw=${freq_bw},\n\tphase_bw=${phase_bw},\n\t\ + timing_bw=${timing_bw},\n\tmod_code=${mod_code},\n\tverbose=${verbose},\n\t\ + log=${log}\n)" + callbacks: + - clock_recov.set_loop_bandwidth(${phase_bw}) + - time_recov.set_loop_bandwidth(${timing_bw}) + +file_format: 1 diff --git a/gr-digital/grc/digital_dxpsk_demod.xml b/gr-digital/grc/digital_dxpsk_demod.xml deleted file mode 100644 index 12089ad771..0000000000 --- a/gr-digital/grc/digital_dxpsk_demod.xml +++ /dev/null @@ -1,154 +0,0 @@ -<?xml version="1.0"?> - -<!-- - Copyright 2009,2010,2011 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -##DPSK2 Mod - 2, 4 -################################################### - --> -<block> - <name>DPSK Demod</name> - <key>digital_dxpsk_demod</key> - <category>[Core]/Deprecated</category> - <import>from gnuradio import digital</import> - <make>digital.$(type)_demod( - samples_per_symbol=$samples_per_symbol, - excess_bw=$excess_bw, - freq_bw=$freq_bw, - phase_bw=$phase_bw, - timing_bw=$timing_bw, - mod_code=$mod_code, - verbose=$verbose, - log=$log -)</make> - <callback>clock_recov.set_loop_bandwidth($phase_bw)</callback> - <callback>time_recov.set_loop_bandwidth($timing_bw)</callback> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>DBPSK</name> - <key>dbpsk</key> - </option> - <option> - <name>DQPSK</name> - <key>dqpsk</key> - </option> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Excess BW</name> - <key>excess_bw</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>FLL Bandwidth</name> - <key>freq_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Phase Loop Bandwidth</name> - <key>phase_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Timing Bandwidth</name> - <key>timing_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Gray Code</name> - <key>mod_code</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>"gray"</key> - </option> - <option> - <name>No</name> - <key>"none"</key> - </option> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Sync Out</name> - <key>sync_out</key> - <value>False</value> - <type>bool</type> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_dxpsk_mod.block.yml b/gr-digital/grc/digital_dxpsk_mod.block.yml new file mode 100644 index 0000000000..577baa4426 --- /dev/null +++ b/gr-digital/grc/digital_dxpsk_mod.block.yml @@ -0,0 +1,52 @@ +id: digital_dxpsk_mod +label: DPSK Mod +category: '[Core]/Deprecated' + +parameters: +- id: type + label: Type + dtype: enum + options: [dbpsk, dqpsk] + option_labels: [DBPSK, DQPSK] +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: excess_bw + label: Excess BW + dtype: real + default: '0.35' +- id: mod_code + label: Gray Code + dtype: enum + options: ['"gray"', '"none"'] + option_labels: ['Yes', 'No'] +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: "digital.${type}_mod(\n\tsamples_per_symbol=${samples_per_symbol},\n\texcess_bw=${excess_bw},\n\ + \tmod_code=${mod_code},\n\tverbose=${verbose},\n\tlog=${log})\n\t" + +file_format: 1 diff --git a/gr-digital/grc/digital_dxpsk_mod.xml b/gr-digital/grc/digital_dxpsk_mod.xml deleted file mode 100644 index 4198b8805c..0000000000 --- a/gr-digital/grc/digital_dxpsk_mod.xml +++ /dev/null @@ -1,117 +0,0 @@ -<?xml version="1.0"?> - -<!-- - Copyright 2009,2010,2011 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -## DPSK Mod - 2, 4 -################################################### - --> -<block> - <name>DPSK Mod</name> - <key>digital_dxpsk_mod</key> - <category>[Core]/Deprecated</category> - <import>from gnuradio import digital</import> - <make>digital.$(type)_mod( - samples_per_symbol=$samples_per_symbol, - excess_bw=$excess_bw, - mod_code=$mod_code, - verbose=$verbose, - log=$log) - </make> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>DBPSK</name> - <key>dbpsk</key> - </option> - <option> - <name>DQPSK</name> - <key>dqpsk</key> - </option> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Excess BW</name> - <key>excess_bw</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Gray Code</name> - <key>mod_code</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>"gray"</key> - </option> - <option> - <name>No</name> - <key>"none"</key> - </option> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_fll_band_edge_cc.block.yml b/gr-digital/grc/digital_fll_band_edge_cc.block.yml new file mode 100644 index 0000000000..63b64912bb --- /dev/null +++ b/gr-digital/grc/digital_fll_band_edge_cc.block.yml @@ -0,0 +1,53 @@ +id: digital_fll_band_edge_cc +label: FLL Band-Edge + +parameters: +- id: type + label: Type + dtype: enum + options: [cc] + option_labels: [Complex->Complex] + option_attributes: + input: [complex] + output: [complex] + hide: part +- id: samps_per_sym + label: Samples Per Symbol + dtype: real +- id: rolloff + label: Filter Rolloff Factor + dtype: real +- id: filter_size + label: Prototype Filter Size + dtype: int +- id: w + label: Loop Bandwidth + dtype: real + +inputs: +- domain: stream + dtype: ${ type.input } + +outputs: +- domain: stream + dtype: ${ type.output } +- label: freq + domain: stream + dtype: float + optional: true +- label: phase + domain: stream + dtype: float + optional: true +- label: error + domain: stream + dtype: float + optional: true + +templates: + imports: from gnuradio import digital + make: digital.fll_band_edge_cc(${samps_per_sym}, ${rolloff}, ${filter_size}, ${w}) + callbacks: + - set_loop_bandwidth(${w}) + +file_format: 1 diff --git a/gr-digital/grc/digital_fll_band_edge_cc.xml b/gr-digital/grc/digital_fll_band_edge_cc.xml deleted file mode 100644 index e4da773db2..0000000000 --- a/gr-digital/grc/digital_fll_band_edge_cc.xml +++ /dev/null @@ -1,70 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## FLL using Band-Edge Filters -################################################### - --> -<block> - <name>FLL Band-Edge</name> - <key>digital_fll_band_edge_cc</key> - <import>from gnuradio import digital</import> - <make>digital.fll_band_edge_cc($samps_per_sym, $rolloff, $filter_size, $w)</make> - <callback>set_loop_bandwidth($w)</callback> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex->Complex</name> - <key>cc</key> - <opt>input:complex</opt> - <opt>output:complex</opt> - </option> - </param> - - <param> - <name>Samples Per Symbol</name> - <key>samps_per_sym</key> - <type>real</type> - </param> - <param> - <name>Filter Rolloff Factor</name> - <key>rolloff</key> - <type>real</type> - </param> - <param> - <name>Prototype Filter Size</name> - <key>filter_size</key> - <type>int</type> - </param> - - <param> - <name>Loop Bandwidth</name> - <key>w</key> - <type>real</type> - </param> - - <sink> - <name>in</name> - <type>$type.input</type> - </sink> - <source> - <name>out</name> - <type>$type.output</type> - </source> - <source> - <name>freq</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>phase</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>error</name> - <type>float</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_framer_sink_1.block.yml b/gr-digital/grc/digital_framer_sink_1.block.yml new file mode 100644 index 0000000000..a05a1bf0e7 --- /dev/null +++ b/gr-digital/grc/digital_framer_sink_1.block.yml @@ -0,0 +1,17 @@ +id: digital_framer_sink_1 +label: Framer Sink 1 + +parameters: +- id: target_queue + label: Target Message Queue + dtype: raw + +inputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.framer_sink_1(${target_queue}) + +file_format: 1 diff --git a/gr-digital/grc/digital_framer_sink_1.xml b/gr-digital/grc/digital_framer_sink_1.xml deleted file mode 100644 index 9124e6d0dc..0000000000 --- a/gr-digital/grc/digital_framer_sink_1.xml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Framer Sink 1 -################################################### - --> -<block> - <name>Framer Sink 1</name> - <key>digital_framer_sink_1</key> - <import>from gnuradio import digital</import> - <make>digital.framer_sink_1($target_queue)</make> - <param> - <name>Target Message Queue</name> - <key>target_queue</key> - <type>raw</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> -</block> diff --git a/gr-digital/grc/digital_gfsk_demod.block.yml b/gr-digital/grc/digital_gfsk_demod.block.yml new file mode 100644 index 0000000000..9f6b33c6af --- /dev/null +++ b/gr-digital/grc/digital_gfsk_demod.block.yml @@ -0,0 +1,58 @@ +id: digital_gfsk_demod +label: GFSK Demod + +parameters: +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: sensitivity + label: Sensitivity + dtype: real + default: '1.0' +- id: gain_mu + label: Gain Mu + dtype: real + default: '0.175' +- id: mu + label: Mu + dtype: real + default: '0.5' +- id: omega_relative_limit + label: Omega Relative Limit + dtype: real + default: '0.005' +- id: freq_error + label: Freq Error + dtype: real + default: '0.0' +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: "digital.gfsk_demod(\n\tsamples_per_symbol=${samples_per_symbol},\n\tsensitivity=${sensitivity},\n\ + \tgain_mu=${gain_mu},\n\tmu=${mu},\n\tomega_relative_limit=${omega_relative_limit},\n\ + \tfreq_error=${freq_error},\n\tverbose=${verbose},\n\tlog=${log},\n)" + +file_format: 1 diff --git a/gr-digital/grc/digital_gfsk_demod.xml b/gr-digital/grc/digital_gfsk_demod.xml deleted file mode 100644 index cbea39e63e..0000000000 --- a/gr-digital/grc/digital_gfsk_demod.xml +++ /dev/null @@ -1,95 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##GFSK Demod -################################################### - --> -<block> - <name>GFSK Demod</name> - <key>digital_gfsk_demod</key> - <import>from gnuradio import digital</import> - <make>digital.gfsk_demod( - samples_per_symbol=$samples_per_symbol, - sensitivity=$sensitivity, - gain_mu=$gain_mu, - mu=$mu, - omega_relative_limit=$omega_relative_limit, - freq_error=$freq_error, - verbose=$verbose, - log=$log, -)</make> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Sensitivity</name> - <key>sensitivity</key> - <value>1.0</value> - <type>real</type> - </param> - <param> - <name>Gain Mu</name> - <key>gain_mu</key> - <value>0.175</value> - <type>real</type> - </param> - <param> - <name>Mu</name> - <key>mu</key> - <value>0.5</value> - <type>real</type> - </param> - <param> - <name>Omega Relative Limit</name> - <key>omega_relative_limit</key> - <value>0.005</value> - <type>real</type> - </param> - <param> - <name>Freq Error</name> - <key>freq_error</key> - <value>0.0</value> - <type>real</type> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_gfsk_mod.block.yml b/gr-digital/grc/digital_gfsk_mod.block.yml new file mode 100644 index 0000000000..3dda769a4c --- /dev/null +++ b/gr-digital/grc/digital_gfsk_mod.block.yml @@ -0,0 +1,45 @@ +id: digital_gfsk_mod +label: GFSK Mod + +parameters: +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: sensitivity + label: Sensitivity + dtype: real + default: '1.0' +- id: bt + label: BT + dtype: real + default: '0.35' +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: "digital.gfsk_mod(\n\tsamples_per_symbol=${samples_per_symbol},\n\tsensitivity=${sensitivity},\n\ + \tbt=${bt},\n\tverbose=${verbose},\n\tlog=${log},\n)" + +file_format: 1 diff --git a/gr-digital/grc/digital_gfsk_mod.xml b/gr-digital/grc/digital_gfsk_mod.xml deleted file mode 100644 index 08e2c84790..0000000000 --- a/gr-digital/grc/digital_gfsk_mod.xml +++ /dev/null @@ -1,74 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##GFSK Mod -################################################### - --> -<block> - <name>GFSK Mod</name> - <key>digital_gfsk_mod</key> - <import>from gnuradio import digital</import> - <make>digital.gfsk_mod( - samples_per_symbol=$samples_per_symbol, - sensitivity=$sensitivity, - bt=$bt, - verbose=$verbose, - log=$log, -)</make> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Sensitivity</name> - <key>sensitivity</key> - <value>1.0</value> - <type>real</type> - </param> - <param> - <name>BT</name> - <key>bt</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_glfsr_source_x.block.yml b/gr-digital/grc/digital_glfsr_source_x.block.yml new file mode 100644 index 0000000000..716b77b02c --- /dev/null +++ b/gr-digital/grc/digital_glfsr_source_x.block.yml @@ -0,0 +1,37 @@ +id: digital_glfsr_source_x +label: GLFSR Source + +parameters: +- id: type + label: Type + dtype: enum + options: [float, byte] + option_attributes: + fcn: [f, b] + hide: part +- id: degree + label: Degree + dtype: int +- id: repeat + label: Repeat + dtype: enum + options: ['True', 'False'] + option_labels: ['Yes', 'No'] +- id: mask + label: Mask + dtype: int + default: '0' +- id: seed + label: Seed + dtype: int + default: '1' + +outputs: +- domain: stream + dtype: ${ type } + +templates: + imports: from gnuradio import digital + make: digital.glfsr_source_${type.fcn}(${degree}, ${repeat}, ${mask}, ${seed}) + +file_format: 1 diff --git a/gr-digital/grc/digital_glfsr_source_x.xml b/gr-digital/grc/digital_glfsr_source_x.xml deleted file mode 100644 index 654dfa71c0..0000000000 --- a/gr-digital/grc/digital_glfsr_source_x.xml +++ /dev/null @@ -1,61 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##GLFSR Source -################################################### - --> -<block> - <name>GLFSR Source</name> - <key>digital_glfsr_source_x</key> - <import>from gnuradio import digital</import> - <make>digital.glfsr_source_$(type.fcn)($degree, $repeat, $mask, $seed)</make> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Float</name> - <key>float</key> - <opt>fcn:f</opt> - </option> - <option> - <name>Byte</name> - <key>byte</key> - <opt>fcn:b</opt> - </option> - </param> - <param> - <name>Degree</name> - <key>degree</key> - <type>int</type> - </param> - <param> - <name>Repeat</name> - <key>repeat</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>Mask</name> - <key>mask</key> - <value>0</value> - <type>int</type> - </param> - <param> - <name>Seed</name> - <key>seed</key> - <value>1</value> - <type>int</type> - </param> - <source> - <name>out</name> - <type>$type</type> - </source> -</block> diff --git a/gr-digital/grc/digital_gmsk_demod.block.yml b/gr-digital/grc/digital_gmsk_demod.block.yml new file mode 100644 index 0000000000..bbd3b4148a --- /dev/null +++ b/gr-digital/grc/digital_gmsk_demod.block.yml @@ -0,0 +1,54 @@ +id: digital_gmsk_demod +label: GMSK Demod + +parameters: +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: gain_mu + label: Gain Mu + dtype: real + default: '0.175' +- id: mu + label: Mu + dtype: real + default: '0.5' +- id: omega_relative_limit + label: Omega Relative Limit + dtype: real + default: '0.005' +- id: freq_error + label: Freq Error + dtype: real + default: '0.0' +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: "digital.gmsk_demod(\n\tsamples_per_symbol=${samples_per_symbol},\n\tgain_mu=${gain_mu},\n\ + \tmu=${mu},\n\tomega_relative_limit=${omega_relative_limit},\n\tfreq_error=${freq_error},\n\ + \tverbose=${verbose},\n\tlog=${log},\n)" + +file_format: 1 diff --git a/gr-digital/grc/digital_gmsk_demod.xml b/gr-digital/grc/digital_gmsk_demod.xml deleted file mode 100644 index 4d57f1a17a..0000000000 --- a/gr-digital/grc/digital_gmsk_demod.xml +++ /dev/null @@ -1,88 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##GMSK Demod -################################################### - --> -<block> - <name>GMSK Demod</name> - <key>digital_gmsk_demod</key> - <import>from gnuradio import digital</import> - <make>digital.gmsk_demod( - samples_per_symbol=$samples_per_symbol, - gain_mu=$gain_mu, - mu=$mu, - omega_relative_limit=$omega_relative_limit, - freq_error=$freq_error, - verbose=$verbose, - log=$log, -)</make> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Gain Mu</name> - <key>gain_mu</key> - <value>0.175</value> - <type>real</type> - </param> - <param> - <name>Mu</name> - <key>mu</key> - <value>0.5</value> - <type>real</type> - </param> - <param> - <name>Omega Relative Limit</name> - <key>omega_relative_limit</key> - <value>0.005</value> - <type>real</type> - </param> - <param> - <name>Freq Error</name> - <key>freq_error</key> - <value>0.0</value> - <type>real</type> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_gmsk_mod.block.yml b/gr-digital/grc/digital_gmsk_mod.block.yml new file mode 100644 index 0000000000..0b0941bae0 --- /dev/null +++ b/gr-digital/grc/digital_gmsk_mod.block.yml @@ -0,0 +1,41 @@ +id: digital_gmsk_mod +label: GMSK Mod + +parameters: +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: bt + label: BT + dtype: real + default: '0.35' +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: "digital.gmsk_mod(\n\tsamples_per_symbol=${samples_per_symbol},\n\tbt=${bt},\n\ + \tverbose=${verbose},\n\tlog=${log},\n)" + +file_format: 1 diff --git a/gr-digital/grc/digital_gmsk_mod.xml b/gr-digital/grc/digital_gmsk_mod.xml deleted file mode 100644 index 77f52ca2f2..0000000000 --- a/gr-digital/grc/digital_gmsk_mod.xml +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##GMSK Mod -################################################### - --> -<block> - <name>GMSK Mod</name> - <key>digital_gmsk_mod</key> - <import>from gnuradio import digital</import> - <make>digital.gmsk_mod( - samples_per_symbol=$samples_per_symbol, - bt=$bt, - verbose=$verbose, - log=$log, -)</make> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>BT</name> - <key>bt</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_gmskmod_bc.block.yml b/gr-digital/grc/digital_gmskmod_bc.block.yml new file mode 100644 index 0000000000..4b9a511078 --- /dev/null +++ b/gr-digital/grc/digital_gmskmod_bc.block.yml @@ -0,0 +1,30 @@ +id: digital_gmskmod_bc +label: GMSK Modulator + +parameters: +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: bt + label: 3 dB Time-Bandwith Product + dtype: real + default: '0.3' +- id: L + label: Pulse Duration (Symbols) + dtype: int + default: '4' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.gmskmod_bc(${samples_per_symbol}, ${L}, ${bt}) + +file_format: 1 diff --git a/gr-digital/grc/digital_gmskmod_bc.xml b/gr-digital/grc/digital_gmskmod_bc.xml deleted file mode 100644 index 6cda687f76..0000000000 --- a/gr-digital/grc/digital_gmskmod_bc.xml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## GMSK -################################################### - --> -<block> - <name>GMSK Modulator</name> - <key>digital_gmskmod_bc</key> - <import>from gnuradio import digital</import> - <make>digital.gmskmod_bc($samples_per_symbol, $L, $bt)</make> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>3 dB Time-Bandwith Product</name> - <key>bt</key> - <value>0.3</value> - <type>real</type> - </param> - <param> - <name>Pulse Duration (Symbols)</name> - <key>L</key> - <value>4</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_hdlc_deframer_bp.block.yml b/gr-digital/grc/digital_hdlc_deframer_bp.block.yml new file mode 100644 index 0000000000..38b31ca53f --- /dev/null +++ b/gr-digital/grc/digital_hdlc_deframer_bp.block.yml @@ -0,0 +1,26 @@ +id: digital_hdlc_deframer_bp +label: HDLC Deframer + +parameters: +- id: min + label: Min length + dtype: int + default: '32' +- id: max + label: Max length + dtype: int + default: '500' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: message + id: out + +templates: + imports: from gnuradio import digital + make: digital.hdlc_deframer_bp(${min}, ${max}) + +file_format: 1 diff --git a/gr-digital/grc/digital_hdlc_deframer_bp.xml b/gr-digital/grc/digital_hdlc_deframer_bp.xml deleted file mode 100644 index 3e78b891df..0000000000 --- a/gr-digital/grc/digital_hdlc_deframer_bp.xml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>HDLC Deframer</name> - <key>digital_hdlc_deframer_bp</key> - <import>from gnuradio import digital</import> - <make>digital.hdlc_deframer_bp($min, $max)</make> - <param> - <name>Min length</name> - <key>min</key> - <value>32</value> - <type>int</type> - </param> - <param> - <name>Max length</name> - <key>max</key> - <value>500</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>message</type> - </source> -</block> diff --git a/gr-digital/grc/digital_hdlc_framer_pb.block.yml b/gr-digital/grc/digital_hdlc_framer_pb.block.yml new file mode 100644 index 0000000000..f775a489ef --- /dev/null +++ b/gr-digital/grc/digital_hdlc_framer_pb.block.yml @@ -0,0 +1,21 @@ +id: digital_hdlc_framer_pb +label: HDLC Framer + +parameters: +- id: frame_tag_name + label: Frame tag name + dtype: string + +inputs: +- domain: message + id: in + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.hdlc_framer_pb(${frame_tag_name}) + +file_format: 1 diff --git a/gr-digital/grc/digital_hdlc_framer_pb.xml b/gr-digital/grc/digital_hdlc_framer_pb.xml deleted file mode 100644 index 8dc122d581..0000000000 --- a/gr-digital/grc/digital_hdlc_framer_pb.xml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>HDLC Framer</name> - <key>digital_hdlc_framer_pb</key> - <import>from gnuradio import digital</import> - <make>digital.hdlc_framer_pb($frame_tag_name)</make> - <param> - <name>Frame tag name</name> - <key>frame_tag_name</key> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>message</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_header_payload_demux.block.yml b/gr-digital/grc/digital_header_payload_demux.block.yml new file mode 100644 index 0000000000..4f69a08f29 --- /dev/null +++ b/gr-digital/grc/digital_header_payload_demux.block.yml @@ -0,0 +1,85 @@ +id: digital_header_payload_demux +label: Header/Payload Demux + +parameters: +- id: header_len + label: Header Length (Symbols) + dtype: int +- id: header_padding + label: Header Padding (Uncertainty / Symbols) + dtype: int + default: '0' +- id: items_per_symbol + label: Items per symbol + dtype: int + hide: ${ 'part' if vlen == 1 else 'none' } +- id: guard_interval + label: Guard Interval (items) + dtype: int + default: '0' + hide: ${ ('none' if guard_interval else 'part') } +- id: length_tag_key + label: Length tag key + dtype: string + default: '"frame_len"' +- id: trigger_tag_key + label: Trigger tag key + dtype: string + default: '""' + hide: ${ ('none' if trigger_tag_key else 'part') } +- id: output_symbols + label: Output Format + dtype: enum + options: ['False', 'True'] + option_labels: [Items, Symbols] + hide: ${ 'part' if vlen == 1 else 'none' } +- id: type + label: IO Type + dtype: enum + options: [complex, float, int, short, byte] + option_attributes: + itemsize: [gr.sizeof_gr_complex, gr.sizeof_float, gr.sizeof_int, gr.sizeof_short, + gr.sizeof_char] + hide: part +- id: timing_tag_key + label: Timing tag key + dtype: string + default: '"rx_time"' +- id: samp_rate + label: Sampling Rate + dtype: int + default: samp_rate +- id: special_tags + label: Special Tag Keys + dtype: raw + default: (,) + +inputs: +- domain: stream + dtype: ${ type } +- label: trigger + domain: stream + dtype: byte + optional: true +- domain: message + id: header_data + +outputs: +- label: out_hdr + domain: stream + dtype: ${ type } + vlen: '${ {True: items_per_symbol, False: 1}[output_symbols] }' +- label: out_payload + domain: stream + dtype: ${ type } + vlen: '${ {True: items_per_symbol, False: 1}[output_symbols] }' + +templates: + imports: from gnuradio import digital + make: "digital.header_payload_demux(\n\t ${header_len},\n\t ${items_per_symbol},\n\ + \t ${guard_interval},\n\t ${length_tag_key},\n\t ${trigger_tag_key},\n\t\ + \ ${output_symbols},\n\t ${type.itemsize},\n\t ${timing_tag_key},\n \ + \ ${samp_rate},\n ${special_tags},\n ${header_padding},\n\ + \ )" + +file_format: 1 diff --git a/gr-digital/grc/digital_header_payload_demux.xml b/gr-digital/grc/digital_header_payload_demux.xml deleted file mode 100644 index a2fe80e621..0000000000 --- a/gr-digital/grc/digital_header_payload_demux.xml +++ /dev/null @@ -1,138 +0,0 @@ -<block> - <name>Header/Payload Demux</name> - <key>digital_header_payload_demux</key> - <import>from gnuradio import digital</import> - <make>digital.header_payload_demux( - $header_len, - $items_per_symbol, - $guard_interval, - $length_tag_key, - $trigger_tag_key, - $output_symbols, - $(type.itemsize), - $timing_tag_key, - $samp_rate, - $special_tags, - $header_padding, - )</make> - <param> - <name>Header Length (Symbols)</name> - <key>header_len</key> - <type>int</type> - </param> - <param> - <name>Header Padding (Uncertainty / Symbols)</name> - <key>header_padding</key> - <value>0</value> - <type>int</type> - </param> - <param> - <name>Items per symbol</name> - <key>items_per_symbol</key> - <type>int</type> - </param> - <param> - <name>Guard Interval (items)</name> - <key>guard_interval</key> - <value>0</value> - <type>int</type> - <hide>#if $guard_interval then 'none' else 'part'#</hide> - </param> - <param> - <name>Length tag key</name> - <key>length_tag_key</key> - <value>"frame_len"</value> - <type>string</type> - </param> - <param> - <name>Trigger tag key</name> - <key>trigger_tag_key</key> - <value>""</value> - <type>string</type> - <hide>#if $trigger_tag_key then 'none' else 'part'#</hide> - </param> - <param> - <name>Output Format</name> - <key>output_symbols</key> - <type>enum</type> - <option> - <name>Items</name> - <key>False</key> - </option> - <option> - <name>Symbols</name> - <key>True</key> - </option> - </param> - <param> - <name>IO Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>complex</key> - <opt>itemsize:gr.sizeof_gr_complex</opt> - </option> - <option> - <name>Float</name> - <key>float</key> - <opt>itemsize:gr.sizeof_float</opt> - </option> - <option> - <name>Int</name> - <key>int</key> - <opt>itemsize:gr.sizeof_int</opt> - </option> - <option> - <name>Short</name> - <key>short</key> - <opt>itemsize:gr.sizeof_short</opt> - </option> - <option> - <name>Byte</name> - <key>byte</key> - <opt>itemsize:gr.sizeof_char</opt> - </option> - </param> - <param> - <name>Timing tag key</name> - <key>timing_tag_key</key> - <value>"rx_time"</value> - <type>string</type> - </param> - <param> - <name>Sampling Rate</name> - <key>samp_rate</key> - <value>samp_rate</value> - <type>int</type> - </param> - <param> - <name>Special Tag Keys</name> - <key>special_tags</key> - <value>(,)</value> - <type>raw</type> - </param> - <sink> - <name>in</name> - <type>$type</type> - </sink> - <sink> - <name>trigger</name> - <type>byte</type> - <optional>1</optional> - </sink> - <sink> - <name>header_data</name> - <type>message</type> - </sink> - <source> - <name>out_hdr</name> - <type>$type</type> - <vlen>{True: $items_per_symbol, False: 1}[$output_symbols]</vlen> - </source> - <source> - <name>out_payload</name> - <type>$type</type> - <vlen>{True: $items_per_symbol, False: 1}[$output_symbols]</vlen> - </source> -</block> diff --git a/gr-digital/grc/digital_kurtotic_equalizer_cc.block.yml b/gr-digital/grc/digital_kurtotic_equalizer_cc.block.yml new file mode 100644 index 0000000000..d81aee7d4d --- /dev/null +++ b/gr-digital/grc/digital_kurtotic_equalizer_cc.block.yml @@ -0,0 +1,26 @@ +id: digital_kurtotic_equalizer_cc +label: Kurtotic Equalizer + +parameters: +- id: num_taps + label: Num. Taps + dtype: int +- id: mu + label: Mu + dtype: real + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.kurtotic_equalizer_cc(${num_taps}, ${mu}) + callbacks: + - set_gain(${mu}) + +file_format: 1 diff --git a/gr-digital/grc/digital_kurtotic_equalizer_cc.xml b/gr-digital/grc/digital_kurtotic_equalizer_cc.xml deleted file mode 100644 index 8c4a2012d2..0000000000 --- a/gr-digital/grc/digital_kurtotic_equalizer_cc.xml +++ /dev/null @@ -1,31 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Kurtotic Equalizer -################################################### - --> -<block> - <name>Kurtotic Equalizer</name> - <key>digital_kurtotic_equalizer_cc</key> - <import>from gnuradio import digital</import> - <make>digital.kurtotic_equalizer_cc($num_taps, $mu)</make> - <callback>set_gain($mu)</callback> - <param> - <name>Num. Taps</name> - <key>num_taps</key> - <type>int</type> - </param> - <param> - <name>Mu</name> - <key>mu</key> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_lms_dd_equalizer_cc.block.yml b/gr-digital/grc/digital_lms_dd_equalizer_cc.block.yml new file mode 100644 index 0000000000..1c44ea2850 --- /dev/null +++ b/gr-digital/grc/digital_lms_dd_equalizer_cc.block.yml @@ -0,0 +1,32 @@ +id: digital_lms_dd_equalizer_cc +label: LMS DD Equalizer + +parameters: +- id: mu + label: Gain + dtype: real +- id: num_taps + label: Num. Taps + dtype: int +- id: sps + label: Samples per Symbol + dtype: int +- id: cnst + label: Constellation Object + dtype: raw + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.lms_dd_equalizer_cc(${num_taps}, ${mu}, ${sps}, ${cnst}) + callbacks: + - set_gain(${mu}) + +file_format: 1 diff --git a/gr-digital/grc/digital_lms_dd_equalizer_cc.xml b/gr-digital/grc/digital_lms_dd_equalizer_cc.xml deleted file mode 100644 index 0fd7d523b8..0000000000 --- a/gr-digital/grc/digital_lms_dd_equalizer_cc.xml +++ /dev/null @@ -1,41 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## LMS DD Equalizer -################################################### - --> -<block> - <name>LMS DD Equalizer</name> - <key>digital_lms_dd_equalizer_cc</key> - <import>from gnuradio import digital</import> - <make>digital.lms_dd_equalizer_cc($num_taps, $mu, $sps, $cnst)</make> - <callback>set_gain($mu)</callback> - <param> - <name>Gain</name> - <key>mu</key> - <type>real</type> - </param> - <param> - <name>Num. Taps</name> - <key>num_taps</key> - <type>int</type> - </param> - <param> - <name>Samples per Symbol</name> - <key>sps</key> - <type>int</type> - </param> - <param> - <name>Constellation Object</name> - <key>cnst</key> - <type>raw</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_map_bb.block.yml b/gr-digital/grc/digital_map_bb.block.yml new file mode 100644 index 0000000000..8f1a33fb0f --- /dev/null +++ b/gr-digital/grc/digital_map_bb.block.yml @@ -0,0 +1,21 @@ +id: digital_map_bb +label: Map + +parameters: +- id: map + label: Map + dtype: int_vector + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.map_bb(${map}) + +file_format: 1 diff --git a/gr-digital/grc/digital_map_bb.xml b/gr-digital/grc/digital_map_bb.xml deleted file mode 100644 index 1435c5ac78..0000000000 --- a/gr-digital/grc/digital_map_bb.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Map -################################################### - --> -<block> - <name>Map</name> - <key>digital_map_bb</key> - <import>from gnuradio import digital</import> - <make>digital.map_bb($map)</make> - <param> - <name>Map</name> - <key>map</key> - <type>int_vector</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_modulate_vector.block.yml b/gr-digital/grc/digital_modulate_vector.block.yml new file mode 100644 index 0000000000..a06cc211c8 --- /dev/null +++ b/gr-digital/grc/digital_modulate_vector.block.yml @@ -0,0 +1,22 @@ +id: variable_modulate_vector +label: Modulate Vector +category: Modulators + +parameters: +- id: mod + label: Modulator + dtype: raw +- id: data + label: Data vector + dtype: int_vector +- id: taps + label: Filter taps + dtype: float_vector +value: ${ digital.modulate_vector_bc(mod .to_basic_block(), data, taps) } + +templates: + imports: from gnuradio import digital + var_make: self.${id} = ${id} = digital.modulate_vector_bc(${mod} .to_basic_block(), + ${data}, ${taps}) + +file_format: 1 diff --git a/gr-digital/grc/digital_modulate_vector.xml b/gr-digital/grc/digital_modulate_vector.xml deleted file mode 100644 index 91614dd3fd..0000000000 --- a/gr-digital/grc/digital_modulate_vector.xml +++ /dev/null @@ -1,34 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -# modulate_vector_bc -################################################### - --> -<block> - <name>Modulate Vector</name> - <key>variable_modulate_vector</key> - <category>Modulators</category> - <import>from gnuradio import digital</import> - <var_make>self.$(id) = $(id) = digital.modulate_vector_bc($mod .to_basic_block(), $data, $taps)</var_make> - <var_value>digital.modulate_vector_bc($mod .to_basic_block(), $data, $taps)</var_value> - <make></make> - - <param> - <name>Modulator</name> - <key>mod</key> - <value></value> - <type>raw</type> - </param> - <param> - <name>Data vector</name> - <key>data</key> - <value></value> - <type>int_vector</type> - </param> - <param> - <name>Filter taps</name> - <key>taps</key> - <value></value> - <type>float_vector</type> - </param> -</block> diff --git a/gr-digital/grc/digital_mpsk_snr_est_cc.block.yml b/gr-digital/grc/digital_mpsk_snr_est_cc.block.yml new file mode 100644 index 0000000000..7c39a24927 --- /dev/null +++ b/gr-digital/grc/digital_mpsk_snr_est_cc.block.yml @@ -0,0 +1,35 @@ +id: digital_mpsk_snr_est_cc +label: MPSK SNR Estimator + +parameters: +- id: type + label: Type + dtype: enum + options: ['0', '1', '2', '3'] + option_labels: [Simple, Skewness, 2nd and 4th Moment, SVR] +- id: tag_nsamples + label: Samples between tags + dtype: int + default: '10000' +- id: alpha + label: Filter Alpha + dtype: real + default: '0.001' + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.mpsk_snr_est_cc(${type}, ${tag_nsamples}, ${alpha}) + callbacks: + - set_type(${type}) + - set_tag_nsamples(${tag_nsamples}) + - set_alpha(${alpha}) + +file_format: 1 diff --git a/gr-digital/grc/digital_mpsk_snr_est_cc.xml b/gr-digital/grc/digital_mpsk_snr_est_cc.xml deleted file mode 100644 index 6039e5b13e..0000000000 --- a/gr-digital/grc/digital_mpsk_snr_est_cc.xml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##MPSK SNR Estimator -################################################### - --> -<block> - <name>MPSK SNR Estimator</name> - <key>digital_mpsk_snr_est_cc</key> - <import>from gnuradio import digital</import> - <make>digital.mpsk_snr_est_cc($type, $tag_nsamples, $alpha)</make> - <callback>set_type($type)</callback> - <callback>set_tag_nsamples($tag_nsamples)</callback> - <callback>set_alpha($alpha)</callback> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Simple</name> - <key>0</key> - </option> - <option> - <name>Skewness</name> - <key>1</key> - </option> - <option> - <name>2nd and 4th Moment</name> - <key>2</key> - </option> - <option> - <name>SVR</name> - <key>3</key> - </option> - </param> - <param> - <name>Samples between tags</name> - <key>tag_nsamples</key> - <value>10000</value> - <type>int</type> - </param> - <param> - <name>Filter Alpha</name> - <key>alpha</key> - <value>0.001</value> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_msk_timing_recovery_cc.block.yml b/gr-digital/grc/digital_msk_timing_recovery_cc.block.yml new file mode 100644 index 0000000000..3f5ae678c7 --- /dev/null +++ b/gr-digital/grc/digital_msk_timing_recovery_cc.block.yml @@ -0,0 +1,42 @@ +id: digital_msk_timing_recovery_cc +label: MSK Timing Recovery + +parameters: +- id: gain + label: Gain + dtype: float +- id: sps + label: Samples per symbol + dtype: float +- id: limit + label: Error limit + dtype: float +- id: osps + label: Output samples per symbol + dtype: int + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex +- label: err + domain: stream + dtype: float + optional: true +- label: omega + domain: stream + dtype: float + optional: true + +templates: + imports: from gnuradio import digital + make: digital.msk_timing_recovery_cc(${sps}, ${gain}, ${limit}, ${osps}) + callbacks: + - set_gain(${gain}) + - set_sps(${sps}) + - set_limit(${limit}) + +file_format: 1 diff --git a/gr-digital/grc/digital_msk_timing_recovery_cc.xml b/gr-digital/grc/digital_msk_timing_recovery_cc.xml deleted file mode 100644 index cda780d685..0000000000 --- a/gr-digital/grc/digital_msk_timing_recovery_cc.xml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>MSK Timing Recovery</name> - <key>digital_msk_timing_recovery_cc</key> - <import>from gnuradio import digital</import> - <make>digital.msk_timing_recovery_cc($sps, $gain, $limit, $osps)</make> - <callback>set_gain($gain)</callback> - <callback>set_sps($sps)</callback> - <callback>set_limit($limit)</callback> - <param> - <name>Gain</name> - <key>gain</key> - <type>float</type> - </param> - <param> - <name>Samples per symbol</name> - <key>sps</key> - <type>float</type> - </param> - <param> - <name>Error limit</name> - <key>limit</key> - <type>float</type> - </param> - <param> - <name>Output samples per symbol</name> - <key>osps</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> - <source> - <name>err</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>omega</name> - <type>float</type> - <optional>1</optional> - </source> - -</block> diff --git a/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml b/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml new file mode 100644 index 0000000000..ab260ab9d9 --- /dev/null +++ b/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml @@ -0,0 +1,44 @@ +id: digital_ofdm_carrier_allocator_cvc +label: OFDM Carrier Allocator + +parameters: +- id: fft_len + label: FFT length + dtype: int + default: fft_len + hide: ${ 'part' if vlen == 1 else 'none' } +- id: occupied_carriers + label: Occupied Carriers + dtype: raw +- id: pilot_carriers + label: Pilot Carriers + dtype: raw + default: () +- id: pilot_symbols + label: Pilot Symbols + dtype: raw + default: () +- id: sync_words + label: Sync Words + dtype: raw + default: () +- id: len_tag_key + label: Length tag key + dtype: string + default: '"packet_len"' + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex + vlen: ${ fft_len } + +templates: + imports: from gnuradio import digital + make: digital.ofdm_carrier_allocator_cvc(${fft_len}, ${occupied_carriers}, ${pilot_carriers}, + ${pilot_symbols}, ${sync_words}, ${len_tag_key}) + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.xml b/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.xml deleted file mode 100644 index b9bdde543d..0000000000 --- a/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.xml +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>OFDM Carrier Allocator</name> - <key>digital_ofdm_carrier_allocator_cvc</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_carrier_allocator_cvc($fft_len, $occupied_carriers, $pilot_carriers, $pilot_symbols, $sync_words, $len_tag_key)</make> - <param> - <name>FFT length</name> - <key>fft_len</key> - <value>fft_len</value> - <type>int</type> - </param> - <param> - <name>Occupied Carriers</name> - <key>occupied_carriers</key> - <type>raw</type> - </param> - <param> - <name>Pilot Carriers</name> - <key>pilot_carriers</key> - <value>()</value> - <type>raw</type> - </param> - <param> - <name>Pilot Symbols</name> - <key>pilot_symbols</key> - <value>()</value> - <type>raw</type> - </param> - <param> - <name>Sync Words</name> - <key>sync_words</key> - <value>()</value> - <type>raw</type> - </param> - <param> - <name>Length tag key</name> - <key>len_tag_key</key> - <value>"packet_len"</value> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - <vlen>$fft_len</vlen> - </source> -</block> diff --git a/gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml b/gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml new file mode 100644 index 0000000000..352c6ab5a7 --- /dev/null +++ b/gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml @@ -0,0 +1,53 @@ +id: digital_ofdm_chanest_vcvc +label: OFDM Channel Estimation + +parameters: +- id: sync_symbol1 + label: Synch. symbol 1 + dtype: complex_vector + hide: ${ 'part' if vlen == 1 else 'none' } +- id: sync_symbol2 + label: Synch. symbol 2 + dtype: complex_vector + default: () +- id: n_data_symbols + label: Number of data symbols + dtype: int + default: '1' +- id: eq_noise_red_len + label: Channel taps noise reduction length + dtype: int + default: '0' + hide: all +- id: max_carr_offset + label: Maximum carrier offset + dtype: int + default: '-1' + hide: ${ ('part' if max_carr_offset < 0 else 'none') } +- id: force_one_symbol + label: Force One Synchronisation Symbol + dtype: enum + options: ['False', 'True'] + option_labels: ['No', 'Yes'] + hide: ${ ('part' if not force_one_symbol else 'none') } + +inputs: +- domain: stream + dtype: complex + vlen: ${ len(sync_symbol1) } + +outputs: +- domain: stream + dtype: complex + vlen: ${ len(sync_symbol1) } + +asserts: +- ${ len(sync_symbol1) } +- ${ len(sync_symbol2) == 0 or len(sync_symbol2) == len(sync_symbol1) } + +templates: + imports: from gnuradio import digital + make: digital.ofdm_chanest_vcvc(${sync_symbol1}, ${sync_symbol2}, ${n_data_symbols}, + ${eq_noise_red_len}, ${max_carr_offset}, ${force_one_symbol}) + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_chanest_vcvc.xml b/gr-digital/grc/digital_ofdm_chanest_vcvc.xml deleted file mode 100644 index 5cc2145456..0000000000 --- a/gr-digital/grc/digital_ofdm_chanest_vcvc.xml +++ /dev/null @@ -1,64 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>OFDM Channel Estimation</name> - <key>digital_ofdm_chanest_vcvc</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_chanest_vcvc($sync_symbol1, $sync_symbol2, $n_data_symbols, $eq_noise_red_len, $max_carr_offset, $force_one_symbol)</make> - <param> - <name>Synch. symbol 1</name> - <key>sync_symbol1</key> - <type>complex_vector</type> - </param> - <param> - <name>Synch. symbol 2</name> - <key>sync_symbol2</key> - <value>()</value> - <type>complex_vector</type> - </param> - <param> - <name>Number of data symbols</name> - <key>n_data_symbols</key> - <value>1</value> - <type>int</type> - </param> - <param> - <name>Channel taps noise reduction length</name> - <key>eq_noise_red_len</key> - <value>0</value> - <type>int</type> - <hide>all</hide> - </param> - <param> - <name>Maximum carrier offset</name> - <key>max_carr_offset</key> - <value>-1</value> - <type>int</type> - <hide>#if $max_carr_offset < 0 then 'part' else 'none'#</hide> - </param> - <param> - <name>Force One Synchronisation Symbol</name> - <key>force_one_symbol</key> - <type>enum</type> - <hide>#if not $force_one_symbol then 'part' else 'none'#</hide> - <option> - <name>No</name> - <key>False</key> - </option> - <option> - <name>Yes</name> - <key>True</key> - </option> - </param> - <check>len($sync_symbol1)</check> - <check>len($sync_symbol2) == 0 or len($sync_symbol2) == len($sync_symbol1)</check> - <sink> - <name>in</name> - <type>complex</type> - <vlen>len($sync_symbol1)</vlen> - </sink> - <source> - <name>out</name> - <type>complex</type> - <vlen>len($sync_symbol1)</vlen> - </source> -</block> diff --git a/gr-digital/grc/digital_ofdm_cyclic_prefixer.block.yml b/gr-digital/grc/digital_ofdm_cyclic_prefixer.block.yml new file mode 100644 index 0000000000..cd475a0601 --- /dev/null +++ b/gr-digital/grc/digital_ofdm_cyclic_prefixer.block.yml @@ -0,0 +1,38 @@ +id: digital_ofdm_cyclic_prefixer +label: OFDM Cyclic Prefixer + +parameters: +- id: input_size + label: FFT Length + dtype: int + default: fft_len + hide: ${ 'part' if vlen == 1 else 'none' } +- id: cp_len + label: CP Length + dtype: int + default: fft_len/4 +- id: rolloff + label: Rolloff + dtype: int + default: '0' + hide: ${ ('none' if rolloff else 'part') } +- id: tagname + label: Length Tag Key + dtype: string + default: '"frame_len"' + +inputs: +- domain: stream + dtype: complex + vlen: ${ input_size } + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.ofdm_cyclic_prefixer(${input_size}, ${input_size+cp_len}, ${rolloff}, + ${tagname}) + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_cyclic_prefixer.xml b/gr-digital/grc/digital_ofdm_cyclic_prefixer.xml deleted file mode 100644 index ec5e027047..0000000000 --- a/gr-digital/grc/digital_ofdm_cyclic_prefixer.xml +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> -<!-- - Copyright 2011 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -##OFDM Cyclic Prefixer -################################################### - --> -<block> - <name>OFDM Cyclic Prefixer</name> - <key>digital_ofdm_cyclic_prefixer</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_cyclic_prefixer($input_size, $input_size+$cp_len, $rolloff, $tagname)</make> - <param> - <name>FFT Length</name> - <key>input_size</key> - <value>fft_len</value> - <type>int</type> - </param> - <param> - <name>CP Length</name> - <key>cp_len</key> - <value>fft_len/4</value> - <type>int</type> - </param> - <param> - <name>Rolloff</name> - <key>rolloff</key> - <value>0</value> - <type>int</type> - <hide>#if $rolloff then 'none' else 'part'#</hide> - </param> - <param> - <name>Length Tag Key</name> - <key>tagname</key> - <value>"frame_len"</value> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - <vlen>$input_size</vlen> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml b/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml new file mode 100644 index 0000000000..b2eba18e64 --- /dev/null +++ b/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml @@ -0,0 +1,46 @@ +id: digital_ofdm_frame_equalizer_vcvc +label: OFDM Frame Equalizer + +parameters: +- id: fft_len + label: FFT length + dtype: int + default: fft_len + hide: ${ 'part' if vlen == 1 else 'none' } +- id: cp_len + label: CP length + dtype: int + default: fft_len/4 +- id: equalizer + label: Equalizer + dtype: raw +- id: len_tag_key + label: Length Tag Key + dtype: string +- id: propagate_channel_state + label: Propagate Channel State + dtype: enum + options: ['True', 'False'] + option_labels: ['Yes', 'No'] +- id: fixed_frame_len + label: Fixed frame length + dtype: int + default: '0' + hide: ${ ('none' if fixed_frame_len else 'part') } + +inputs: +- domain: stream + dtype: complex + vlen: ${ fft_len } + +outputs: +- domain: stream + dtype: complex + vlen: ${ fft_len } + +templates: + imports: from gnuradio import digital + make: digital.ofdm_frame_equalizer_vcvc(${equalizer}, ${cp_len}, ${len_tag_key}, + ${propagate_channel_state}, ${fixed_frame_len}) + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.xml b/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.xml deleted file mode 100644 index 2a0c24e528..0000000000 --- a/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.xml +++ /dev/null @@ -1,58 +0,0 @@ -<block> - <name>OFDM Frame Equalizer</name> - <key>digital_ofdm_frame_equalizer_vcvc</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_frame_equalizer_vcvc($equalizer, $cp_len, $len_tag_key, $propagate_channel_state, $fixed_frame_len)</make> - <param> - <name>FFT length</name> - <key>fft_len</key> - <value>fft_len</value> - <type>int</type> - </param> - <param> - <name>CP length</name> - <key>cp_len</key> - <value>fft_len/4</value> - <type>int</type> - </param> - <param> - <name>Equalizer</name> - <key>equalizer</key> - <type>raw</type> - </param> - <param> - <name>Length Tag Key</name> - <key>len_tag_key</key> - <type>string</type> - </param> - <param> - <name>Propagate Channel State</name> - <key>propagate_channel_state</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>Fixed frame length</name> - <key>fixed_frame_len</key> - <value>0</value> - <type>int</type> - <hide>#if $fixed_frame_len then 'none' else 'part'#</hide> - </param> - <sink> - <name>in</name> - <type>complex</type> - <vlen>$fft_len</vlen> - </sink> - <source> - <name>out</name> - <type>complex</type> - <vlen>$fft_len</vlen> - </source> -</block> diff --git a/gr-digital/grc/digital_ofdm_rx.block.yml b/gr-digital/grc/digital_ofdm_rx.block.yml new file mode 100644 index 0000000000..ac6bc50b09 --- /dev/null +++ b/gr-digital/grc/digital_ofdm_rx.block.yml @@ -0,0 +1,95 @@ +id: digital_ofdm_rx +label: OFDM Receiver + +parameters: +- id: fft_len + label: FFT Length + dtype: int + default: '64' +- id: cp_len + label: Cyclic Prefix Length + dtype: int + default: '16' +- id: packet_len_key + label: Packet Length Tag Key + dtype: string + default: '"length"' +- id: occupied_carriers + label: Occupied Carriers + dtype: raw + default: () + hide: ${ 'none' if occupied_carriers else 'part' } +- id: pilot_carriers + label: Pilot Carriers + dtype: raw + default: () + hide: ${ 'none' if pilot_carriers else 'part' } +- id: pilot_symbols + label: Pilot Symbols + dtype: raw + default: () + hide: ${ 'none' if pilot_symbols else 'part' } + - id: sync_word1 + label: Sync Word 1 + dtype: raw + default: () + hide: ${ 'none' if sync_word1 else 'part' } +- id: sync_word2 + label: Sync Word 2 + dtype: raw + default: () + hide: ${ 'none' if sync_word2 else 'part' } +- id: header_mod + label: Header Modulation + dtype: enum + options: ['"BPSK"', '"QPSK"'] + option_labels: [BPSK, QPSK] + option_attributes: + bps: ['1', '2'] +- id: payload_mod + label: Payload Modulation + dtype: enum + options: ['"BPSK"', '"QPSK"', '"8-PSK"'] + option_labels: [BPSK, QPSK, 8-PSK] + option_attributes: + bps: ['1', '2', '3'] +- id: scramble_bits + label: Scramble Bits + dtype: enum + default: 'False' + options: ['False', 'True'] + option_labels: ['No', 'Yes'] + hide: ${ ('part' if scramble_bits else 'none') } +- id: log + label: Log Debug Info + dtype: enum + default: 'False' + options: ['False', 'True'] + option_labels: ['No', 'Yes'] + hide: ${ ('none' if log else 'part') } + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: byte + +asserts: +- ${ fft_len > 0 } +- ${ cp_len > 0 } +- ${ cp_len < fft_len } + +templates: + imports: from gnuradio import digital + make: "digital.ofdm_rx(\n\t fft_len=${fft_len}, cp_len=${cp_len},\n\t frame_length_tag_key='frame_'+${packet_len_key},\n\ + \t packet_length_tag_key=${packet_len_key},\n\t % if occupied_carriers:\n\ + \t occupied_carriers=${occupied_carriers},\n\t % endif\n\t % if pilot_carriers:\n\ + \t pilot_carriers=${pilot_carriers},\n\t % endif\n\t % if pilot_symbols:\n\ + \t pilot_symbols=${pilot_symbols},\n\t % endif\n\t % if sync_word1:\n\t\ + \ sync_word1=${sync_word1},\n\t % endif\n\t % if sync_word2:\n\t sync_word2=${sync_word2},\n\ + \t % endif\n\t bps_header=${header_mod.bps},\n\t bps_payload=${payload_mod.bps},\n\ + \t debug_log=${log},\n\t scramble_bits=${scramble_bits}\n\t )" + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_rx.xml b/gr-digital/grc/digital_ofdm_rx.xml deleted file mode 100644 index 9c2bf65e9d..0000000000 --- a/gr-digital/grc/digital_ofdm_rx.xml +++ /dev/null @@ -1,190 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>OFDM Receiver</name> - <key>digital_ofdm_rx</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_rx( - fft_len=$fft_len, cp_len=$cp_len, - frame_length_tag_key='frame_'+$packet_len_key, - packet_length_tag_key=$packet_len_key, - #if $occupied_carriers() - occupied_carriers=$occupied_carriers, - #end if - #if $pilot_carriers() - pilot_carriers=$pilot_carriers, - #end if - #if $pilot_symbols() - pilot_symbols=$pilot_symbols, - #end if - #if $sync_word1() - sync_word1=$sync_word1, - #end if - #if $sync_word2() - sync_word2=$sync_word2, - #end if - bps_header=$header_mod.bps, - bps_payload=$payload_mod.bps, - debug_log=$log, - scramble_bits=$scramble_bits - )</make> - <param> - <name>FFT Length</name> - <key>fft_len</key> - <value>64</value> - <type>int</type> - </param> - <param> - <name>Cyclic Prefix Length</name> - <key>cp_len</key> - <value>16</value> - <type>int</type> - </param> - <param> - <name>Packet Length Tag Key</name> - <key>packet_len_key</key> - <value>"length"</value> - <type>string</type> - </param> - <param> - <name>Occupied Carriers</name> - <key>occupied_carriers</key> - <value>()</value> - <type>raw</type> - <hide> - #if $occupied_carriers() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Pilot Carriers</name> - <key>pilot_carriers</key> - <value>()</value> - <type>raw</type> - <hide> - #if $pilot_carriers() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Pilot Symbols</name> - <key>pilot_symbols</key> - <value>()</value> - <type>raw</type> - <hide> - #if $pilot_symbols() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Sync Word 1</name> - <key>sync_word1</key> - <value>()</value> - <type>raw</type> - <hide> - #if $sync_word1() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Sync Word 2</name> - <key>sync_word2</key> - <value>()</value> - <type>raw</type> - <hide> - #if $sync_word2() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Header Modulation</name> - <key>header_mod</key> - <type>enum</type> - <option> - <name>BPSK</name> - <key>"BPSK"</key> - <opt>bps:1</opt> - </option> - <option> - <name>QPSK</name> - <key>"QPSK"</key> - <opt>bps:2</opt> - </option> - </param> - <param> - <name>Payload Modulation</name> - <key>payload_mod</key> - <type>enum</type> - <option> - <name>BPSK</name> - <key>"BPSK"</key> - <opt>bps:1</opt> - </option> - <option> - <name>QPSK</name> - <key>"QPSK"</key> - <opt>bps:2</opt> - </option> - <option> - <name>8-PSK</name> - <key>"8-PSK"</key> - <opt>bps:3</opt> - </option> - </param> - <param> - <name>Scramble Bits</name> - <key>scramble_bits</key> - <value>False</value> - <type>enum</type> - <hide> #if $scramble_bits then 'part' else 'none'#</hide> - <option> - <name>No</name> - <key>False</key> - </option> - <option> - <name>Yes</name> - <key>True</key> - </option> - </param> - <param> - <name>Log Debug Info</name> - <key>log</key> - <value>False</value> - <type>enum</type> - <hide> #if $log then 'none' else 'part'#</hide> - <option> - <name>No</name> - <key>False</key> - </option> - <option> - <name>Yes</name> - <key>True</key> - </option> - </param> - <check>$fft_len > 0</check> - <check>$cp_len > 0</check> - <check>$cp_len < $fft_len</check> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> - diff --git a/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml b/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml new file mode 100644 index 0000000000..d81dd569f7 --- /dev/null +++ b/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml @@ -0,0 +1,51 @@ +id: digital_ofdm_serializer_vcc +label: OFDM Serializer + +parameters: +- id: fft_len + label: FFT length + dtype: int + default: fft_len + hide: ${ 'part' if vlen == 1 else 'none' } +- id: occupied_carriers + label: Occupied Carriers + dtype: raw +- id: len_tag_key + label: Length Tag Key + dtype: string +- id: packet_len_tag_key + label: Packet Length Tag Key + dtype: string + default: '""' + hide: ${ ('none' if packet_len_tag_key else 'part') } +- id: symbols_skipped + label: Symbols skipped + dtype: int + default: '0' + hide: ${ ('none' if symbols_skipped else 'part') } +- id: carr_offset_key + label: Carrier Offset Key + dtype: string + default: '""' + hide: ${ ('none' if carr_offset_key else 'part') } +- id: input_is_shifted + label: Input is shifted + dtype: bool + default: 'True' + hide: ${ ('part' if input_is_shifted else 'none') } + +inputs: +- domain: stream + dtype: complex + vlen: ${ fft_len } + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.ofdm_serializer_vcc(${fft_len}, ${occupied_carriers}, ${len_tag_key}, + ${packet_len_tag_key}, ${symbols_skipped}, ${carr_offset_key}, ${input_is_shifted}) + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_serializer_vcc.xml b/gr-digital/grc/digital_ofdm_serializer_vcc.xml deleted file mode 100644 index 1c09cd94fc..0000000000 --- a/gr-digital/grc/digital_ofdm_serializer_vcc.xml +++ /dev/null @@ -1,60 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>OFDM Serializer</name> - <key>digital_ofdm_serializer_vcc</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_serializer_vcc($fft_len, $occupied_carriers, $len_tag_key, $packet_len_tag_key, $symbols_skipped, $carr_offset_key, $input_is_shifted)</make> - <param> - <name>FFT length</name> - <key>fft_len</key> - <value>fft_len</value> - <type>int</type> - </param> - <param> - <name>Occupied Carriers</name> - <key>occupied_carriers</key> - <type>raw</type> - </param> - <param> - <name>Length Tag Key</name> - <key>len_tag_key</key> - <type>string</type> - </param> - <param> - <name>Packet Length Tag Key</name> - <key>packet_len_tag_key</key> - <value>""</value> - <type>string</type> - <hide>#if $packet_len_tag_key then 'none' else 'part'#</hide> - </param> - <param> - <name>Symbols skipped</name> - <key>symbols_skipped</key> - <value>0</value> - <type>int</type> - <hide>#if $symbols_skipped then 'none' else 'part'#</hide> - </param> - <param> - <name>Carrier Offset Key</name> - <key>carr_offset_key</key> - <value>""</value> - <type>string</type> - <hide>#if $carr_offset_key then 'none' else 'part'#</hide> - </param> - <param> - <name>Input is shifted</name> - <key>input_is_shifted</key> - <value>True</value> - <type>bool</type> - <hide>#if $input_is_shifted then 'part' else 'none'#</hide> - </param> - <sink> - <name>in</name> - <type>complex</type> - <vlen>$fft_len</vlen> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_ofdm_sync_sc_cfb.block.yml b/gr-digital/grc/digital_ofdm_sync_sc_cfb.block.yml new file mode 100644 index 0000000000..f1e2f3b13b --- /dev/null +++ b/gr-digital/grc/digital_ofdm_sync_sc_cfb.block.yml @@ -0,0 +1,35 @@ +id: digital_ofdm_sync_sc_cfb +label: Schmidl & Cox OFDM synch. + +parameters: +- id: fft_len + label: FFT length + dtype: int +- id: cp_len + label: Cyclic Prefix length + dtype: int +- id: use_even_carriers + label: Preamble Carriers + dtype: enum + default: 'False' + options: ['False', 'True'] + option_labels: [Odd, Even] + hide: part + +inputs: +- domain: stream + dtype: complex + +outputs: +- label: freq_offset + domain: stream + dtype: float +- label: detect + domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.ofdm_sync_sc_cfb(${fft_len}, ${cp_len}, ${use_even_carriers}) + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_sync_sc_cfb.xml b/gr-digital/grc/digital_ofdm_sync_sc_cfb.xml deleted file mode 100644 index 4238df761c..0000000000 --- a/gr-digital/grc/digital_ofdm_sync_sc_cfb.xml +++ /dev/null @@ -1,44 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>Schmidl & Cox OFDM synch.</name> - <key>digital_ofdm_sync_sc_cfb</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_sync_sc_cfb($fft_len, $cp_len, $use_even_carriers)</make> - <param> - <name>FFT length</name> - <key>fft_len</key> - <type>int</type> - </param> - <param> - <name>Cyclic Prefix length</name> - <key>cp_len</key> - <type>int</type> - </param> - <param> - <name>Preamble Carriers</name> - <key>use_even_carriers</key> - <value>False</value> - <type>enum</type> - <hide>part</hide> - <option> - <name>Odd</name> - <key>False</key> - </option> - <option> - <name>Even</name> - <key>True</key> - </option> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>freq_offset</name> - <type>float</type> - </source> - <source> - <name>detect</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_ofdm_tx.block.yml b/gr-digital/grc/digital_ofdm_tx.block.yml new file mode 100644 index 0000000000..c81da0d27f --- /dev/null +++ b/gr-digital/grc/digital_ofdm_tx.block.yml @@ -0,0 +1,100 @@ +id: digital_ofdm_tx +label: OFDM Transmitter + +parameters: +- id: fft_len + label: FFT Length + dtype: int + default: '64' +- id: cp_len + label: Cyclic Prefix Length + dtype: int + default: '16' +- id: packet_len_key + label: Length Tag Name + dtype: string + default: length +- id: occupied_carriers + label: Occupied Carriers + dtype: raw + default: () + hide: ${ 'none' if occupied_carriers else 'part' } +- id: pilot_carriers + label: Pilot Carriers + dtype: raw + default: () + hide: ${ 'none' if pilot_carriers else 'part' } +- id: pilot_symbols + label: Pilot Symbols + dtype: raw + default: () + hide: ${ 'none' if pilot_symbols else 'part' } +- id: sync_word1 + label: Sync Word 1 + dtype: raw + default: () + hide: ${ 'none' if sync_word1 else 'part' } +- id: sync_word2 + label: Sync Word 2 + dtype: raw + default: () + hide: ${ 'none' if sync_word2 else 'part' } +- id: header_mod + label: Header Modulation + dtype: enum + options: ['"BPSK"', '"QPSK"'] + option_labels: [BPSK, QPSK] + option_attributes: + bps: ['1', '2'] +- id: payload_mod + label: Payload Modulation + dtype: enum + options: ['"BPSK"', '"QPSK"', '"8-PSK"'] + option_labels: [BPSK, QPSK, 8-PSK] + option_attributes: + bps: ['1', '2', '3'] +- id: rolloff + label: Rolloff length (samples) + dtype: int + default: '0' +- id: scramble_bits + label: Scramble Bits + dtype: enum + default: 'False' + options: ['False', 'True'] + option_labels: ['No', 'Yes'] + hide: ${ ('part' if scramble_bits else 'none') } +- id: log + label: Log Debug Info + dtype: enum + default: 'False' + options: ['False', 'True'] + option_labels: ['No', 'Yes'] + hide: ${ ('none' if log else 'part') } + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +asserts: +- ${ fft_len > 0 } +- ${ cp_len > 0 } +- ${ cp_len < fft_len } +- ${ rolloff >= 0 } + +templates: + imports: from gnuradio import digital + make: "digital.ofdm_tx(\n\t fft_len=${fft_len}, cp_len=${cp_len},\n\t packet_length_tag_key=${packet_len_key},\n\ + \t % if occupied_carriers:\n\t occupied_carriers=${occupied_carriers},\n\ + \t % endif\n\t % if pilot_carriers:\n\t pilot_carriers=${pilot_carriers},\n\ + \t % endif\n\t % if pilot_carriers:\n\t pilot_symbols=${pilot_symbols},\n\ + \t % endif\n\t % if sync_word1:\n\t sync_word1=${sync_word1},\n\t % endif\n\ + \t % if sync_word2:\n\t sync_word2=${sync_word2},\n\t % endif\n\t bps_header=${header_mod.bps},\n\ + \t bps_payload=${payload_mod.bps},\n\t rolloff=${rolloff},\n\t debug_log=${log},\n\ + \t scramble_bits=${scramble_bits}\n\t )" + +file_format: 1 diff --git a/gr-digital/grc/digital_ofdm_tx.xml b/gr-digital/grc/digital_ofdm_tx.xml deleted file mode 100644 index bad0b2b13d..0000000000 --- a/gr-digital/grc/digital_ofdm_tx.xml +++ /dev/null @@ -1,196 +0,0 @@ -<?xml version="1.0"?> -<block> - <name>OFDM Transmitter</name> - <key>digital_ofdm_tx</key> - <import>from gnuradio import digital</import> - <make>digital.ofdm_tx( - fft_len=$fft_len, cp_len=$cp_len, - packet_length_tag_key=$packet_len_key, - #if $occupied_carriers() - occupied_carriers=$occupied_carriers, - #end if - #if $pilot_carriers() - pilot_carriers=$pilot_carriers, - #end if - #if $pilot_carriers() - pilot_symbols=$pilot_symbols, - #end if - #if $sync_word1() - sync_word1=$sync_word1, - #end if - #if $sync_word2() - sync_word2=$sync_word2, - #end if - bps_header=$header_mod.bps, - bps_payload=$payload_mod.bps, - rolloff=$rolloff, - debug_log=$log, - scramble_bits=$scramble_bits - )</make> - <param> - <name>FFT Length</name> - <key>fft_len</key> - <value>64</value> - <type>int</type> - </param> - <param> - <name>Cyclic Prefix Length</name> - <key>cp_len</key> - <value>16</value> - <type>int</type> - </param> - <param> - <name>Length Tag Name</name> - <key>packet_len_key</key> - <value>length</value> - <type>string</type> - </param> - <param> - <name>Occupied Carriers</name> - <key>occupied_carriers</key> - <value>()</value> - <type>raw</type> - <hide> - #if $occupied_carriers() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Pilot Carriers</name> - <key>pilot_carriers</key> - <value>()</value> - <type>raw</type> - <hide> - #if $pilot_carriers() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Pilot Symbols</name> - <key>pilot_symbols</key> - <value>()</value> - <type>raw</type> - <hide> - #if $pilot_symbols() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Sync Word 1</name> - <key>sync_word1</key> - <value>()</value> - <type>raw</type> - <hide> - #if $sync_word1() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Sync Word 2</name> - <key>sync_word2</key> - <value>()</value> - <type>raw</type> - <hide> - #if $sync_word2() - none - #else - part - #end if - </hide> - </param> - <param> - <name>Header Modulation</name> - <key>header_mod</key> - <type>enum</type> - <option> - <name>BPSK</name> - <key>"BPSK"</key> - <opt>bps:1</opt> - </option> - <option> - <name>QPSK</name> - <key>"QPSK"</key> - <opt>bps:2</opt> - </option> - </param> - <param> - <name>Payload Modulation</name> - <key>payload_mod</key> - <type>enum</type> - <option> - <name>BPSK</name> - <key>"BPSK"</key> - <opt>bps:1</opt> - </option> - <option> - <name>QPSK</name> - <key>"QPSK"</key> - <opt>bps:2</opt> - </option> - <option> - <name>8-PSK</name> - <key>"8-PSK"</key> - <opt>bps:3</opt> - </option> - </param> - <param> - <name>Rolloff length (samples)</name> - <key>rolloff</key> - <value>0</value> - <type>int</type> - </param> - <param> - <name>Scramble Bits</name> - <key>scramble_bits</key> - <value>False</value> - <type>enum</type> - <hide> #if $scramble_bits then 'part' else 'none'#</hide> - <option> - <name>No</name> - <key>False</key> - </option> - <option> - <name>Yes</name> - <key>True</key> - </option> - </param> - <param> - <name>Log Debug Info</name> - <key>log</key> - <value>False</value> - <type>enum</type> - <hide> #if $log then 'none' else 'part'#</hide> - <option> - <name>No</name> - <key>False</key> - </option> - <option> - <name>Yes</name> - <key>True</key> - </option> - </param> - <check>$fft_len > 0</check> - <check>$cp_len > 0</check> - <check>$cp_len < $fft_len</check> - <check>$rolloff >= 0</check> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_packet_headergenerator_bb.block.yml b/gr-digital/grc/digital_packet_headergenerator_bb.block.yml new file mode 100644 index 0000000000..d77530450f --- /dev/null +++ b/gr-digital/grc/digital_packet_headergenerator_bb.block.yml @@ -0,0 +1,27 @@ +id: digital_packet_headergenerator_bb +label: Packet Header Generator + +parameters: +- id: header_formatter + label: Formatter Object + dtype: raw +- id: len_tag_key + label: Length Tag Name + dtype: string + default: '"packet_len"' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.packet_headergenerator_bb(${header_formatter}, ${len_tag_key}) + callbacks: + - set_header_formatter(${header_formatter}) + +file_format: 1 diff --git a/gr-digital/grc/digital_packet_headergenerator_bb.xml b/gr-digital/grc/digital_packet_headergenerator_bb.xml deleted file mode 100644 index f069b52a01..0000000000 --- a/gr-digital/grc/digital_packet_headergenerator_bb.xml +++ /dev/null @@ -1,26 +0,0 @@ -<block> - <name>Packet Header Generator</name> - <key>digital_packet_headergenerator_bb</key> - <import>from gnuradio import digital</import> - <make>digital.packet_headergenerator_bb($header_formatter, $len_tag_key)</make> - <callback>set_header_formatter($header_formatter)</callback> - <param> - <name>Formatter Object</name> - <key>header_formatter</key> - <type>raw</type> - </param> - <param> - <name>Length Tag Name</name> - <key>len_tag_key</key> - <value>"packet_len"</value> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_packet_headergenerator_bb_default.block.yml b/gr-digital/grc/digital_packet_headergenerator_bb_default.block.yml new file mode 100644 index 0000000000..f9af16acac --- /dev/null +++ b/gr-digital/grc/digital_packet_headergenerator_bb_default.block.yml @@ -0,0 +1,25 @@ +id: digital_packet_headergenerator_bb_default +label: Packet Header Generator (Default) + +parameters: +- id: header_len + label: Header Length + dtype: int +- id: len_tag_key + label: Length Tag Name + dtype: string + default: '"packet_len"' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.packet_headergenerator_bb(${header_len}, ${len_tag_key}) + +file_format: 1 diff --git a/gr-digital/grc/digital_packet_headergenerator_bb_default.xml b/gr-digital/grc/digital_packet_headergenerator_bb_default.xml deleted file mode 100644 index e89c340bf1..0000000000 --- a/gr-digital/grc/digital_packet_headergenerator_bb_default.xml +++ /dev/null @@ -1,26 +0,0 @@ -<block> - <name>Packet Header Generator (Default)</name> - <key>digital_packet_headergenerator_bb_default</key> - <import>from gnuradio import digital</import> - <make>digital.packet_headergenerator_bb($header_len, $len_tag_key)</make> - <param> - <name>Header Length</name> - <key>header_len</key> - <type>int</type> - </param> - <param> - <name>Length Tag Name</name> - <key>len_tag_key</key> - <value>"packet_len"</value> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> - diff --git a/gr-digital/grc/digital_packet_headerparser_b.block.yml b/gr-digital/grc/digital_packet_headerparser_b.block.yml new file mode 100644 index 0000000000..f3a4741086 --- /dev/null +++ b/gr-digital/grc/digital_packet_headerparser_b.block.yml @@ -0,0 +1,21 @@ +id: digital_packet_headerparser_b +label: Packet Header Parser + +parameters: +- id: header_formatter + label: Formatter Object + dtype: raw + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: message + id: header_data + +templates: + imports: from gnuradio import digital + make: digital.packet_headerparser_b(${header_formatter}) + +file_format: 1 diff --git a/gr-digital/grc/digital_packet_headerparser_b.xml b/gr-digital/grc/digital_packet_headerparser_b.xml deleted file mode 100644 index bab6bd22ed..0000000000 --- a/gr-digital/grc/digital_packet_headerparser_b.xml +++ /dev/null @@ -1,19 +0,0 @@ -<block> - <name>Packet Header Parser</name> - <key>digital_packet_headerparser_b</key> - <import>from gnuradio import digital</import> - <make>digital.packet_headerparser_b($header_formatter)</make> - <param> - <name>Formatter Object</name> - <key>header_formatter</key> - <type>raw</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>header_data</name> - <type>message</type> - </source> -</block> diff --git a/gr-digital/grc/digital_packet_headerparser_b_default.block.yml b/gr-digital/grc/digital_packet_headerparser_b_default.block.yml new file mode 100644 index 0000000000..903a23cf32 --- /dev/null +++ b/gr-digital/grc/digital_packet_headerparser_b_default.block.yml @@ -0,0 +1,25 @@ +id: digital_packet_headerparser_b_default +label: Packet Header Parser (Default) + +parameters: +- id: header_len + label: Header Length + dtype: int +- id: len_tag_key + label: Length Tag Name + dtype: string + default: '"packet_len"' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: message + id: header_data + +templates: + imports: from gnuradio import digital + make: digital.packet_headerparser_b(${header_len}, ${len_tag_key}) + +file_format: 1 diff --git a/gr-digital/grc/digital_packet_headerparser_b_default.xml b/gr-digital/grc/digital_packet_headerparser_b_default.xml deleted file mode 100644 index 81a33ed774..0000000000 --- a/gr-digital/grc/digital_packet_headerparser_b_default.xml +++ /dev/null @@ -1,26 +0,0 @@ -<block> - <name>Packet Header Parser (Default)</name> - <key>digital_packet_headerparser_b_default</key> - <import>from gnuradio import digital</import> - <make>digital.packet_headerparser_b($header_len, $len_tag_key)</make> - <param> - <name>Header Length</name> - <key>header_len</key> - <type>int</type> - </param> - <param> - <name>Length Tag Name</name> - <key>len_tag_key</key> - <value>"packet_len"</value> - <type>string</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>header_data</name> - <type>message</type> - </source> -</block> - diff --git a/gr-digital/grc/digital_packet_sink.block.yml b/gr-digital/grc/digital_packet_sink.block.yml new file mode 100644 index 0000000000..a603226afc --- /dev/null +++ b/gr-digital/grc/digital_packet_sink.block.yml @@ -0,0 +1,24 @@ +id: digital_packet_sink +label: Packet Sink + +parameters: +- id: sync_vector + label: Sync Vector + dtype: int_vector +- id: target_queue + label: Target Message Queue + dtype: raw +- id: threshold + label: Threshold + dtype: int + default: '-1' + +inputs: +- domain: stream + dtype: float + +templates: + imports: from gnuradio import digital + make: digital.packet_sink(${sync_vector}, ${target_queue}, ${threshold}) + +file_format: 1 diff --git a/gr-digital/grc/digital_packet_sink.xml b/gr-digital/grc/digital_packet_sink.xml deleted file mode 100644 index 2c6653d7ec..0000000000 --- a/gr-digital/grc/digital_packet_sink.xml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Packet Sink -################################################### - --> -<block> - <name>Packet Sink</name> - <key>digital_packet_sink</key> - <import>from gnuradio import digital</import> - <make>digital.packet_sink($sync_vector, $target_queue, $threshold)</make> - <param> - <name>Sync Vector</name> - <key>sync_vector</key> - <type>int_vector</type> - </param> - <param> - <name>Target Message Queue</name> - <key>target_queue</key> - <type>raw</type> - </param> - <param> - <name>Threshold</name> - <key>threshold</key> - <value>-1</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>float</type> - </sink> -</block> diff --git a/gr-digital/grc/digital_pfb_clock_sync.block.yml b/gr-digital/grc/digital_pfb_clock_sync.block.yml new file mode 100644 index 0000000000..d9fbca8441 --- /dev/null +++ b/gr-digital/grc/digital_pfb_clock_sync.block.yml @@ -0,0 +1,69 @@ +id: digital_pfb_clock_sync_xxx +label: Polyphase Clock Sync + +parameters: +- id: type + label: Type + dtype: enum + options: [ccf, fff] + option_labels: [Complex->Complex (Real Taps), Float->Float (Real Taps)] + option_attributes: + input: [complex, float] + output: [complex, float] + taps: [real_vector, real_vector] + hide: part +- id: sps + label: Samples/Symbol + dtype: real +- id: loop_bw + label: Loop Bandwidth + dtype: real +- id: taps + label: Taps + dtype: real_vector +- id: filter_size + label: Filter Size + dtype: int + default: '32' +- id: init_phase + label: Initial Phase + dtype: real + default: '16' +- id: max_dev + label: Maximum Rate Deviation + dtype: real + default: '1.5' +- id: osps + label: Output SPS + dtype: int + default: '1' + +inputs: +- domain: stream + dtype: ${ type.input } + +outputs: +- domain: stream + dtype: ${ type.output } +- label: err + domain: stream + dtype: float + optional: true +- label: rate + domain: stream + dtype: float + optional: true +- label: phase + domain: stream + dtype: float + optional: true + +templates: + imports: from gnuradio import digital + make: digital.pfb_clock_sync_${type}(${sps}, ${loop_bw}, ${taps}, ${filter_size}, + ${init_phase}, ${max_dev}, ${osps}) + callbacks: + - update_taps(${taps}) + - set_loop_bandwidth(${loop_bw}) + +file_format: 1 diff --git a/gr-digital/grc/digital_pfb_clock_sync.xml b/gr-digital/grc/digital_pfb_clock_sync.xml deleted file mode 100644 index c54417f2cb..0000000000 --- a/gr-digital/grc/digital_pfb_clock_sync.xml +++ /dev/null @@ -1,97 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -## Polyphase Filter based Clock Sync -################################################### - --> -<block> - <name>Polyphase Clock Sync</name> - <key>digital_pfb_clock_sync_xxx</key> - <import>from gnuradio import digital</import> - <make>digital.pfb_clock_sync_$(type)($sps, $loop_bw, $taps, $filter_size, $init_phase, $max_dev, $osps)</make> - <callback>update_taps($taps)</callback> - <callback>set_loop_bandwidth($loop_bw)</callback> - - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex->Complex (Real Taps)</name> - <key>ccf</key> - <opt>input:complex</opt> - <opt>output:complex</opt> - <opt>taps:real_vector</opt> - </option> - <option> - <name>Float->Float (Real Taps)</name> - <key>fff</key> - <opt>input:float</opt> - <opt>output:float</opt> - <opt>taps:real_vector</opt> - </option> - </param> - - <param> - <name>Samples/Symbol</name> - <key>sps</key> - <type>real</type> - </param> - <param> - <name>Loop Bandwidth</name> - <key>loop_bw</key> - <type>real</type> - </param> - <param> - <name>Taps</name> - <key>taps</key> - <type>real_vector</type> - </param> - <param> - <name>Filter Size</name> - <key>filter_size</key> - <value>32</value> - <type>int</type> - </param> - <param> - <name>Initial Phase</name> - <key>init_phase</key> - <value>16</value> - <type>real</type> - </param> - <param> - <name>Maximum Rate Deviation</name> - <key>max_dev</key> - <value>1.5</value> - <type>real</type> - </param> - <param> - <name>Output SPS</name> - <key>osps</key> - <value>1</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>$type.input</type> - </sink> - <source> - <name>out</name> - <type>$type.output</type> - </source> - <source> - <name>err</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>rate</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>phase</name> - <type>float</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_pn_correlator_cc.block.yml b/gr-digital/grc/digital_pn_correlator_cc.block.yml new file mode 100644 index 0000000000..e92415433d --- /dev/null +++ b/gr-digital/grc/digital_pn_correlator_cc.block.yml @@ -0,0 +1,29 @@ +id: digital_pn_correlator_cc +label: PN Correlator + +parameters: +- id: degree + label: Degree + dtype: int +- id: mask + label: Mask + dtype: int + default: '0' +- id: seed + label: Seed + dtype: int + default: '1' + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: digital.pn_correlator_cc(${degree}, ${mask}, ${seed}) + +file_format: 1 diff --git a/gr-digital/grc/digital_pn_correlator_cc.xml b/gr-digital/grc/digital_pn_correlator_cc.xml deleted file mode 100644 index 999cea15d9..0000000000 --- a/gr-digital/grc/digital_pn_correlator_cc.xml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##PN Correlator -################################################### - --> -<block> - <name>PN Correlator</name> - <key>digital_pn_correlator_cc</key> - <import>from gnuradio import digital</import> - <make>digital.pn_correlator_cc($degree, $mask, $seed)</make> - <param> - <name>Degree</name> - <key>degree</key> - <type>int</type> - </param> - <param> - <name>Mask</name> - <key>mask</key> - <value>0</value> - <type>int</type> - </param> - <param> - <name>Seed</name> - <key>seed</key> - <value>1</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_probe_density_b.block.yml b/gr-digital/grc/digital_probe_density_b.block.yml new file mode 100644 index 0000000000..e329c6568c --- /dev/null +++ b/gr-digital/grc/digital_probe_density_b.block.yml @@ -0,0 +1,24 @@ +id: digital_probe_density_b +label: Probe Density + +parameters: +- id: alpha + label: Alpha + dtype: real + default: '1' +- id: probe_rate + label: Probe Rate + dtype: real + default: '10' + +inputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.probe_density_b(${alpha}) + callbacks: + - set_alpha(${alpha}) + +file_format: 1 diff --git a/gr-digital/grc/digital_probe_density_b.xml b/gr-digital/grc/digital_probe_density_b.xml deleted file mode 100644 index 8cf5dd8943..0000000000 --- a/gr-digital/grc/digital_probe_density_b.xml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Probe Density -################################################### - --> -<block> - <name>Probe Density</name> - <key>digital_probe_density_b</key> - <import>from gnuradio import digital</import> - <make>digital.probe_density_b($alpha)</make> - <callback>set_alpha($alpha)</callback> - <param> - <name>Alpha</name> - <key>alpha</key> - <value>1</value> - <type>real</type> - </param> - <param> - <name>Probe Rate</name> - <key>probe_rate</key> - <value>10</value> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> -</block> diff --git a/gr-digital/grc/digital_probe_mpsk_snr_est_c.block.yml b/gr-digital/grc/digital_probe_mpsk_snr_est_c.block.yml new file mode 100644 index 0000000000..68e29c1e76 --- /dev/null +++ b/gr-digital/grc/digital_probe_mpsk_snr_est_c.block.yml @@ -0,0 +1,42 @@ +id: digital_probe_mpsk_snr_est_c +label: MPSK SNR Estimator Probe + +parameters: +- id: type + label: Type + dtype: enum + options: ['0', '1', '2', '3'] + option_labels: [Simple, Skewness, 2nd and 4th Moment, SVR] +- id: msg_nsamples + label: Samples between SNR messages + dtype: int + default: '10000' +- id: alpha + label: Filter Alpha + dtype: real + default: '0.001' + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: message + id: snr + optional: true +- domain: message + id: signal + optional: true +- domain: message + id: noise + optional: true + +templates: + imports: from gnuradio import digital + make: digital.probe_mpsk_snr_est_c(${type}, ${msg_nsamples}, ${alpha}) + callbacks: + - set_type(${type}) + - set_msg_nsample(${msg_nsamples}) + - set_alpha(${alpha}) + +file_format: 1 diff --git a/gr-digital/grc/digital_probe_mpsk_snr_est_c.xml b/gr-digital/grc/digital_probe_mpsk_snr_est_c.xml deleted file mode 100644 index e49f7e7f56..0000000000 --- a/gr-digital/grc/digital_probe_mpsk_snr_est_c.xml +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##MPSK SNR Estimator -################################################### - --> -<block> - <name>MPSK SNR Estimator Probe</name> - <key>digital_probe_mpsk_snr_est_c</key> - <import>from gnuradio import digital</import> - <make>digital.probe_mpsk_snr_est_c($type, $msg_nsamples, $alpha)</make> - <callback>set_type($type)</callback> - <callback>set_msg_nsample($msg_nsamples)</callback> - <callback>set_alpha($alpha)</callback> - <param> - <name>Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Simple</name> - <key>0</key> - </option> - <option> - <name>Skewness</name> - <key>1</key> - </option> - <option> - <name>2nd and 4th Moment</name> - <key>2</key> - </option> - <option> - <name>SVR</name> - <key>3</key> - </option> - </param> - <param> - <name>Samples between SNR messages</name> - <key>msg_nsamples</key> - <value>10000</value> - <type>int</type> - </param> - <param> - <name>Filter Alpha</name> - <key>alpha</key> - <value>0.001</value> - <type>real</type> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>snr</name> - <type>message</type> - <optional>1</optional> - </source> - <source> - <name>signal</name> - <type>message</type> - <optional>1</optional> - </source> - <source> - <name>noise</name> - <type>message</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_protocol_formatter_async.block.yml b/gr-digital/grc/digital_protocol_formatter_async.block.yml new file mode 100644 index 0000000000..29975522ff --- /dev/null +++ b/gr-digital/grc/digital_protocol_formatter_async.block.yml @@ -0,0 +1,26 @@ +id: digital_protocol_formatter_async +label: Protocol Formatter (Async) + +parameters: +- id: format + label: Format Obj. + dtype: raw + +inputs: +- domain: message + id: in + optional: true + +outputs: +- domain: message + id: header + optional: true +- domain: message + id: payload + optional: true + +templates: + imports: from gnuradio import digital + make: digital.protocol_formatter_async(${format}) + +file_format: 1 diff --git a/gr-digital/grc/digital_protocol_formatter_async.xml b/gr-digital/grc/digital_protocol_formatter_async.xml deleted file mode 100644 index 52a67eca36..0000000000 --- a/gr-digital/grc/digital_protocol_formatter_async.xml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0"?> - -<block> - <name>Protocol Formatter (Async)</name> - <key>digital_protocol_formatter_async</key> - <import>from gnuradio import digital</import> - <make>digital.protocol_formatter_async($format)</make> - - <param> - <name>Format Obj.</name> - <key>format</key> - <type>raw</type> - </param> - - <sink> - <name>in</name> - <type>message</type> - <optional>1</optional> - </sink> - - <source> - <name>header</name> - <type>message</type> - <optional>1</optional> - </source> - - <source> - <name>payload</name> - <type>message</type> - <optional>1</optional> - </source> - -</block> diff --git a/gr-digital/grc/digital_protocol_formatter_bb.block.yml b/gr-digital/grc/digital_protocol_formatter_bb.block.yml new file mode 100644 index 0000000000..9141b52085 --- /dev/null +++ b/gr-digital/grc/digital_protocol_formatter_bb.block.yml @@ -0,0 +1,25 @@ +id: digital_protocol_formatter_bb +label: Protocol Formatter + +parameters: +- id: format + label: Format Obj. + dtype: raw +- id: len_tag_key + label: Length Tag Name + dtype: string + default: '"packet_len"' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.protocol_formatter_bb(${format}, ${len_tag_key}) + +file_format: 1 diff --git a/gr-digital/grc/digital_protocol_formatter_bb.xml b/gr-digital/grc/digital_protocol_formatter_bb.xml deleted file mode 100644 index b37a791fa8..0000000000 --- a/gr-digital/grc/digital_protocol_formatter_bb.xml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0"?> - -<block> - <name>Protocol Formatter</name> - <key>digital_protocol_formatter_bb</key> - <import>from gnuradio import digital</import> - <make>digital.protocol_formatter_bb($format, $len_tag_key)</make> - - <param> - <name>Format Obj.</name> - <key>format</key> - <type>raw</type> - </param> - - <param> - <name>Length Tag Name</name> - <key>len_tag_key</key> - <value>"packet_len"</value> - <type>string</type> - </param> - - <sink> - <name>in</name> - <type>byte</type> - </sink> - - <source> - <name>out</name> - <type>byte</type> - </source> - -</block> diff --git a/gr-digital/grc/digital_protocol_parser_b.block.yml b/gr-digital/grc/digital_protocol_parser_b.block.yml new file mode 100644 index 0000000000..b09e480863 --- /dev/null +++ b/gr-digital/grc/digital_protocol_parser_b.block.yml @@ -0,0 +1,22 @@ +id: digital_protocol_parser_b +label: Protocol Parser + +parameters: +- id: format + label: Format Obj. + dtype: raw + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: message + id: info + optional: true + +templates: + imports: from gnuradio import digital + make: digital.protocol_parser_b(${format}) + +file_format: 1 diff --git a/gr-digital/grc/digital_protocol_parser_b.xml b/gr-digital/grc/digital_protocol_parser_b.xml deleted file mode 100644 index 27fb15e05b..0000000000 --- a/gr-digital/grc/digital_protocol_parser_b.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> - -<block> - <name>Protocol Parser</name> - <key>digital_protocol_parser_b</key> - <import>from gnuradio import digital</import> - <make>digital.protocol_parser_b($format)</make> - - <param> - <name>Format Obj.</name> - <key>format</key> - <type>raw</type> - </param> - - <sink> - <name>in</name> - <type>byte</type> - </sink> - - <source> - <name>info</name> - <type>message</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/digital_psk_demod.block.yml b/gr-digital/grc/digital_psk_demod.block.yml new file mode 100644 index 0000000000..fbb5d60005 --- /dev/null +++ b/gr-digital/grc/digital_psk_demod.block.yml @@ -0,0 +1,79 @@ +id: digital_psk_demod +label: PSK Demod +category: '[Core]/Deprecated' + +parameters: +- id: constellation_points + label: Number of Constellation Points + dtype: int + default: '8' +- id: differential + label: Differential Encoding + dtype: bool + default: 'True' + options: ['True', 'False'] + option_labels: ['Yes', 'No'] +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: excess_bw + label: Excess BW + dtype: real + default: '0.35' +- id: freq_bw + label: Frequency BW + dtype: real + default: 6.28/100.0 +- id: timing_bw + label: Timing BW + dtype: real + default: 6.28/100.0 +- id: phase_bw + label: Phase BW + dtype: real + default: 6.28/100.0 +- id: mod_code + label: Gray Code + dtype: enum + options: ['"gray"', '"none"'] + option_labels: ['Yes', 'No'] +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: |- + digital.psk.psk_demod( + constellation_points=${constellation_points}, + differential=${differential}, + samples_per_symbol=${samples_per_symbol}, + excess_bw=${excess_bw}, + phase_bw=${phase_bw}, + timing_bw=${timing_bw}, + mod_code=${mod_code}, + verbose=${verbose}, + log=${log}, + ) + +file_format: 1 diff --git a/gr-digital/grc/digital_psk_demod.xml b/gr-digital/grc/digital_psk_demod.xml deleted file mode 100644 index 02beed01ac..0000000000 --- a/gr-digital/grc/digital_psk_demod.xml +++ /dev/null @@ -1,146 +0,0 @@ -<?xml version="1.0"?> - -<!-- - Copyright 2009,2010,2011 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -##PSK Demod -################################################### - --> -<block> - <name>PSK Demod</name> - <key>digital_psk_demod</key> - <category>[Core]/Deprecated</category> - <import>from gnuradio import digital</import> - <make>digital.psk.psk_demod( - constellation_points=$constellation_points, - differential=$differential, - samples_per_symbol=$samples_per_symbol, - excess_bw=$excess_bw, - phase_bw=$phase_bw, - timing_bw=$timing_bw, - mod_code=$mod_code, - verbose=$verbose, - log=$log, - )</make> - <param> - <name>Number of Constellation Points</name> - <key>constellation_points</key> - <value>8</value> - <type>int</type> - </param> - <param> - <name>Differential Encoding</name> - <key>differential</key> - <value>True</value> - <type>bool</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Excess BW</name> - <key>excess_bw</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Frequency BW</name> - <key>freq_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Timing BW</name> - <key>timing_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Phase BW</name> - <key>phase_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Gray Code</name> - <key>mod_code</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>"gray"</key> - </option> - <option> - <name>No</name> - <key>"none"</key> - </option> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_psk_mod.block.yml b/gr-digital/grc/digital_psk_mod.block.yml new file mode 100644 index 0000000000..9145718fa7 --- /dev/null +++ b/gr-digital/grc/digital_psk_mod.block.yml @@ -0,0 +1,65 @@ +id: digital_psk_mod +label: PSK Mod +category: '[Core]/Deprecated' + +parameters: +- id: constellation_points + label: Number of Constellation Points + dtype: int + default: '8' +- id: mod_code + label: Gray Code + dtype: enum + options: ['"gray"', '"none"'] + option_labels: ['Yes', 'No'] +- id: differential + label: Differential Encoding + dtype: bool + default: 'True' + options: ['True', 'False'] + option_labels: ['Yes', 'No'] +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: excess_bw + label: Excess BW + dtype: real + default: '0.35' +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: |- + digital.psk.psk_mod( + constellation_points=${constellation_points}, + mod_code=${mod_code}, + differential=${differential}, + samples_per_symbol=${samples_per_symbol}, + excess_bw=${excess_bw}, + verbose=${verbose}, + log=${log}, + ) + +file_format: 1 diff --git a/gr-digital/grc/digital_psk_mod.xml b/gr-digital/grc/digital_psk_mod.xml deleted file mode 100644 index 43e60562ee..0000000000 --- a/gr-digital/grc/digital_psk_mod.xml +++ /dev/null @@ -1,126 +0,0 @@ -<?xml version="1.0"?> - -<!-- - Copyright 2009,2010,2011 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -##PSK Mod -################################################### - --> -<block> - <name>PSK Mod</name> - <key>digital_psk_mod</key> - <category>[Core]/Deprecated</category> - <import>from gnuradio import digital</import> - <make>digital.psk.psk_mod( - constellation_points=$constellation_points, - mod_code=$mod_code, - differential=$differential, - samples_per_symbol=$samples_per_symbol, - excess_bw=$excess_bw, - verbose=$verbose, - log=$log, - )</make> - <param> - <name>Number of Constellation Points</name> - <key>constellation_points</key> - <value>8</value> - <type>int</type> - </param> - <param> - <name>Gray Code</name> - <key>mod_code</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>"gray"</key> - </option> - <option> - <name>No</name> - <key>"none"</key> - </option> - </param> - <param> - <name>Differential Encoding</name> - <key>differential</key> - <value>True</value> - <type>bool</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Excess BW</name> - <key>excess_bw</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_qam_demod.block.yml b/gr-digital/grc/digital_qam_demod.block.yml new file mode 100644 index 0000000000..5ed8f4dd1d --- /dev/null +++ b/gr-digital/grc/digital_qam_demod.block.yml @@ -0,0 +1,80 @@ +id: digital_qam_demod +label: QAM Demod +category: '[Core]/Deprecated' + +parameters: +- id: constellation_points + label: Number of Constellation Points + dtype: int + default: '16' +- id: differential + label: Differential Encoding + dtype: bool + default: 'True' + options: ['True', 'False'] + option_labels: ['Yes', 'No'] +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: excess_bw + label: Excess BW + dtype: real + default: '0.35' +- id: freq_bw + label: Frequency BW + dtype: real + default: 6.28/100.0 +- id: timing_bw + label: Timing BW + dtype: real + default: 6.28/100.0 +- id: phase_bw + label: Phase BW + dtype: real + default: 6.28/100.0 +- id: mod_code + label: Gray Code + dtype: enum + options: ['"gray"', '"none"'] + option_labels: ['Yes', 'No'] +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: complex + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: |- + digital.qam.qam_demod( + constellation_points=${constellation_points}, + differential=${differential}, + samples_per_symbol=${samples_per_symbol}, + excess_bw=${excess_bw}, + freq_bw=${freq_bw}, + timing_bw=${timing_bw}, + phase_bw=${phase_bw}, + mod_code=${mod_code}, + verbose=${verbose}, + log=${log}, + ) + +file_format: 1 diff --git a/gr-digital/grc/digital_qam_demod.xml b/gr-digital/grc/digital_qam_demod.xml deleted file mode 100644 index c9a6c6aa4b..0000000000 --- a/gr-digital/grc/digital_qam_demod.xml +++ /dev/null @@ -1,147 +0,0 @@ -<?xml version="1.0"?> - -<!-- - Copyright 2009,2010,2011 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -##QAM Demod -################################################### - --> -<block> - <name>QAM Demod</name> - <key>digital_qam_demod</key> - <category>[Core]/Deprecated</category> - <import>from gnuradio import digital</import> - <make>digital.qam.qam_demod( - constellation_points=$constellation_points, - differential=$differential, - samples_per_symbol=$samples_per_symbol, - excess_bw=$excess_bw, - freq_bw=$freq_bw, - timing_bw=$timing_bw, - phase_bw=$phase_bw, - mod_code=$mod_code, - verbose=$verbose, - log=$log, - )</make> - <param> - <name>Number of Constellation Points</name> - <key>constellation_points</key> - <value>16</value> - <type>int</type> - </param> - <param> - <name>Differential Encoding</name> - <key>differential</key> - <value>True</value> - <type>bool</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Excess BW</name> - <key>excess_bw</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Frequency BW</name> - <key>freq_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Timing BW</name> - <key>timing_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Phase BW</name> - <key>phase_bw</key> - <value>6.28/100.0</value> - <type>real</type> - </param> - <param> - <name>Gray Code</name> - <key>mod_code</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>"gray"</key> - </option> - <option> - <name>No</name> - <key>"none"</key> - </option> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>complex</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_qam_mod.block.yml b/gr-digital/grc/digital_qam_mod.block.yml new file mode 100644 index 0000000000..6cfcc2966e --- /dev/null +++ b/gr-digital/grc/digital_qam_mod.block.yml @@ -0,0 +1,65 @@ +id: digital_qam_mod +label: QAM Mod +category: '[Core]/Deprecated' + +parameters: +- id: constellation_points + label: Number of Constellation Points + dtype: int + default: '16' +- id: mod_code + label: Gray Code + dtype: enum + options: ['"gray"', '"none"'] + option_labels: ['Yes', 'No'] +- id: differential + label: Differential Encoding + dtype: bool + default: 'True' + options: ['True', 'False'] + option_labels: ['Yes', 'No'] +- id: samples_per_symbol + label: Samples/Symbol + dtype: int + default: '2' +- id: excess_bw + label: Excess BW + dtype: real + default: '0.35' +- id: verbose + label: Verbose + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(verbose) == 'False' else 'none') } +- id: log + label: Log + dtype: bool + default: 'False' + options: ['True', 'False'] + option_labels: ['On', 'Off'] + hide: ${ ('part' if str(log) == 'False' else 'none') } + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: complex + +templates: + imports: from gnuradio import digital + make: |- + digital.qam.qam_mod( + constellation_points=${constellation_points}, + mod_code=${mod_code}, + differential=${differential}, + samples_per_symbol=${samples_per_symbol}, + excess_bw=${excess_bw}, + verbose=${verbose}, + log=${log}, + ) + +file_format: 1 diff --git a/gr-digital/grc/digital_qam_mod.xml b/gr-digital/grc/digital_qam_mod.xml deleted file mode 100644 index 5c3d5139d2..0000000000 --- a/gr-digital/grc/digital_qam_mod.xml +++ /dev/null @@ -1,126 +0,0 @@ -<?xml version="1.0"?> - -<!-- - Copyright 2009,2010,2011 Free Software Foundation, Inc. - - This file is part of GNU Radio - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. ---> - -<!-- -################################################### -##QAM Mod -################################################### - --> -<block> - <name>QAM Mod</name> - <key>digital_qam_mod</key> - <category>[Core]/Deprecated</category> - <import>from gnuradio import digital</import> - <make>digital.qam.qam_mod( - constellation_points=$constellation_points, - mod_code=$mod_code, - differential=$differential, - samples_per_symbol=$samples_per_symbol, - excess_bw=$excess_bw, - verbose=$verbose, - log=$log, - )</make> - <param> - <name>Number of Constellation Points</name> - <key>constellation_points</key> - <value>16</value> - <type>int</type> - </param> - <param> - <name>Gray Code</name> - <key>mod_code</key> - <type>enum</type> - <option> - <name>Yes</name> - <key>"gray"</key> - </option> - <option> - <name>No</name> - <key>"none"</key> - </option> - </param> - <param> - <name>Differential Encoding</name> - <key>differential</key> - <value>True</value> - <type>bool</type> - <option> - <name>Yes</name> - <key>True</key> - </option> - <option> - <name>No</name> - <key>False</key> - </option> - </param> - <param> - <name>Samples/Symbol</name> - <key>samples_per_symbol</key> - <value>2</value> - <type>int</type> - </param> - <param> - <name>Excess BW</name> - <key>excess_bw</key> - <value>0.35</value> - <type>real</type> - </param> - <param> - <name>Verbose</name> - <key>verbose</key> - <value>False</value> - <type>bool</type> - <hide>#if str($verbose) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <param> - <name>Log</name> - <key>log</key> - <value>False</value> - <type>bool</type> - <hide>#if str($log) == 'False' then 'part' else 'none'#</hide> - <option> - <name>On</name> - <key>True</key> - </option> - <option> - <name>Off</name> - <key>False</key> - </option> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>complex</type> - </source> -</block> diff --git a/gr-digital/grc/digital_scrambler_bb.block.yml b/gr-digital/grc/digital_scrambler_bb.block.yml new file mode 100644 index 0000000000..fb8b3cca1f --- /dev/null +++ b/gr-digital/grc/digital_scrambler_bb.block.yml @@ -0,0 +1,30 @@ +id: digital_scrambler_bb +label: Scrambler + +parameters: +- id: mask + label: Mask + dtype: hex + default: '0x8A' +- id: seed + label: Seed + dtype: hex + default: '0x7F' +- id: len + label: Length + dtype: int + default: '7' + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.scrambler_bb(${mask}, ${seed}, ${len}) + +file_format: 1 diff --git a/gr-digital/grc/digital_scrambler_bb.xml b/gr-digital/grc/digital_scrambler_bb.xml deleted file mode 100644 index 9c40b49f64..0000000000 --- a/gr-digital/grc/digital_scrambler_bb.xml +++ /dev/null @@ -1,38 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Descrambler -################################################### - --> -<block> - <name>Scrambler</name> - <key>digital_scrambler_bb</key> - <import>from gnuradio import digital</import> - <make>digital.scrambler_bb($mask, $seed, $len)</make> - <param> - <name>Mask</name> - <key>mask</key> - <value>0x8A</value> - <type>hex</type> - </param> - <param> - <name>Seed</name> - <key>seed</key> - <value>0x7F</value> - <type>hex</type> - </param> - <param> - <name>Length</name> - <key>len</key> - <value>7</value> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_simple_correlator.block.yml b/gr-digital/grc/digital_simple_correlator.block.yml new file mode 100644 index 0000000000..aae6139525 --- /dev/null +++ b/gr-digital/grc/digital_simple_correlator.block.yml @@ -0,0 +1,21 @@ +id: digital_simple_correlator +label: Simple Correlator + +parameters: +- id: payload_bytesize + label: Payload Byte Size + dtype: int + +inputs: +- domain: stream + dtype: float + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.simple_correlator(${payload_bytesize}) + +file_format: 1 diff --git a/gr-digital/grc/digital_simple_correlator.xml b/gr-digital/grc/digital_simple_correlator.xml deleted file mode 100644 index 3b70e59b12..0000000000 --- a/gr-digital/grc/digital_simple_correlator.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Simple Correlator -################################################### - --> -<block> - <name>Simple Correlator</name> - <key>digital_simple_correlator</key> - <import>from gnuradio import digital</import> - <make>digital.simple_correlator($payload_bytesize)</make> - <param> - <name>Payload Byte Size</name> - <key>payload_bytesize</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>float</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_simple_framer.block.yml b/gr-digital/grc/digital_simple_framer.block.yml new file mode 100644 index 0000000000..f711948981 --- /dev/null +++ b/gr-digital/grc/digital_simple_framer.block.yml @@ -0,0 +1,21 @@ +id: digital_simple_framer +label: Simple Framer + +parameters: +- id: payload_bytesize + label: Payload Byte Size + dtype: int + +inputs: +- domain: stream + dtype: byte + +outputs: +- domain: stream + dtype: byte + +templates: + imports: from gnuradio import digital + make: digital.simple_framer(${payload_bytesize}) + +file_format: 1 diff --git a/gr-digital/grc/digital_simple_framer.xml b/gr-digital/grc/digital_simple_framer.xml deleted file mode 100644 index 2d57222f3b..0000000000 --- a/gr-digital/grc/digital_simple_framer.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -##Simple Framer -################################################### - --> -<block> - <name>Simple Framer</name> - <key>digital_simple_framer</key> - <import>from gnuradio import digital</import> - <make>digital.simple_framer($payload_bytesize)</make> - <param> - <name>Payload Byte Size</name> - <key>payload_bytesize</key> - <type>int</type> - </param> - <sink> - <name>in</name> - <type>byte</type> - </sink> - <source> - <name>out</name> - <type>byte</type> - </source> -</block> diff --git a/gr-digital/grc/digital_symbol_sync_xx.block.yml b/gr-digital/grc/digital_symbol_sync_xx.block.yml new file mode 100644 index 0000000000..ec63825127 --- /dev/null +++ b/gr-digital/grc/digital_symbol_sync_xx.block.yml @@ -0,0 +1,108 @@ +id: digital_symbol_sync_xx +label: Symbol Sync +category: '[Core]/Synchronizers' + +parameters: +- id: type + label: I/O Type + dtype: enum + options: [cc, ff] + option_labels: [Complex, Float] + option_attributes: + input: [complex, float] + output: [complex, float] + hide: part +- id: ted_type + label: Timing Error Detector + dtype: enum + options: [digital.TED_MUELLER_AND_MULLER, digital.TED_MOD_MUELLER_AND_MULLER, + digital.TED_ZERO_CROSSING, digital.TED_GARDNER, digital.TED_EARLY_LATE, digital.TED_DANDREA_AND_MENGALI_GEN_MSK, + digital.TED_MENGALI_AND_DANDREA_GMSK, digital.TED_SIGNAL_TIMES_SLOPE_ML, digital.TED_SIGNUM_TIMES_SLOPE_ML] + option_labels: ["Mueller and M\xFCller", "Modified Mueller and M\xFCller", Zero + Crossing, Gardner, Early-Late, D'Andrea and Mengali Gen MSK, Mengali and + D'Andrea GMSK, 'y[n]y''[n] Maximum Likelyhood', 'sgn(y[n])y''[n] Maximum + Likelyhood'] + option_attributes: + hide_constellation: [part, part, part, all, all, all, all, all, all] +- id: constellation + label: TED Slicer Constellation + dtype: raw + default: digital.constellation_bpsk().base() + hide: ${ ted_type.hide_constellation } +- id: sps + label: Samples per Symbol + dtype: real + default: sps +- id: ted_gain + label: Expected TED Gain + dtype: real + default: '1.0' +- id: loop_bw + label: Loop Bandwidth + dtype: real + default: '0.045' +- id: damping + label: Damping Factor + dtype: real + default: '1.0' +- id: max_dev + label: Maximum Deviation + dtype: real + default: '1.5' +- id: osps + label: Output Samples/Symbol + dtype: int + default: '1' +- id: resamp_type + label: Interpolating Resampler + dtype: enum + options: [digital.IR_MMSE_8TAP, digital.IR_PFB_NO_MF, digital.IR_PFB_MF] + option_labels: ['MMSE, 8 tap FIR', 'Polyphase Filterbank, MMSE', 'Polyphase Filterbank, + MF'] + option_attributes: + hide_nfilters: [all, '', ''] + hide_pfb_mf_taps: [all, all, ''] +- id: nfilters + label: Filterbank Arms + dtype: int + default: '128' + hide: ${ resamp_type.hide_nfilters } +- id: pfb_mf_taps + label: PFB MF Taps + dtype: real_vector + default: '[]' + hide: ${ resamp_type.hide_pfb_mf_taps } + +inputs: +- domain: stream + dtype: ${ type.input } + +outputs: +- domain: stream + dtype: ${ type.output } +- label: error + domain: stream + dtype: float + optional: true +- label: T_inst + domain: stream + dtype: float + optional: true +- label: T_avg + domain: stream + dtype: float + optional: true + +templates: + imports: |- + from gnuradio import digital + from gnuradio import filter + make: digital.symbol_sync_${type}(${ted_type}, ${sps}, ${loop_bw}, ${damping}, + ${ted_gain}, ${max_dev}, ${osps}, ${constellation}, ${resamp_type}, ${nfilters}, + ${pfb_mf_taps}) + callbacks: + - set_loop_bandwidth(${loop_bw}) + - set_damping_factor(${damping}) + - set_ted_gain(${ted_gain}) + +file_format: 1 diff --git a/gr-digital/grc/digital_symbol_sync_xx.xml b/gr-digital/grc/digital_symbol_sync_xx.xml deleted file mode 100644 index ffd2f5daff..0000000000 --- a/gr-digital/grc/digital_symbol_sync_xx.xml +++ /dev/null @@ -1,207 +0,0 @@ -<?xml version="1.0"?> -<!-- - Copyright (C) 2016-2017 Free Software Foundation, Inc. - - This file is part of GNU Radio. - - GNU Radio is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3, or (at your option) - any later version. - - GNU Radio is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Radio; see the file COPYING. If not, write to - the Free Software Foundation, Inc., 51 Franklin Street, - Boston, MA 02110-1301, USA. - --> - -<block> - <name>Symbol Sync</name> - <key>digital_symbol_sync_xx</key> - <category>[Core]/Synchronizers</category> - <import>from gnuradio import digital</import> - <import>from gnuradio import filter</import> - <make>digital.symbol_sync_$(type)($ted_type, $sps, $loop_bw, $damping, $ted_gain, $max_dev, $osps, $constellation, $resamp_type, $nfilters, $pfb_mf_taps)</make> - - <callback>set_loop_bandwidth($loop_bw)</callback> - <callback>set_damping_factor($damping)</callback> - <callback>set_ted_gain($ted_gain)</callback> - - <param> - <name>I/O Type</name> - <key>type</key> - <type>enum</type> - <option> - <name>Complex</name> - <key>cc</key> - <opt>input:complex</opt> - <opt>output:complex</opt> - </option> - <option> - <name>Float</name> - <key>ff</key> - <opt>input:float</opt> - <opt>output:float</opt> - </option> - </param> - <param> - <name>Timing Error Detector</name> - <key>ted_type</key> - <type>enum</type> - <option> - <name>Mueller and Müller</name> - <key>digital.TED_MUELLER_AND_MULLER</key> - <opt>hide_constellation:part</opt> - </option> - <option> - <name>Modified Mueller and Müller</name> - <key>digital.TED_MOD_MUELLER_AND_MULLER</key> - <opt>hide_constellation:part</opt> - </option> - <option> - <name>Zero Crossing</name> - <key>digital.TED_ZERO_CROSSING</key> - <opt>hide_constellation:part</opt> - </option> - <option> - <name>Gardner</name> - <key>digital.TED_GARDNER</key> - <opt>hide_constellation:all</opt> - </option> - <option> - <name>Early-Late</name> - <key>digital.TED_EARLY_LATE</key> - <opt>hide_constellation:all</opt> - </option> - <option> - <name>D'Andrea and Mengali Gen MSK</name> - <key>digital.TED_DANDREA_AND_MENGALI_GEN_MSK</key> - <opt>hide_constellation:all</opt> - </option> - <option> - <name>Mengali and D'Andrea GMSK</name> - <key>digital.TED_MENGALI_AND_DANDREA_GMSK</key> - <opt>hide_constellation:all</opt> - </option> - <option> - <name>y[n]y'[n] Maximum Likelyhood</name> - <key>digital.TED_SIGNAL_TIMES_SLOPE_ML</key> - <opt>hide_constellation:all</opt> - </option> - <option> - <name>sgn(y[n])y'[n] Maximum Likelyhood</name> - <key>digital.TED_SIGNUM_TIMES_SLOPE_ML</key> - <opt>hide_constellation:all</opt> - </option> - </param> - <param> - <name>TED Slicer Constellation</name> - <key>constellation</key> - <value>digital.constellation_bpsk().base()</value> - <type>raw</type> - <hide>$ted_type.hide_constellation</hide> - </param> - <param> - <name>Samples per Symbol</name> - <key>sps</key> - <value>sps</value> - <type>real</type> - </param> - <param> - <name>Expected TED Gain</name> - <key>ted_gain</key> - <value>1.0</value> - <type>real</type> - </param> - <param> - <name>Loop Bandwidth</name> - <key>loop_bw</key> - <value>0.045</value> - <type>real</type> - </param> - <param> - <name>Damping Factor</name> - <key>damping</key> - <value>1.0</value> - <type>real</type> - </param> - <param> - <name>Maximum Deviation</name> - <key>max_dev</key> - <value>1.5</value> - <type>real</type> - </param> - <param> - <name>Output Samples/Symbol</name> - <key>osps</key> - <value>1</value> - <type>int</type> - </param> - <param> - <name>Interpolating Resampler</name> - <key>resamp_type</key> - <type>enum</type> - <option> - <name>MMSE, 8 tap FIR</name> - <key>digital.IR_MMSE_8TAP</key> - <opt>hide_nfilters:all</opt> - <opt>hide_pfb_mf_taps:all</opt> - </option> - <option> - <name>Polyphase Filterbank, MMSE</name> - <key>digital.IR_PFB_NO_MF</key> - <opt>hide_nfilters:</opt> - <opt>hide_pfb_mf_taps:all</opt> - </option> - <option> - <name>Polyphase Filterbank, MF</name> - <key>digital.IR_PFB_MF</key> - <opt>hide_nfilters:</opt> - <opt>hide_pfb_mf_taps:</opt> - </option> - </param> - <param> - <name>Filterbank Arms</name> - <key>nfilters</key> - <value>128</value> - <type>int</type> - <hide>$resamp_type.hide_nfilters</hide> - </param> - <param> - <name>PFB MF Taps</name> - <key>pfb_mf_taps</key> - <value>[]</value> - <type>real_vector</type> - <hide>$resamp_type.hide_pfb_mf_taps</hide> - </param> - - <sink> - <name>in</name> - <type>$type.input</type> - </sink> - - <source> - <name>out</name> - <type>$type.output</type> - </source> - <source> - <name>error</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>T_inst</name> - <type>float</type> - <optional>1</optional> - </source> - <source> - <name>T_avg</name> - <type>float</type> - <optional>1</optional> - </source> -</block> diff --git a/gr-digital/grc/variable_header_format_default.block.yml b/gr-digital/grc/variable_header_format_default.block.yml new file mode 100644 index 0000000000..d326eb2e86 --- /dev/null +++ b/gr-digital/grc/variable_header_format_default.block.yml @@ -0,0 +1,25 @@ +id: variable_header_format_default +label: Default Header Format Obj. + +parameters: +- id: access_code + label: Access Code + dtype: string + default: '0' +- id: threshold + label: Threshold + dtype: int + default: '0' +- id: bps + label: Payload Bits per Symbol + dtype: int + default: '1' +value: ${ digital.header_format_default(access_code, threshold, bps) } + +templates: + imports: from gnuradio import digital + var_make: "\n% if int(access_code)==0 #:\nself.${id} = ${id} = digital.header_format_default(digital.packet_utils.default_access_code,\ + \ ${threshold}, ${bps})\n% else:\nself.${id} = ${id} = digital.header_format_default(${access_code},\ + \ ${threshold}, ${bps})\n% endif\n " + +file_format: 1 diff --git a/gr-digital/grc/variable_header_format_default.xml b/gr-digital/grc/variable_header_format_default.xml deleted file mode 100644 index 88727600ed..0000000000 --- a/gr-digital/grc/variable_header_format_default.xml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0"?> -<!-- -################################################### -# header_format_default object -################################################### - --> -<block> - <name>Default Header Format Obj.</name> - <key>variable_header_format_default</key> - <import>from gnuradio import digital</import> - <var_make> -#if int($access_code())==0 # -self.$(id) = $(id) = digital.header_format_default(digital.packet_utils.default_access_code, $threshold, $bps) -#else -self.$(id) = $(id) = digital.header_format_default($access_code, $threshold, $bps) -#end if - </var_make> - <var_value>digital.header_format_default($access_code, $threshold, $bps)</var_value> - <make></make> - - <param> - <name>Access Code</name> - <key>access_code</key> - <value>0</value> - <type>string</type> - </param> - - <param> - <name>Threshold</name> - <key>threshold</key> - <value>0</value> - <type>int</type> - </param> - - <param> - <name>Payload Bits per Symbol</name> - <key>bps</key> - <value>1</value> - <type>int</type> - </param> - -</block> |