ADSBee 1421 Firmware Version 0.3.7
·
7 commits
to main
since this release
This is the first public release of firmware for the ADSBee 1421! This builds off of the previous private release (0.3.6) in the adsbee-lp1090 repo. This release substantially improves all around performance by finally adding optimization to release builds, and optimizes the decode / encode workflow for UAT uplink packets, which were taking a bunch of extra cycles previously.
- CMakeLists.txt defaults CMAKE_BUILD_TYPE to Release.
- fec.cpp: DecodeUplinkMessage now corrects the interleaved raw message in place (per-block scratch, scatter corrected codeword back) — the re-encode pass and its per-packet CONSOLE_INFO are gone from uat_packet.cpp. DeInterleaveUplinkMessage is static.
- comms_reporting.cpp: ReportRaw/ReportBeast/ReportGDL90Uplink return immediately with zero sinks; GDL90 just de-interleaves the already-corrected raw packet (no second RS pass, no 1 KB stack object). Beast UAT builders now take raw packet types (beast_utils.hh).
- comms.cpp/comms.hh: 8 KB software TX ring; writes are queued and the UART2 write callback chains segments; bounded wait then whole-write drop under true overload (counted); DrainConsoleTx waits for the ring; SetBaudRate cancels/reset; drains added before reboot/bootloader in adsbee.cpp.
- cc13x4_cc26x4_nortos.lds: STACKSIZE = 32768.
- AT+RX_STATS? now also reports max_loop_us, tx_stalls, tx_drops, tx_ring_hw (reset with =RESET).