-
Notifications
You must be signed in to change notification settings - Fork 12
Home
The Pothos communications toolkit is a component of the Pothos data-flow framework. The toolkit contains radio communications and digital signal processing blocks.
- Browse the code: https://github.com/pothosware/pothos-comms
- Open issues: https://github.com/pothosware/PothosComms/issues
General purpose basic arithmetic block with support for addition, subtraction, multiplication, and division. This block also demonstrates the features of 1) feedback loops and 2) inline buffer substitution.
Blocks that implement configurable signal filters such as FIR and IIR. Checkout the Filter Tutorial to learn more about using digital filters in Pothos.
- FIR Taps designer - emit taps signal when parameters changed.
- FIR Filter - interpolating and decimating/fixed and floating point
- IIR Taps designer - emit taps signal when parameters changed.
- IIR Filter - fixed and floating point IIR filter
- Envelope detector - single pole filter with attack/release/lookahead
- DC removal - subtract DC level from input stream using moving average
Misc utility blocks that operate on signal streams.
- Signal probe - emit mean, RMS, or last seen element when triggered.
- Threshold - labels a stream when de/activation threshold is crossed
- Wave trigger - sample input stream based on configurable trigger events
- Combine complex - combine two input streams (real, imaginary) into a single complex stream
- Split complex - spearate a single complex string into real and imaginary streams
The MAC blocks are used for implementing higher layer control.
- Simple MAC - addressable media access control layer layer
- Simple LLC - logic link control for local ports and retransmission
The digital blocks operate on bits, bytes, symbols, and burst framing.
- Scrambler and descrambler block
- Symbol to constellation mapper
- Bit stream to symbol stream
- Byte stream to symbol stream
- Symbol stream to bit stream
- Symbol stream to byte stream
- Preamble correlator block
- Preamble framer block
- Differential encoder block
- Differential decoder block
- Frame inserter block
- Frame synchronizer block
- Byte ordering block
Waveform generator blocks generate well-known periodic and random waveforms.
- Waveform source - generate basic waveforms (sine, square...) with a lookup table implementation.
- Noise source - generate basic noise patterns (gaussian, uniform...) with a lookup table implementation.
- Project overview
- Getting started
- FAQ
- Video screencasts
- Demo applications
- Features summary
- Versioned releases
- Miscellaneous links
- Help and support
- Pothos users' group
- Twitter @pothosware
- IRC chat #pothos
- Slack workspace
- Contract services
- Developer blog
- Contributing
- Donate
- Build guide
- GUI Tutorial
- SDR Tutorial
- Filter Tutorial
- Doxygen docs
- PothosUtil Guide
- Blocks coding guide
- Scheduler explained
- Remote control guide
- Extending serialization