Improvements at the AX.25 and IEEE 802.15.4 decoders and the overall codebase

New Features

  • Use C++11 lambdas instead of boost::bind(). This will allow compilation in recent versions of boost
  • Support for CRC16 AUG-CCITT
  • Add support for 0 length preambles at the IEEE 802.15.4 decoder
  • Add option at the IEEE 802.15.4 decoder to drop the invalid frames
  • Add support for error correction (up to 1 bit) at the AX.25 decoder
  • Whitening class now accepts at the constructor the bit alignment (MS or LS bit first)
  • Dropdown style selection of CRC algorithms in the GRC. The field is yet editable for custom definitions
  • Drop obsolete C-like code and make it object oriented

Bug Fixes

  • Fix AX100 metadata generation, in case no preamble is used (frames using SFD only)
  • Fix image generation at the SSTV
  • Fix UDP message sink to accept both pmt::blob() and pmt::dict()
  • Simplify the LO compensation
  • Fix AX.25 decoder producing too many invalid frames
  • Fix sensitivity of the AX.25 decoder. The decoder can now handle frames starting with only one AX.25 SYNC flag
  • Fix stdout output of the message sink block

Known issues

  • The LO compensation simplification increases the CPU usage. Next releases will handle this issue by decimating properly the signal before the arbitrary polyphase resampler