Redesign of the OOT module block structure

This commit is contained in:
Manolis Surligas 2016-12-04 00:40:55 +02:00
parent 32b853134a
commit d662760adf
36 changed files with 119 additions and 113 deletions

View File

@ -119,10 +119,8 @@ find_package(Doxygen)
########################################################################
# Include or not into the module blocks for debugging
########################################################################
if(NOT INCLUDE_DEBUG_BLOCKS)
set(INCLUDE_DEBUG_BLOCKS ON CACHE BOOL
"Disable blocks that are used for debugging purposes")
endif()
option(INCLUDE_DEBUG_BLOCKS "Enable/Disable blocks that are used for debugging purposes" ON)
########################################################################
# Find gr-satnogs external build dependencies

View File

@ -19,9 +19,10 @@
include(GrPython)
add_subdirectory(flowgraphs/satellites)
GR_PYTHON_INSTALL(
PROGRAMS
flowgraphs/upsat_transceiver_cli.py
flowgraphs/satnogs_fm_demod.py
flowgraphs/satnogs_generic_iq_receiver.py
DESTINATION bin

View File

@ -0,0 +1,26 @@
# 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.
include(GrPython)
GR_PYTHON_INSTALL(
PROGRAMS
upsat_transceiver_cli.py
DESTINATION bin
)

View File

@ -15,16 +15,19 @@
# 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.
# Boston, MA
add_subdirectory(satellites)
list(APPEND debug_blocks
satnogs_morse_debug_source.xml
satnogs_debug_msg_source.xml
satnogs_debug_msg_source_raw.xml
satnogs_leo_channel.xml
satnogs_morse_debug_source.xml
satnogs_debug_msg_source.xml
satnogs_debug_msg_source_raw.xml
satnogs_leo_channel.xml
)
list(APPEND enabled_blocks
satnogs_block_tree.xml
satnogs_cw_matched_filter_ff.xml
satnogs_morse_decoder.xml
satnogs_multi_format_msg_sink.xml
@ -32,17 +35,11 @@ list(APPEND enabled_blocks
satnogs_sine_matched_filter_ff.xml
satnogs_udp_msg_source.xml
satnogs_tcp_rigctl_msg_source.xml
satnogs_frame_encoder.xml
satnogs_doppler_correction_cc.xml
satnogs_upsat_fsk_frame_acquisition.xml
satnogs_upsat_fsk_frame_encoder.xml
satnogs_whitening.xml
satnogs_udp_msg_sink.xml
satnogs_upsat_transmitter.xml
satnogs_coarse_doppler_correction_cc.xml
satnogs_ax25_encoder_mb.xml
satnogs_ax25_decoder_bm.xml
satnogs_qb50_deframer.xml
)
if(${INCLUDE_DEBUG_BLOCKS})

View File

@ -0,0 +1,21 @@
# 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.
add_subdirectory(upsat)

View File

@ -0,0 +1,30 @@
# 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.
list(APPEND blocks
satnogs_qb50_deframer.xml
satnogs_upsat_fsk_frame_acquisition.xml
satnogs_upsat_fsk_frame_encoder.xml
satnogs_upsat_transmitter.xml
)
install(FILES
${blocks}
DESTINATION share/gnuradio/grc/blocks
)

View File

@ -2,7 +2,6 @@
<block>
<name>QB50 AX.25 Deframer</name>
<key>satnogs_qb50_deframer</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.qb50_deframer($wod_ssid)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>UPSAT FSK Frame Acquisition</name>
<key>satnogs_upsat_fsk_frame_acquisition</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.upsat_fsk_frame_acquisition($preamble, $sync_word, $whitening, $manchester, $check_crc, $ax_25)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>UPSAT FSK Frame Encoder</name>
<key>satnogs_upsat_fsk_frame_encoder</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.upsat_fsk_frame_encoder($preamble, $sync_word, $append_crc, $whitening, $manchester, $msb_first, $ax_25, $src_addr, $src_ssid, $dest_addr, $dest_ssid, $settling_samples)</make>

View File

@ -1,7 +1,6 @@
<block>
<name>Satnogs UPSat Transmitter</name>
<key>satnogs_upsat_transmitter</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.satnogs_upsat_transmitter(frame_preamble=$frame_preamble,

View File

@ -2,7 +2,6 @@
<block>
<name>AX.25 Decoder</name>
<key>satnogs_ax25_decoder_bm</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.ax25_decoder_bm($addr, $ssid, $promisc, $descrambling, $max_frame_len, $n_sync_flags)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>AX.25 Encoder</name>
<key>satnogs_ax25_encoder_mb</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.ax25_encoder_mb($dest_addr, $dest_ssid, $src_addr, $src_ssid, $preamble_len, $postamble_len, $scramble)</make>

View File

@ -0,0 +1,25 @@
<cat>
<name>[SatNOGS]</name>
<cat>
<name>Satellites</name>
<cat>
<name>UPSat</name>
<block>satnogs_upsat_fsk_frame_acquisition</block>
<block>satnogs_upsat_fsk_frame_encoder</block>
<block>satnogs_upsat_transmitter</block>
<block>satnogs_qb50_deframer</block>
</cat>
</cat>
<block>satnogs_cw_matched_filter_ff</block>
<block>satnogs_morse_decoder</block>
<block>satnogs_multi_format_msg_sink</block>
<block>satnogs_cw_to_symbol</block>
<block>satnogs_sine_matched_filter_ff</block>
<block>satnogs_udp_msg_source</block>
<block>satnogs_tcp_rigctl_msg_source</block>
<block>satnogs_doppler_correction_cc</block>
<block>satnogs_udp_msg_sink</block>
<block>satnogs_coarse_doppler_correction_cc</block>
<block>satnogs_ax25_encoder_mb</block>
<block>satnogs_ax25_decoder_bm</block>
</cat>

View File

@ -2,7 +2,6 @@
<block>
<name>Coarse Doppler Correction</name>
<key>satnogs_coarse_doppler_correction_cc</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.coarse_doppler_correction_cc($target_freq, $sampling_rate)</make>
<callback>set_new_freq_locked($target_freq)</callback>

View File

@ -2,7 +2,6 @@
<block>
<name>CW Matched Filter</name>
<key>satnogs_cw_matched_filter_ff</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.cw_matched_filter_ff($sampling_rate, $carrier_freq, $wpm, $energy)</make>
<callback>set_new_freq_locked($carrier_freq)</callback>

View File

@ -2,7 +2,6 @@
<block>
<name>CW to Symbols</name>
<key>satnogs_cw_to_symbol</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.cw_to_symbol($sampling_rate, $threshold, $conf_level, $wpm, $auto_config)</make>
<callback>set_act_threshold($threshold)</callback>

View File

@ -2,7 +2,7 @@
<block>
<name>Debug Message Source</name>
<key>satnogs_debug_msg_source</key>
<category>satnogs</category>
<category>[SatNOGS]/Debug</category>
<import>import satnogs</import>
<make>satnogs.debug_msg_source($msg, $delay, $repeat)</make>

View File

@ -2,7 +2,7 @@
<block>
<name>Debug Message Source Raw</name>
<key>satnogs_debug_msg_source_raw</key>
<category>satnogs</category>
<category>[SatNOGS]/Debug</category>
<import>import satnogs</import>
<make>satnogs.debug_msg_source_raw($msg, $delay, $repeat)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>Doppler Correction</name>
<key>satnogs_doppler_correction_cc</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.doppler_correction_cc($target_freq, $sampling_rate, $corrections_per_sec)</make>

View File

@ -1,38 +0,0 @@
<?xml version="1.0"?>
<block>
<name>frame_encoder</name>
<key>satnogs_frame_encoder</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.frame_encoder($append_preamble, $ecss_encap, $dest_addr, $dest_ssid, $src_addr, $src_ssid)</make>
<!-- Make one 'param' node for every Parameter you want settable from the GUI.
Sub-nodes:
* name
* key (makes the value accessible as $keyname, e.g. in the make node)
* type -->
<param>
<name>...</name>
<key>...</key>
<type>...</type>
</param>
<!-- Make one 'sink' node per input. Sub-nodes:
* name (an identifier for the GUI)
* type
* vlen
* optional (set to 1 for optional inputs) -->
<sink>
<name>in</name>
<type><!-- e.g. int, float, complex, byte, short, xxx_vector, ...--></type>
</sink>
<!-- Make one 'source' node per output. Sub-nodes:
* name (an identifier for the GUI)
* type
* vlen
* optional (set to 1 for optional inputs) -->
<source>
<name>out</name>
<type><!-- e.g. int, float, complex, byte, short, xxx_vector, ...--></type>
</source>
</block>

View File

@ -1,8 +1,8 @@
<?xml version="1.0"?>
<block>
<name>leo_channel</name>
<name>LEO Channel</name>
<key>satnogs_leo_channel</key>
<category>[satnogs]</category>
<category>[SatNOGS]/Debug</category>
<import>import satnogs</import>
<make>satnogs.leo_channel($freq, $freq_shifts_per_sec)</make>
<!-- Make one 'param' node for every Parameter you want settable from the GUI.

View File

@ -2,7 +2,7 @@
<block>
<name>Morse code Debug Source</name>
<key>satnogs_morse_debug_source</key>
<category>satnogs</category>
<category>[SatNOGS]/Debug</category>
<import>import satnogs</import>
<make>satnogs.morse_debug_source($debug_seq, $errors, $p)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>Morse Decoder</name>
<key>satnogs_morse_decoder</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.morse_decoder($unrecognized_char)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>Multi Format Message Sink</name>
<key>satnogs_multi_format_msg_sink</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.multi_format_msg_sink($format)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>Sine Matched filter</name>
<key>satnogs_sine_matched_filter_ff</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.sine_matched_filter_ff($sampling_rate, $sine_freq, $baud, $compute_energy)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>TCP rigctl Message Source</name>
<key>satnogs_tcp_rigctl_msg_source</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.tcp_rigctl_msg_source($addr, $port, $mode, $interval, $mtu)</make>

View File

@ -2,7 +2,6 @@
<block>
<name>UDP Message Sink</name>
<key>satnogs_udp_msg_sink</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.udp_msg_sink($addr, $port, $mtu)</make>
<param>

View File

@ -2,7 +2,6 @@
<block>
<name>UDP Message Source</name>
<key>satnogs_udp_msg_source</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.udp_msg_source($addr, $port, $mtu)</make>

View File

@ -1,38 +0,0 @@
<?xml version="1.0"?>
<block>
<name>whitening</name>
<key>satnogs_whitening</key>
<category>satnogs</category>
<import>import satnogs</import>
<make>satnogs.whitening($mask, $seed, $order)</make>
<!-- Make one 'param' node for every Parameter you want settable from the GUI.
Sub-nodes:
* name
* key (makes the value accessible as $keyname, e.g. in the make node)
* type -->
<param>
<name>...</name>
<key>...</key>
<type>...</type>
</param>
<!-- Make one 'sink' node per input. Sub-nodes:
* name (an identifier for the GUI)
* type
* vlen
* optional (set to 1 for optional inputs) -->
<sink>
<name>in</name>
<type><!-- e.g. int, float, complex, byte, short, xxx_vector, ...--></type>
</sink>
<!-- Make one 'source' node per output. Sub-nodes:
* name (an identifier for the GUI)
* type
* vlen
* optional (set to 1 for optional inputs) -->
<source>
<name>out</name>
<type><!-- e.g. int, float, complex, byte, short, xxx_vector, ...--></type>
</source>
</block>