-
(Prototype) v0.0.12 - 04/07/2016
- Rename wbfm_rtlsdr demo to rtlsdr_wbfm_mono.
- Rename rds_rtlsdr demo to rtlsdr_rds.
- Improve plotting, variable names, and performance of rtlsdr_wbfm_mono and rtlsdr_rds demos.
- Add new protocol blocks:
- AX25FrameBlock
- POCSAGFrameBlock
- POCSAGDecodeBlock
- Refactor RDSFrameBlock and RDSDecodeBlock.
- Add new demos:
- rtlsdr_wbfm_stereo
- rtlsdr_nbfm
- rtlsdr_am_envelope
- rtlsdr_am_synchronous
- rtlsdr_ssb
- wavfile_ssb_modulator
- rtlsdr_ax25
- rtlsdr_pocsag
- Add new composite blocks:
- NBFMDemodulator
- AMEnvelopeDemodulator
- AMSynchronousDemodulator
- SSBDemodulator
- SSBModulator
- WBFMMonoDemodulator
- WBFMStereoDemodulator
- RDSReceiver
- AX25Receiver
- POCSAGReceiver
- Use composite blocks in rds-timeync and fmradio embed demos.
- Improve unit tests.
-
(Prototype) v0.0.11 - 04/01/2016
- Fix execution of composite blocks with intermediate sinks.
- Add support for aliasing a composite block input to multiple block inputs.
- Add vector_from_array() vector constructor to ObjectType.
- Move bits_to_number() helper function to BitType.tonumber() static method.
- Simplify DecimatorBlock, InterpolatorBlock, RationalResamplerBlock constructors.
- Fix scaling in InterpolatorBlock and RationalResamplerBlock.
- Fix low pass filter cutoff in TunerBlock.
- Fix output data type in FloatToComplexBlock type signature.
- Fix output data type in RawFileSource type signature.
- Fix size type bug in RawFileSource.
- Fix file repeat in WAVFileSource.
- Add RF gain and frequency correction options to RtlSdrSource.
- Add magnitude reference level option to GnuplotSpectrumSink.
- Add min/max magnitude options to GnuplotWaterfallSink.
- Disable file stream buffering in RawFileSink, JSONSink, and PrintSink.
- Add filename and file descriptor support to PrintSink.
- Add invert option to DifferentialDecoderBlock.
- Normalize passband gain to 1.0 in FIR window design functions.
- Add support for specifying a normalized nyquist frequency to filter blocks.
- Add support for complex taps to FIRFilterBlock.
- Add complex bandpass and bandstop FIR window design functions.
- Add new signal blocks:
- ComplexBandpassFilterBlock
- ComplexBandstopFilterBlock
- ComplexConjugateBlock
- ZeroCrossingClockRecoveryBlock
- Add new sink blocks:
- PortAudioSink
- Improve unit tests.
- Add composite block unit tests.
- Improve namespacing with package inits for blocks and composites.
- Simplify block imports in composite blocks.
-
(Prototype) v0.0.10 - 03/10/2016
- Add abs_squared() method to ComplexFloat32Type.
- Add cosine, sine, square, triangle, sawtooth, and constant real signals to SignalSource.
- Add file repeat option to IQFileSource, RealFileSource, WAVFileSource, RawFileSource.
- Add support for multiple channels to PulseAudioSink.
- Add support for other data types to NullSource and RandomSource.
- Add support for generating periodic windows to window utilities.
- Add FFTW3 library and feature flag to platform module.
- Add DFT and PSD spectrum utilities with Lua, VOLK, and FFTW3 implementations.
- Add new signal blocks:
- SubtractBlock
- ComplexToImagBlock
- ComplexToFloatBlock
- FloatToComplexBlock
- ComplexMagnitudeBlock
- ComplexPhaseBlock
- AbsoluteValueBlock
- MultiplyConstantBlock
- UpsamplerBlock
- ThrottleBlock
- Add new composite blocks:
- InterpolatorBlock
- RationalResamplerBlock
- Add gnuplot-based plotting sinks:
- GnuplotPlotSink
- GnuplotXYPlotSink
- GnuplotSpectrumSink
- GnuplotWaterfallSink
- Fix numerical stability problem in FrequencyTranslatorBlock and SignalSource.
- Improve unit tests.
- Add plots to RDS and WBFM demos.
-
(Prototype) v0.0.9 - 03/02/2016
- Simplify type imports in blocks.
- Fix single process execution to call block cleanup() after finish.
- Fix block initialization order.
- Extend file source and sink blocks to:
- IQFileSource / IQFileSink
- RealFileSource / RealFileSink
- RawFileSource / RawFileSink
- WAVFileSource / WAVFileSink
- Improve unit tests.
- Reorganize package init for readability.
-
(Prototype) v0.0.8 - 02/28/2016
- Add libluaradio library with a C API to the LuaRadio runtime.
- Add fmradio and rds-timesync demos for libluaradio.
- Add standalone luaradio interpreter.
-
(Prototype) v0.0.7 - 02/26/2016
- Add platform module with platform-specific constants and allocator.
- Handle missing library gracefully in RtlSdrSource and PulseAudioSink.
- Add portable implementation of Pipe for non-Linux platforms.
- Add portable Lua implementations of signal processing blocks for Volk-less platforms.
- Fix other minor portability issues.
- This release adds support for FreeBSD and Mac OS X platforms.
-
(Prototype) v0.0.6 - 02/25/2016
- Rename some blocks for consistency.
- Return nil on EOF from source blocks instead of exiting.
- Add File[IQ]DescriptorSource blocks and derive File[IQ]Source blocks from them.
- Fix s32 format in File[IQ]DescriptorSource.
- Fix bnot() operator in BitType.
- Fix overflow/underflow handling in Integer32Type.
- Use POSIX pipes in single process execution.
- Add more argument and behavior assertions to Block and CompositeBlock.
- Add unit tests.
-
(Prototype) v0.0.5 - 02/12/2016
- Change CompositeBlock run() to use multiprocesses by default.
- Use CStructType factory to build all basic types.
- Add tostring() support to Block.
- Handle pipe EOF in Block run() to stop processing and clean up.
- Update benchmarks.
- Rename SourceBlock to Source and SinkBlock to Sink.
-
(Prototype) v0.0.4 - 02/12/2016
- Add support for functions as candidate input types in block type signatures.
- Add support for variable length type serialization with ProcessPipe.
- Add ObjectType factory custom Lua object types (serialized with MessagePack).
- Add JsonSinkBlock and update the RDS demo to use it.
-
(Prototype) v0.0.3 - 02/11/2016
- Add CStructType factory for custom cstruct types.
- Add Vector class and resize(), append() methods.
- Add necessary blocks to implement RDS demodulator / decoder demo.
- Add TunerBlock and DecimatorBlock composite blocks.
- Update demos to use composite blocks.
-
(Prototype) v0.0.2 - 02/08/2016
- Add hierarchical block support to CompositeBlock.
- Add start(), stop(), wait(), run() controls to CompositeBlock.
- Add support for linear chain shortcut to CompositeBlock connect() (e.g. connect(b1, b2, b3, ...)).
-
(Prototype) v0.0.1 - 02/06/2016
- Initial prototype with wbfm demo.