OnAir 0.2.8 adds 22 new modes (142 in all), including the KA family of amateur modes designed for OnAir, voice through codecs you install yourself (TETRA, Yaesu Fusion), a dish alignment assistant, a command palette and a set-up wizard, and fixes from your reports.
Pluto: OnAir no longer scans for or contacts network Plutos you have not added (the mDNS "usb:ip" scan is removed and there is no firmware probe of unknown boards, #215). A network Pluto is only contacted when you add its address in Add network radio.
Many of the new modes are large and new. Most have only been tested on generated signals, and the ones that are not finished are marked "in development" in the app and below. No KA mode has been on the air yet: every KA number below was measured in simulation.
New modes
- KAAL: digital voice with a station beacon and a callsign hidden in a sweep signature, about 10 kHz wide, receive and transmit; 12 and 16 kbit/s voice, and 24 and 32 kbit/s live at 16 ksym/s
- KAPP: short messages and small data in bursts, 100 kHz wide, nine profiles from BPSK to 1024-QAM, selective repeat (receive only listens: no acknowledgement is sent)
- KAFT: hash-checked file transfer, 200 kHz, 500 kHz or 1 MHz wide, ten profiles (receive only listens)
- KAIT: a still picture in a 10 s burst under 200 kHz, sent in layers so a coarse picture arrives first
- KAWS: HF weak-signal chat and beacons in a 2.4 kHz channel, chirp and OFDM profiles in UTC slots
- KAVB: video mode, 1 to 2 MHz wide (in development: physical layer and container only, no video codec yet)
- eLoran / Loran-C at 100 kHz: group repetition interval and station arrival times (in development; the eLoran data channel is not decoded)
- MPT1327, LTR and EDACS analog trunking control channels (in development; control data only, no voice, nothing encrypted)
- Yaesu System Fusion (C4FM): callsigns, call mode and slow data; voice through a codec plug-in you install (in development)
- HF waveform ID: estimates the baud rate, tone spacing, constellation and repetition of a military or government HF signal and ranks candidates. Identification only: nothing is decoded and no message content is read
- ARDOP (Winlink HF modem): frame monitor, connect requests, IDs, pings and 4FSK data that pass their CRC
- GOES DCS: data collection platform reports on 401.7 - 402.1 MHz (river gauges, weather stations, buoys)
- Mode A/C: squawks and altitudes of aircraft answering secondary radar, shown beside the ADS-B aircraft
- BLE tracker detector: AirTag, Tile, Chipolo, SmartTag and Find My Device tags, with an alert for one that follows you; identifiers are kept for a short window and never saved
- AM stereo (C-QUAM) on medium wave (#213)
- DGPS beacons, 283.5 - 325 kHz, MSK and RTCM messages (in development)
- SITOR (FEC-A and FEC-B teleprinter, in development, the character table is not checked)
- DME: X or Y channel, pulse pairs and ident (in development)
- FSQ and IFKP keyboard chat modes
New features
- Voice through a codec you install: TETRA voice (unencrypted calls only; encrypted calls are never decoded) and Yaesu Fusion voice (codec id ysf) load a plug-in from your own codecs folder. mbelib-neo is the recommended source for a TETRA plug-in. Nothing patented is bundled (#213, see docs/CODECS.md)
- Dish alignment assistant: beacon level meter, peak hold, strip chart and geostationary look angles
- LNB calibration from a beacon and a rotator north-offset calibration
- Command palette (Ctrl+K), a get-me-listening wizard for new users, four short guided tours from the Help menu
- Workspaces and crash restore; a recording library that lists recordings with their details and re-analyses one
- Report a problem: a dialog with a local diagnostics bundle
- Demod mode shown in the FFT panel and settable from the receiver controls, with a name search in the mode list (#212)
- FM tone control and a warm preset for broadcast audio (#213); VHF DSC channel 70 decoding with call details (#213)
- Waterfall export as PNG frames and a timelapse; Solar and Jupiter burst monitor
- LEO monitor on the Analyser tab: finds Doppler-drifting downlink carriers (detect only)
- SatNOGS transmitter browser (in development)
- Typography choice in Settings: Current (default), Clean or Compact
- Larger touch targets option (first step of #139)
- Codec loader for user-installed speech codecs, with a one-time legal notice
- Maps: contact lines between stations for FT8 and other QSO modes; full-screen button on the last two maps (#195)
- The toolbar button now says Memory instead of M
- HFDL: a shared FFT channeliser makes 32 and 64 MHz captures practical
Radios
- DXpatrol SDR (RTL2832U based) with HF direct sampling (#220)
- Linux: the RX888 start and the LimeSDR probe name the selected device in failures, so a failed Lime start does not hide the RX888 (reported on Discord)
- USRP: the clock and time source are checked against what the radio offers, and ref_locked is reported (#185)
- Android USB: the sample reader keeps running; longer rtl_tcp greeting wait (#201)
Fixes
- Pluto: no network scan and no probe of boards you did not add (#215)
- GOES-19 HRIT: differentially coded (NRZ-M) frames decode
- HD Radio: long station name shown first, per-service logos, more reliable LOT assembly
- HD Radio sound build steps: pin FAAD2 2.11.2; a newer FAAD2 stops the nrsc5 patch (#222)
- DVB-T2 HEVC on macOS: falls back to software decoding when VideoToolbox gives no frames (#203)
- Meteor-M LRPT: the capture centre follows the Doppler tracker (#199)
- DAB: no read before the start of the sample buffer, which crashed RTL-SDR (#210)
- CDR audio recovers after a sync loss (#138, #121)
- HaLow: 2 MHz sub-channel scan, vendor elements and the primary channel (#192, #167)
- LTE and 5G NR scanners: list filters, shared-network PLMNs, warning SIBs (#164)
- ADS-B: altitude colours restored, with display options
- Spectrum analyser: the applied resolution matches the setting
- POCSAG keeps the message text of real pages; LBJ filter widened so real signals pass (#153); DECT US / Canada 1920-1930 MHz band added (#94)
- Subtitles: bitmap subtitles audited on the multi-channel path (#112)
- Mesh: the clock keeps running through a receiver reset (PR #217)
- Several test failures on Windows, Linux and macOS (timing, platform and noise sensitive tests) fixed
DVB-S / S2
- Carrier survey, symbol dump, carousel gallery, DVB-RCS tables, DVB-CID and Eb/N0, using the DecSAT code by Arclamp (GPL-3.0-or-later). In development.
Credits
- Arclamp: DecSAT code (GPL-3.0-or-later) used in the DVB-S / S2 work
- ffishman: PR #217 (mesh clock fix); thank you
- arancormonk: mbelib-neo, the recommended source for a TETRA codec plug-in (GPL-2.0-or-later, not bundled)
- Earlier contributors are listed in CONTRIBUTORS.md; the full licence list is in THIRD_PARTY.md and in the program under Help, Credits and licences
- The KA modes (KAAL, KAPP, KAFT, KAVB, KAIT, KAWS) are Kristijonas Adomaitis's own designs
In development (generated signals only)
- All six KA modes, eLoran, MPT1327, LTR, EDACS, Yaesu Fusion, DGPS beacons, SITOR, DME, KAVB, SatNOGS browser, the DVB-S / DecSAT work and the LEO monitor
- KA performance figures (for example KAAL voice at about 6.6 dB Eb/N0 for 1 % frame errors at 12 kbit/s, a KAFT top rate near 6.2 Mbit/s at 1 MHz by calculation) come from simulation or theory, not from a radio
Known limits
- No KA mode has been tested on a real radio link
- KAPP, KAFT and KAWS only listen: they send no acknowledgement
- KAVB carries no video or audio codec yet
- TETRA and Yaesu Fusion voice need a codec you install; encrypted TETRA is never decoded; the codec patent status is yours to check
- MPT1327, LTR and EDACS decode control data only; LTR check bits are shown, not verified; EDACS data words are shown raw
- The HF waveform ID only estimates; nothing is decoded
- Not in this release: ROS, VarAC, SiriusXM, CUDA DTMB, MHEG-5 (planned for 0.2.9)