EPIC: List of GR 3.10 blocks & Others to be ported to GR 4.0
This issue contains lists of blocks which can be of interest to implement in Gnuradio 4.0. The issue is aimed to be a tracker for the block-porting. It consists of all blocks from the current version of GNURadio 3.10. Additionally, it includes some FAIR-specific blocks from the gr-digitizers project, RxCpp project, and Resilience4j project.
The issue is rather big and thus uses collapsed sections for better navigation.
Please share your thoughts, insights, or any additional blocks you believe should be considered in the comments.
GNU Radio 3.10 'Core' blocks
577 blocks in 42 categories.
Hide all blocks
-
[ ] Category 'Math Operators' (33 blocks)
- [x] Abs
- [X] Add Const
- [x] Add
- [ ] Argmax
- [ ] Complex Conjugate
- [x] Divide
- [ ] Exponentiate Const Int
- [ ] Frequency Shift
- [ ] Integrate
- [ ] Max
- [ ] Min
- [ ] Multiply by Tag Value
- [ ] Multiply Conjugate
- [X] Multiply Const
- [x] Fast Multiply Const
- [ ] Multiply by Matrix
- [x] Multiply
- [ ] Log10
- [ ] RMS
- [x] #492
- [x] Subtract
- [ ] Transcendental
- [ ] 'Boolean Operators' (5 blocks)
- [ ] 'Byte Operators' (5 blocks)
- [ ] Pack K Bits
- [ ] Packed to Unpacked
- [ ] Repack Bits
- [ ] Unpack K Bits
- [ ] Unpacked to Packed
-
[x] #384
- Char To Float
- Char To Short
- Complex to Arg
- Complex To Float
- Complex to Imag
- Complex To IChar
- Complex To IShort
- Complex to Mag
- Complex to Mag^2
- Complex To Mag Phase
- Complex To Real
- Float To Char
- Float To Complex
- Float To Int
- Float To Short
- Float To UChar
- Int To Float
- IChar To Complex
- IShort To Complex
- Magnitude and Phase To Complex
- Short To Char
- Short To Float
- UChar To Float
-
[ ] Category 'Audio' (22 blocks)
- [ ] Audio Sink
- [ ] Audio Source
Show all blocks
- [ ] Alaw Audio Decoder
- [ ] g711 Alaw Audio Encoder
- [ ] CODEC2 Audio Decoder
- [ ] CODEC2 Audio Encoder
- [ ] CVSD Decoder
- [ ] CVSD Audio Decoder (Raw Bit-Level)
- [ ] CVSD Encoder
- [ ] CVSD Audio Encoder (Raw Bit-Level)
- [ ] FreeDV demodulator
- [ ] FreeDV modulator
- [ ] g721 Audio Decoder
- [ ] g721 Audio Encoder
- [ ] g723_24 Audio Decoder
- [ ] g723_24 Audio Encoder
- [ ] g723_40 Audio Decoder
- [ ] g723_40 Audio Encoder
- [ ] GSM full-rate Audio Decoder
- [ ] GSM full-rate Audio Encoder
- [ ] ulaw Audio Decoder
- [ ] ulaw Audio Encoder
-
[ ] Category 'Channel Models' (7 blocks)
Show all blocks
-
[ ] Category 'Channelizers' (7 blocks)
Show all blocks
-
[ ] Category 'Coding' (3 blocks)
Show all blocks
- [ ] Additive Scrambler
- [ ] Descrambler
- [ ] Scrambler
-
[ ] Category 'Control Port' (4 blocks)
Show all blocks
- [ ] CtrlPort Monitor
- [ ] CtrlPort Performance Monitor
- [ ] Ctrlport Probe
- [ ] Ctrlport Probe PSD
-
[ ] Category 'Debug Tools' (2 blocks)
- [ ] Tags Strobe
- [ ] Vector Sink
-
[ ] Category 'Deprecated' (7 blocks)
Show all blocks
- [ ] CPFSK
- [ ] Clock Recovery MM
- [ ] MSK Timing Recovery
- [ ] PSK Demod
- [ ] PSK Mod
- [ ] QAM Demod
- [ ] QAM Mod
-
[ ] Category 'Digital Television (54 blocks)
Show all blocks
- [ ] ATSC (17 blocks)
- [ ] ATSC Deinterleaver
- [ ] ATSC Depad
- [ ] ATSC Derandomizer
- [ ] ATSC Equalizer
- [ ] ATSC Field Sync Mux
- [ ] ATSC Receiver FPLL
- [ ] ATSC Field Sync Checker
- [ ] ATSC Interleaver
- [ ] ATSC Pad
- [ ] ATSC Randomizer
- [ ] ATSC Reed–Solomon Decoder
- [ ] ATSC RS Encoder
- [ ] ATSC Receive Pipeline
- [ ] ATSC RX Filter
- [ ] ATSC Receiver SYNC
- [ ] ATSC Trellis Encoder
- [ ] ATSC Viterbi Decoder
- [ ] DVB (4 blocks)
- [ ] BBheader
- [ ] BBscrambler
- [ ] BCH Encoder
- [ ] LDPC Encoder
- [ ] DVB-S2 (3 blocks)
- [ ] Interleaver
- [ ] DVB-S2X Modulator
- [ ] Physical Layer Framer
- [ ] DVB-T (16 blocks)
- [ ] Bit Inner Deinterleaver
- [ ] Bit Inner Interleaver
- [ ] Convolutional Deinterleaver
- [ ] Convolutional Interleaver
- [ ] DVB-T Demap
- [ ] Demod Reference Signals
- [ ] Energy Descramble
- [ ] Energy Dispersal
- [ ] Inner Coder
- [ ] DVB-T Map
- [ ] OFDM Symbol Acquisition
- [ ] Reed-Solomon Decoder
- [ ] Reed-Solomon Encoder
- [ ] Reference Signals
- [ ] Symbol Inner Interleaver
- [ ] Viterbi Decoder
- [ ] DVB-T2 (9 blocks)
- [ ] Cell/Time Interleaver
- [ ] Frame Mapper
- [ ] Frequency Interleaver
- [ ] Bit Interleaver
- [ ] MISO Processing
- [ ] DVB-T2 Modulator
- [ ] P1 Symbol Insertion
- [ ] Tone Reservation PAPR
- [ ] Pilot Generator and IFFT
- [ ]ITU-T J.83B (5 blocks)
- [ ] Frame Sync Encoder
- [ ] Randomizer
- [ ] Reed-Solomon Encoder
- [ ] Transport Framing Encoder
- [ ] Trellis Encoder
- [ ] ATSC (17 blocks)
-
[ ] Category 'Equalizers' (4 blocks)
Show all blocks
- [ ] Decision Feedback Equalizer
- [ ] Linear Equalizer
- [ ] EVM Measurement
- [ ] Adaptive Algorithm
-
[ ] Category 'Error Coding' (39 blocks)
Show all blocks
- [ ] FEC Async Decoder
- [ ] FEC Async Encoder
- [ ] BER
- [ ] BER Curve Gen.
- [ ] Decode CCSDS 27
- [ ] Depuncture
- [ ] Encode CCSDS 27
- [ ] FEC Extended Async Encoder
- [ ] FEC Extended Decoder
- [ ] FEC Extended Encoder
- [ ] FEC Extended Tagged Decoder
- [ ] FEC Extended Tagged Encoder
- [ ] FEC Decoder
- [ ] FEC Encoder
- [ ] Puncture
- [ ] FEC Tagged Decoder
- [ ] FEC Tagged Encoder
- [ ] LDPC Generator Matrix
- [ ] LDPC Parity Check Matrix
- [ ] POLAR code Configurator
- [ ] Decoders (9 blocks)
- [ ] Encoders (10 blocks)
- [ ] CC Encoder Definition
- [ ] CCSDS Encoder Definition
- [ ] Dummy Encoder Definition
- [ ] LDPC Encoder Definition (via Generator)
- [ ] LDPC Encoder Definition (via Parity Check)
- [ ] LDPC Encoder Definition
- [ ] POLAR Encoder Definition
- [ ] systematic POLAR Encoder Definition
- [ ] Repetition Encoder Definition
- [ ] TPC Encoder Definition
-
[ ] Category 'File Operators' (10 blocks)
- [ ] NEW CSVFileSink
- [ ] File Descriptor Sink
- [ ] File Descriptor Source
- [ ] File Meta Sink
- [ ] File Meta Source
- [x] File Sink
- [x] File Source
- [ ] SigMF Sink (Minimal)
- [ ] SigMF Source (Minimal)
- [ ] Wav File Sink
- [ ] Wav File Source
-
[ ] Category 'Filters' (22 blocks)
- [ ] Band Pass Filter
- [ ] Band Reject Filter
- [ ] DC Blocker
- [ ] FFT Filter
- [ ] Filter Delay
- [ ] FFT Low Pass Filter
- [ ] FFT Root Raised Cosine Filter
- [ ] Generic Filterbank
- [ ] Decimating FIR Filter
- [ ] High Pass Filter
- [ ] Hilbert
- [X] IIR Filter
- [ ] Interpolating FIR Filter
- [ ] Low Pass Filter
- [ ] Root Raised Cosine Filter
- [ ] Single Pole IIR Filter
- [ ] Band-pass Filter Taps
- [ ] Band-reject Filter Taps
- [ ] Filter Taps Loader
- [ ] High-pass Filter Taps
- [ ] Low-pass Filter Taps
- [ ] RRC Filter Taps
-
[ ] Category 'Fourier Analysis' (3 blocks)
- [X] FFT
- [ ] Goertzel
- [ ] Log Power FFT
-
[ ] Category GUI widgets (39 blocks)
Show all blocks
- [ ] Category 'GUI Widgets/QT' (27 blocks)
- [ ] QT GUI Fast Auto-Correlator Sink
- [ ] QT GUI Compass
- [ ] QT GUI Dial Gauge
- [ ] QT GUI Message Edit Box
- [ ] QT GUI Fosphor Display (Byte Vector)
- [ ] QT GUI Fosphor Formatter
- [ ] QT GUI Fosphor GL Sink
- [ ] QT GUI Graphic Item
- [ ] QT GUI Graphic Overlay Sample Source
- [ ] QT GUI App Background
- [ ] QT GUI LED Indicator
- [ ] QT GUI Level Gauge
- [ ] QT GUI Digital Number Control
- [ ] QT GUI Tab Widget
- [ ] QT GUI Az-El Plot
- [ ] QT GUI Check Box
- [ ] QT GUI Chooser
- [ ] QT GUI Dial
- [ ] QT GUI Distance Radar
- [ ] QT GUI Entry
- [ ] QT GUI Label
- [ ] QT GUI Msg Push Button
- [ ] QT GUI Msg CheckBox
- [ ] QT GUI Push Button
- [ ] QT GUI Range
- [ ] QT GUI Toggle Button
- [ ] QT GUI Toggle Switch
- [ ] Category 'Instrumentation/QT' (12 blocks)
- [ ] QT GUI Bercurve Sink
- [ ] QT GUI Constellation Sink
- [ ] QT GUI Eye Sink
- [ ] QT GUI Frequency Sink
- [ ] QT GUI Histogram Sink
- [ ] QT GUI Matrix Sink
- [ ] QT GUI Number Sink
- [ ] QT GUI Sink
- [ ] QT GUI Time Raster Sink
- [ ] QT GUI Time Sink
- [ ] QT GUI Vector Sink
- [ ] QT GUI Waterfall Sink
- [ ] Category 'GUI Widgets/QT' (27 blocks)
-
[ ] Category 'IQ Correction' (4 blocks)
Show all blocks
- [ ] Remove DC Spike
- [ ] Remove DC Spike AutoSync
- [ ] IQ Correction Manual Offset
- [ ] Swap IQ
-
[ ] Category 'Impairment Models' (10 blocks)
Show all blocks
- [ ] Amplitude Balance
- [ ] CFO Model
- [ ] Second Order Distortion
- [ ] Third Order Distortion
- [ ] HW Impairments
- [ ] IQ Imbalance Generator
- [ ] Phase Balance
- [ ] Phase Noise Generator
- [ ] Quantizer
- [ ] SRO Model
-
[ ] Category 'Industrial I/O/FMComms' (2 blocks)
Show all blocks
- [ ] FMComms (2 blocks) - [ ] [FMComms2/3/4 Sink](https://wiki.gnuradio.org/index.php?title=FMComms2/3/4_Sink) - [ ] [FMComms2/3/4 Source](https://wiki.gnuradio.org/index.php?title=FMComms2/3/4_Source) - [ ] Generic (6 blocks) - [ ] [IIO Attribute Sink](https://wiki.gnuradio.org/index.php?title=IIO_Attribute_Sink) - [ ] [IIO Attribute Source](https://wiki.gnuradio.org/index.php?title=IIO_Attribute_Source) - [ ] [IIO Attribute Updater](https://wiki.gnuradio.org/index.php?title=IIO_Attribute_Updater) - [ ] [DDS Control](https://wiki.gnuradio.org/index.php?title=DDS_Control) - [ ] [IIO Device Sink](https://wiki.gnuradio.org/index.php?title=IIO_Device_Sink) - [ ] [IIO Device Source](https://wiki.gnuradio.org/index.php?title=IIO_Device_Source) - [ ] Category 'Industrial I/O/PlutoSDR' (2 blocks) - [ ] [PlutoSDR Sink](https://wiki.gnuradio.org/index.php?title=PlutoSDR_Sink) - [ ] [PlutoSDR Source](https://wiki.gnuradio.org/index.php?title=PlutoSDR_Source) -
[ ] Category 'Level Controllers' (13 blocks)
Show all blocks
- [ ] AGC2
- [ ] AGC3
- [ ] AGC
- [ ] CTCSS Squelch
- [ ] Feed Forward AGC
- [ ] Power Squelch
- [ ] Rail
- [ ] Simple Squelch
- [ ] Standard Squelch
- [ ] Moving Average
- [ ] Mute
- [ ] Sample and Hold
- [ ] Threshold
-
[ ] Category 'Measurement Tools' (9 blocks)
Show all blocks
- [ ] Probe Avg Mag^2
- [ ] Ctrlport Probe
- [ ] Ctrlport Complex Probe
- [ ] Probe Rate
- [ ] Probe Signal Vector
- [x] Probe Signal
- [ ] MPSK SNR Estimator
- [x] Probe Density
- [ ] MPSK SNR Estimator Probe
-
[ ] Category 'Message Tools' (7 blocks)
Show all blocks
-
[ ] Category 'Misc' (19 blocks)
- [x] Copy
- [ ] Delay
- [x] Head
- [ ] Nop
- [x] Null Sink
- [x] Null Source
- [ ] Phase Shift
- [X] Selector
- [ ] Skip Head
- [ ] Throttle (old)
- [ ] Throttle
- [ ] Vector Source
- [ ] Note
- [ ] Options
- [ ] Pad Sink
- [ ] Pad Source
- [ ] Python Snippet
- [ ] XMLRPC Client
- [ ] XMLRPC Server
-
[ ] Category 'Modulators' (22 blocks)
Show all blocks
- [ ] AM Demod
- [ ] FM Deemphasis
- [ ] FM Demod
- [ ] FM Preemphasis
- [ ] Frequency Mod
- [ ] NBFM Receive
- [ ] NBFM Transmit
- [ ] Phase Mod
- [ ] Quadrature Demod
- [ ] WBFM Receive
- [ ] WBFM Receive PLL
- [ ] WBFM Transmit
- [ ] Constellation Modulator
- [ ] Continuous Phase Modulation
- [ ] GFSK Demod
- [ ] GFSK Mod
- [ ] GMSK Demod
- [ ] GMSK Mod
- [ ] GMSK Modulator
- [ ] Constellation Object
- [ ] Constellation Rect. Object
- [ ] Modulate Vector
-
[ ] Category 'Networking Tools' (6 blocks)
Show all blocks
- [ ] Socket PDU
- [ ] TCP Sink
- [ ] TCP Source
- [ ] TUNTAP PDU
- [ ] UDP Sink
- [ ] UDP Source
-
[ ] Category 'OFDM' (7 blocks)
Show all blocks
- [ ] OFDM Carrier Allocator
- [ ] OFDM Channel Estimation
- [ ] OFDM Cyclic Prefixer
- [ ] OFDM Frame Equalizer
- [ ] OFDM Receiver
- [ ] OFDM Serializer
- [ ] OFDM Transmitter
-
[ ] Category 'PDU Tools' (13 blocks)
Show all blocks
- [ ] Add System Time
- [ ] PDU Filter
- [ ] PDU Lambda
- [ ] PDU Remove
- [ ] PDU Set
- [ ] PDU Split
- [ ] PDU To Stream
- [ ] PDU to Tagged Stream
- [ ] Random PDU Generator
- [ ] Tagged Stream to PDU
- [ ] Tags To PDU
- [ ] Take/Skip To PDU
- [ ] Time Delta
-
[ ] Category 'Packet Operators' (21 blocks)
Show all blocks
- [ ] Burst Shaper
- [ ] Correlate Access Code - Tag
- [ ] Correlate Access Code - Tag Stream
- [ ] Async CRC16
- [ ] Async CRC32
- [ ] Stream CRC32
- [ ] CRC Append
- [ ] CRC Check
- [ ] Framer Sink 1
- [ ] HDLC Deframer
- [ ] HDLC Framer
- [ ] Header/Payload Demux
- [ ] Packet Header Generator
- [ ] Packet Header Generator (Default)
- [ ] Packet Header Parser
- [ ] Packet Header Parser (Default)
- [ ] Packet Sink
- [ ] Protocol Formatter (Async)
- [ ] Protocol Formatter
- [ ] Protocol Parser
- [ ] Default Header Format Obj.
-
[ ] Category 'Peak Detectors' (5 blocks)
Show all blocks
- [ ] Detect Peak
- [ ] Burst Tagger
- [ ] Peak Detector2
- [ ] Peak Detector
- [ ] Plateau Detector
-
[x] Category 'Resamplers' (4 blocks)
-
[ ] Category 'Soapy' (7 blocks)
Show all blocks
- [ ] Deprecated' (15 blocks)
- [ ] Soapy Sink
- [x] Soapy Source
- [ ] Category 'Soapy/Sink' (5 blocks)
- [ ] Soapy BladeRF Sink
- [ ] Soapy Custom Sink
- [ ] Soapy HackRF Sink
- [ ] Soapy LimeSDR Sink
- [ ] Soapy PLUTO Sink
- [ ] Category 'Soapy/Source' (8 blocks)
- [x] Soapy AirspyHF Source
- [x] Soapy BladeRF Source
- [x] Soapy Custom Source
- [x] Soapy HackRF Source
- [x] Soapy LimeSDR Source
- [x] Soapy PLUTO Source
- [x] Soapy RTLSDR Source
- [x] Soapy SDRPlay Source
- [ ] Deprecated' (15 blocks)
-
[ ] Category 'Stream Operators' (21 blocks)
- [ ] Block interleaver
- [ ] Deinterleave
- [ ] Endian Swap
- [ ] Interleave
- [ ] Keep M in N (@drslebedev )
- [ ] Keep 1 in N (@drslebedev )
- [ ] Matrix Interleaver
- [ ] Patterned Interleaver
- [ ] Regenerate
- [ ] Repeat
- [ ] Stream Demux
- [ ] Stream Mux
- [ ] Stream to Streams
- [ ] Stream to Vector
- [ ] Stream to Vec Decim
- [ ] Streams to Stream
- [ ] Streams to Vector
- [ ] Stretch
- [ ] Vector Insert
- [ ] Vector to Stream
- [ ] Vector to Streams
-
[ ] Category 'Stream Tag Tools' (8 blocks)
- [ ] Stream to Tagged Stream
- [ ] Tag Debug
- [ ] Tag Gate
- [ ] Tag Share
- [ ] Tagged File Sink
- [ ] Tagged Stream Align
- [ ] Tagged Stream Mux
- [ ] Test Tag Variable Rate
-
[ ] Category 'Symbol Coding' (10 blocks)
Show all blocks
- [ ] Binary Slicer
- [ ] Chunks to Symbols
- [ ] Constellation Decoder
- [ ] Constellation Encoder
- [ ] Constellation Receiver
- [ ] Constellation Soft Decoder
- [ ] Differential Decoder
- [ ] Differential Encoder
- [ ] Differential Phasor
- [ ] Map
-
[ ] Category 'Synchronizers' (9 blocks)
Show all blocks
- [ ] PLL Carrier Tracking
- [ ] PLL Frequency Detector
- [ ] PLL Carrier Regeneration
- [ ] Correlation Estimator
- [ ] Costas Loop
- [ ] FLL Band-Edge
- [ ] Polyphase Clock Sync
- [ ] PN Correlator
- [ ] Symbol Sync
-
[ ] Category 'Trellis Coding' (13 blocks)
Show all blocks
- [ ] Trellis Encoder
- [ ] Trellis Metrics
- [ ] PCCC Decoder Combo
- [ ] PCCC Decoder
- [ ] PCCC Encoder
- [ ] Trellis Permutation
- [ ] SCCC Decoder Combo
- [ ] SCCC Decoder
- [ ] SCCC Encoder
- [ ] SISO Combo
- [ ] SISO
- [ ] Viterbi Combo
- [ ] Viterbi
-
[ ] Category 'UHD' (21 blocks)
Show all blocks
- [ ] UHD: USRP Async Msg Source
- [ ] 'UHD/RFNoC Image Builder/Blocks' (3 blocks)
- [ ] 'UHD/RFNoC Image Builder/Core' (3 blocks)
- [ ] Radio
- [ ] Stream Endpoint
- [ ] X310 Device
- [ ] Category 'UHD/RFNoC/Blocks' (13 blocks)
- [ ] Replay Msg Push Button
- [ ] RFNoC Fast Add-Subtract Block
- [ ] RFNoC Fast Fourier Transform (FFT) Block
- [ ] RFNoC Fosphor Block
- [ ] RFNoC Keep One in N Block
- [ ] RFNoC Log-Power Block
- [ ] RFNoC Moving Average Block
- [ ] RFNoC Null Source Sink Block
- [ ] RFNoC Rx Streamer
- [ ] RFNoC Split Stream Block
- [ ] RFNoC Switchboard Block
- [ ] RFNoC Tx Streamer
- [ ] RFNoC Vector IIR Block
- [ ] 'UHD/RFNoC/Device Control' (1 blocks)
-
[ ] Category 'Variables' (7 blocks)
Show all blocks
- [ ] JSON Config
- [ ] Parameter
- [ ] Variable
- [ ] Variable Config
- [ ] Function Probe
- [ ] Tag Object
- [ ] YAML Config
-
[ ] Category 'Video' (1 blocks)
- [ ] Video SDL Sink
-
[ ] Category 'Waveform Generators' (9 blocks)
Show all blocks
- [ ] Constant Source
- [ ] Fast Noise Source
- [ ] Noise Source
- [ ] Random Source
- [ ] Random Uniform Source
- [ ] Signal Source
- [ ] VCO (complex)
- [ ] VCO
- [ ] GLFSR Source
-
[ ] Category 'ZeroMQ Interfaces' (12 blocks)
- [ ] ZMQ PUB Message Sink
- [ ] ZMQ PUB Sink
- [ ] ZMQ PULL Message Source
- [ ] ZMQ PULL Source
- [ ] ZMQ PUSH Message Sink
- [ ] ZMQ PUSH Sink
- [ ] ZMQ REP Message Sink
- [ ] ZMQ REP Sink
- [ ] ZMQ REQ Message Source
- [ ] ZMQ REQ Source
- [ ] ZMQ SUB Message Source
- [ ] ZMQ SUB Source
-
[ ] Category 'No Category' (4 blocks)
Show all blocks
- [ ] FM Detector
- [ ] Schmidl & Cox OFDM synch.
- [ ] Import
- [ ] Xlating Low Pass Filter
gr-digitizer project
Hide all blocks
- [x] Aggregation helper circuit
- [ ] Helper B.5 Amplitude and Phase Adjust
- [x] B.3 Aggregation & Decimation
- [x] B.5 RF-Amplitude and Phase Detection
- [x] Complex To Mag Deg
- [ ] Helper B.3 Custom filter
- [ ] Bitwise Demultiplexer(LSB)
- [ ] B.1 Scaling & Offset
- [ ] B.6.2 Fitting of spectral peaks
- [ ] Cascade Sink
- [ ] B.6.1 Chi-Square Fitting
- [x] Decimate and adjust timebase tags
- [ ] B.2 Demux
- [ ] Edge Trigger (with UDP)
- [ ] Edge Trigger Receiver
- [x] Helper B.5 Frequency Estimation
- [ ] Frequency Sink
- [ ] Reference Function
- [ ] B.7 Actual vs. Reference Monitoring
- [x] PicoScope 3000a
- [x] PicoScope 4000a
- [x] PicoScope 6000
- [ ] Post-Mortem Sink
- [ ] Signal averager(with decimation)
- [x] Simulation Source
- [x] B.4 STFT (Static)
- [ ] B.4 STFT (Goertzl Dynamic)
- [ ] stream_to_vector_overlay_ff
- [x] digitizers_time_domain_sink
- [x] B.2 Time Realignment
- [x] WR Receiver
Reactive Streams
Hide all blocks
-
[ ] Creation Observables
-
[ ] Conditional Operators
Show all blocks
- [ ] defaultIfEmpty
- [ ] every
- [ ] sequenceEqual
-
[ ] Combination Operators
Show all blocks
- [ ] combineLatest
- [ ] concat
- [ ] merge
- [ ] race
- [ ] startWith
- [ ] withLatestFrom
- [ ] zip
-
[ ] Filtering Operators
-
[ ] Mathematical Operators
-
[ ] Transformation Operators
Show all blocks
- [ ] buffer
- [ ] bufferCount
- [ ] bufferTime
- [ ] bufferToggle
- [ ] bufferWhen
- [ ] concatMap
- [ ] concatMapTo
- [ ] map
- [ ] mapTo
- [ ] mergeMap
- [ ] mergeMapTo
- [ ] pairwise
- [ ] pluck
- [ ] repeat
- [ ] scan
- [ ] switchMap
- [ ] switchMapTo
- [ ] Utility Operators
Netflix 'Resilience4j' project
- [ ] CircuitBreaker
- [ ] Bulkhead
- [ ] RateLimiter
- [ ] Retry
- [ ] TimeLimiter
- [ ] Cache
Unity Visual Scripting
Node types and their usage can be found here
Show all blocks
- [ ] to be populated ...
Hey, i just wanted to know, some of the high priority blocks,which needed to be migrated ?
@Harishankar14, great and thanks for your interest and willingness to contribute. 👍
The choice is yours and depends on your preference and expertise. Let's start with something simple (e.g. the boolean or byte operators) to get acquainted with the new block API and then move on to something more complex.
If you are into HAM then the AM or FM blocks might also be a good start. We deliberately left them unimplemented so that others -- like perhaps you -- could grow into the block lib concepts.
If you have some more C++ experience and thorough understanding of DFT and FFT algorithms, there are also some other std::simd-related project aspects that would greatly help.
As always, feel free to ask questions on the GR channels (https://matrix.to/#/#gnuradio:gnuradio.org and https://matrix.to/#/#development:gnuradio.org). For GR4 specifically: https://matrix.to/#/#architecture:gnuradio.org That's often a good and perhaps better place to start. :smile:
to note: 'porting' and 'migrating' implies functionality, not just copying code, and may require some implementing from scratch. We are trying to keep the core LGPLv3, so beware that your ideas/resources are compatible (most are, except GPLv3) .
yeah, sure, I will look into it and provide the help that the community wants ! Btw, I am there in the GNU channels too.
Would these be OOT modules based on the tutorial on the GNURadio website for GNU Radio 3.x?
I took a look at #395 and the structure looks to be different from the OOT modules on tutorial.
@jameshu15869 great and thanks for your interest in contributing.
For the basic ones (i.e. those that are functionally already in GR3 and have no specific HW or external library dependency and are LGPLv3 compatible) these would be in the GR4 block-lib, i.e. go into the sources ./block/<module> directory. There are also some OOT usage examples for blocks that cannot be shared with the core (due to licenses, IP, ...).
However, creating blocks in GR4 is different/easier than in GR3 and does not require a 'modtool' or similar. The code is the single source of truth and some build file entries.
The main things you need to do are:
- write a `.hpp' (here is also where you can add documentation, infos for the registry, and other optional infos),
- add this
.hpp' file to the./block//CMakeLists.txtfile (so that it gets exported/installed), - and include the
.hppin your project, e.q. your new unit test which goe into./block/<module>/test/`
For now, in addition to the tutorials, the examples in the 'basic' or 'testing' modules are a good start for reading and showing the breadth of what is possible and getting an idea of the flavour of how blocks are written, tested and used.
I will try to update/write the new block-lib dev documentation.
N.B. documentation, tutorials, people sharing their experience and helping others to get started is something where we need help ... if you are interested. Check out the GR channels mentioned above.
@RalphSteinhagen how did u build the gnuradio4 locally.. and set it up, can u explain?
@RalphSteinhagen how did u build the gnuradio4 locally.. and set it up, can u explain?
You already asked the question here and got an answer. This issue is meant for tracking blocks that remain to be re-implemented/ported to GR4. Since there are a lot of blocks, the discussion should be about who is tackling what.
Please do not cross-post, and if there are bugs or questions, please use the GNU Radio channels for generic IDE setup/non-GR-related questions first.
Thanks for your understanding.
Seeing #536, will this project be used for GSoC? I was curious about contributing a couple blocks in my spare time but don't want to step on someone's feet
@alexhojinpark
@jameshu15869 you are most welcome to join and contribute. Everybody is welcome.
We setup this as a tracker to coordinate that things are not getting implemented twice... nothing else.
Let us (@mormj, @jsallay, et all.) know what your interest, level-of-expertise, and block category[y, ies] is/are (😁) that you'd like to tackle. I'd suggest to start with an easier one to get familiar with the basic API build-system and then move to a more complex example.
hello, I found out about your project through GSoC, Can I work on GNU Radio even if I did not send a formal proposal? I am looking for a beginner-level bug/feature as this is my first time contributing to open source.