1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-07-17 16:24:08 -04:00
Commit Graph

6420 Commits

Author SHA1 Message Date
Robin Getz b834b80f05 adsb: fix BDS 2,1 registration character decoding
Fix an incorrect bit shift when decoding aircraft registration
markings from BDS 2,1 Comm-B messages.

Coverity (CID 649088) reported that the expression
'(data[7] & 0x1) >> 3' always evaluates to zero, causing one bit of
the 6-bit character value to be discarded.

The BDS 2,1 aircraft registration marking format encodes seven
6-bit characters. Based on the bit layout defined in ICAO Doc 9871
(Technical Provisions for Mode S Specific Services) and verified
against independent implementations such as pyModeS/rs1090, the
remaining bit from data[7] is the most significant bit of the
character and must be shifted left, not right.

Update the extraction to preserve this bit when combining it with
the remaining bits from data[8].

Signed-off-by: Robin Getz <rgetz503@gmail.com>
2026-07-12 19:35:04 -04:00
Robin Getz 810b0524fb adsb: fix Coverity UNINIT_CTOR warning in AircraftModel
Initialize the AircraftModel settings pointer to nullptr.

Coverity (CID 649096) flagged m_settings as potentially
uninitialized because the compiler-generated constructor does not
initialize it. Initialize it to nullptr, which is the appropriate
default until setSettings() provides a valid pointer.

This is likely not an issue, as m_settings is typically assigned
shortly after construction. However, correctness depends on that
assumption holding everywhere. Initializing it in the declaration
costs nothing, removes the dependency on initialization order, and
eliminates this class of bugs.

Signed-off-by: Robin Getz <rgetz503@gmail.com>
2026-07-12 19:16:08 -04:00
Robin Getz b3afa02023 adsb: fix Coverity UNINIT_CTOR warning in Aircraft
Initialize the remaining Aircraft members that were previously left
uninitialized by the constructor.

Coverity (CID 649090) flagged m_pressureAltitude, m_squawk,
m_range, m_lastColor, m_prevTrack, and
m_trackWhenHeadingSet as potentially uninitialized. Initialize
them to sensible default values consistent with their intended use.

This is likely not an issue, as these members are generally
initialized before use. However, correctness depends on that
assumption holding everywhere. Initializing them in the constructor
costs nothing, removes the dependency on call ordering, and
eliminates this class of bugs.

Signed-off-by: Robin Getz <rgetz503@gmail.com>
2026-07-12 19:07:43 -04:00
Robin Getz 12aa80686d adsb: fix Coverity UNINIT_CTOR warning in Interogator
Initialize all coordinate boundary members in the Interogator
constructor.

Coverity (CID 649097) flagged m_minLatitude, m_maxLatitude,
m_minLongitude, and m_maxLongitude as potentially uninitialized.
Initialize them to max()/lowest() sentinel values so subsequent
min/max accumulation logic operates on defined data.

This is likely not an issue, but safety depends on discipline
across the entire codebase, every place these members are
accessed must check m_valid first. Cleaner approach is to just
initialize them, it costs nothing and eliminates the entire class of bugs.

Signed-off-by: Robin Getz <rgetz503@gmail.com>
2026-07-12 18:37:13 -04:00
Edouard Griffiths 9a3bd35608 Merge pull request #2797 from munzzyy/fix_2764
LocalSink: fix crash when adding channel with no Local Input device (#2764)
2026-07-11 15:49:47 +02:00
Edouard Griffiths 315f642861 Merge pull request #2796 from srcejon/android_fixes
Android Qt6 support
2026-07-11 15:05:06 +02:00
munzzyy 9115e23184 LocalSink: fix crash when adding channel with no Local Input device. Fixes #2764 2026-07-10 14:15:24 -05:00
Jon Beniston b3fe4235a3 Fix pinch on Android 2026-07-09 23:33:21 +01:00
Jon Beniston 4f06215965 Get Qt6 build working on Android. 2026-07-09 23:16:19 +01:00
Jon Beniston a83dd8b8a0 Use default QSurfaceFormat when MSAA enabled. May fix #2788, #2022 and #1616 2026-07-07 14:06:13 +01:00
f4exb 1f9b0ebb31 Release v7.27.1 2026-07-04 18:22:23 +02:00
Tom Hensel dd0b2a4f1d docs: update readmes to reflect dedicated MeshCore SWG schemas (PR #2784)
Both plugin readmes listed the SWGMeshtastic* placeholder as an
outstanding item needing dedicated SWGMeshcore* schemas. This PR
provides exactly that — strike the stale todo and note the resolution.
2026-07-04 12:42:22 +02:00
Tom Hensel 2692b56c64 fixup: add missing CMake integration, export.h, and MeshCore swagger schemas
PR #2775 merged the MeshCore plugin source files but omitted the
parent CMakeLists.txt changes, the export.h API macro, and all
MeshCore-specific Swagger schema types. Without these the plugins
do not build and the REST API serves Meshtastic types for MeshCore
channels.

Adds:
- CMakeLists.txt parent directories + option definitions
- exports/export.h MODEMMESHCORE_API macro
- MeshcoreDemod/Mod swagger YAML specs + SWG client classes
- SWGChannelSettings/Report/Actions/ModelFactory MeshCore types
- Rename 164 Meshtastic donor references in plugin code
2026-07-04 12:31:14 +02:00
f4exb 0bb7a1e600 Release v7.27.0 2026-07-04 09:55:26 +02:00
Edouard Griffiths 728a2ac444 Merge pull request #2776 from gretel/pr/soapysdr-tx-fixes
Fix SoapyUHD TX signal path and MCR pinning
2026-06-25 16:21:38 +02:00
Tom Hensel abc8bd32df soapysdroutput: fix SoapyUHD TX signal path and MCR pinning
Fix multiple issues preventing SoapySDR output from producing RF:

- handleInputMessages() never called in DSP engine thread (Qt signal
  lost without event loop) - scheduled properly
- setGain() moved to start() post-activation (pre-activation gain
  silently fails on SoapyUHD)
- fullScale threshold corrected for CS16 format detection
- Timed first write pattern matching gr4-lora SoapySink

MCR pinning for SoapyUHD: inject auto_tick_rate=0 in
DeviceSoapySDR device-open path to prevent UHD from re-deriving the
master clock rate on set_tx_rate(), which breaks the decimator chain
and produces no RF. Also reads SDRANGEL_USRP_MASTER_CLOCK_RATE_HZ env
var for optional MCR override.

TX diagnostic counters: SoapySDROutputThread tracks packets,
underflows, errors. Exposed via REST as streamSettingsArgs
key-value pairs.
2026-06-24 20:19:27 +02:00
Tom Hensel 92552f6b4f meshcore: add MeshCore protocol RX/TX channel plugins 2026-06-24 20:19:20 +02:00
Alex Antonov UT2UM a15d66f147 Make Linux Fobos SDR runtimes optional at build time 2026-06-08 23:08:34 +03:00
Alex Antonov UT2UM 3f85144bed Enable native Fobos SDR source plugin on Linux 2026-06-05 07:47:56 +03:00
f4exb 13fdc156a2 Tried to fix Debian builds 2026-06-03 03:06:36 +02:00
f4exb 7e37ca68a2 Release v7.26.0 2026-06-02 21:37:05 +02:00
Alex Antonov UT2UM 76f5042769 Add Fobos SDR dual backend sample source plugin 2026-05-27 18:58:28 +03:00
srcejon e3e2f5bb20 Add active only button. Increase poll frequency. Support channels that don't have a frequency offset. 2026-05-05 10:45:24 +01:00
f4exb ef4357f26b Release 7.25.0 2026-05-04 06:00:17 +02:00
Edouard Griffiths 69c6929fb0 Merge pull request #2712 from tammojan/cmake_qt6.2
Use Qt6.2 compatible qt_add_plugin in CMake
2026-04-28 20:20:12 +02:00
Tammo Jan Dijkema c86c178363 Use Qt6.2 compatible qt_add_plugin in CMake 2026-04-25 17:11:41 +02:00
jvn314 c368600b52 expose demod fields for plaintext packets, gate on header CRC 2026-04-25 05:24:36 +00:00
jvn314 3da5bff59b fix: replace sdrangel seq with meshtastic packet_id in JSON 2026-04-25 05:24:36 +00:00
jvn314 e4ad474cce implement JSON UDP packet builder 2026-04-25 05:24:35 +00:00
jvn314 88f29bc175 demod: wire sendJsonViaUDP through WebAPI 2026-04-25 05:24:35 +00:00
jvn314 75db515ffe Adapter settings wrong class fixed 2026-04-25 05:24:34 +00:00
jvn314 2306bb08d0 JSON UDP checkbox GUI added 2026-04-25 05:24:34 +00:00
jvn314 2f961e625d Add sendJsonViaUDP settings flag 2026-04-25 05:24:34 +00:00
Edouard Griffiths fc9887f50b Merge pull request #2709 from srcejon/copilot/add-freqdisplay-plugin
Add Frequency Display plugin
2026-04-24 05:09:18 +02:00
Edouard Griffiths 279a19274a Merge pull request #2708 from srcejon/copilot/fix-usrpoutput-transmit-issues
USRP TX: Fix interpolation >= 16
2026-04-23 08:18:10 +02:00
Jon Beniston 6f97e12a70 Make private 2026-04-22 22:04:53 +01:00
copilot-swe-agent[bot] 42a65a0311 refactor: use MainCore::getDeviceAndChannelIndexFromId in webapiFormatFeatureReport
Agent-Logs-Url: https://github.com/srcejon/sdrangel/sessions/68c9a41e-19ba-45f8-955d-b7b2e2b9fd8f

Co-authored-by: srcejon <57259258+srcejon@users.noreply.github.com>
2026-04-22 20:51:13 +00:00
Jon Beniston c545a835e1 Bring in line with other features. 2026-04-22 21:46:32 +01:00
copilot-swe-agent[bot] 4581df2c53 refactor: make FreqDisplay::applySettings private; use MsgConfigureFreqDisplay in FreqDisplayGUI::applySettings
Agent-Logs-Url: https://github.com/srcejon/sdrangel/sessions/d71b1b23-0809-4351-bfc0-1f46a26a49cc

Co-authored-by: srcejon <57259258+srcejon@users.noreply.github.com>
2026-04-22 20:23:48 +00:00
copilot-swe-agent[bot] 220f5d11ab feat: add FreqDisplay webapiReportGet, webapiFormatFeatureReport; add freqDecimalPlaces and dropShadowColor to settings webapi methods
Agent-Logs-Url: https://github.com/srcejon/sdrangel/sessions/896509c5-b3f8-406a-98db-4b744f7a918c

Co-authored-by: srcejon <57259258+srcejon@users.noreply.github.com>
2026-04-22 19:20:46 +00:00
Jon Beniston c44925dba3 Fix webapi for Freq Display. 2026-04-22 20:09:41 +01:00
Jon Beniston fd9f3ac632 Fix compilation. 2026-04-22 19:34:49 +01:00
copilot-swe-agent[bot] 219ece573c feat: implement FreqDisplay WebAPI (webapiSettingsGet/PutPatch, format/update, reverseSend)
Agent-Logs-Url: https://github.com/srcejon/sdrangel/sessions/373fd0a8-4ef8-4849-8b8e-adb0a988230d

Co-authored-by: srcejon <57259258+srcejon@users.noreply.github.com>
2026-04-22 18:28:48 +00:00
srcejon 8abbe204b4 Merge branch 'f4exb:master' into copilot/add-freqdisplay-plugin 2026-04-22 19:20:34 +01:00
Jon Beniston b9461188d1 USRPOutput: Fix corruption when interpolation >= 16. 2026-04-22 19:13:03 +01:00
Edouard Griffiths fc4d88b3cd Merge pull request #2706 from srcejon/fix_nfm_demod_scaling
NFMDemod: Correct FM scaling.
2026-04-22 19:50:58 +02:00
Jon Beniston 3a15e13cde Implement FreqDisplayWebAPIAdapter 2026-04-22 16:34:46 +01:00
Edouard Griffiths 1f1b77fdbe Merge pull request #2705 from srcejon/fix_nfmmod_centerfreq
NFMMod: Fix center frequency display.
2026-04-22 16:27:18 +02:00
copilot-swe-agent[bot] a4462cfa40 Document intentional signed length and FIFO truncation behavior
Agent-Logs-Url: https://github.com/srcejon/sdrangel/sessions/bafbe6fb-a6ec-4ee0-92f8-caa27da815f5

Co-authored-by: srcejon <57259258+srcejon@users.noreply.github.com>
2026-04-21 19:56:46 +00:00
copilot-swe-agent[bot] ebbfd76504 Harden USRP callback interpolation factor and length handling
Agent-Logs-Url: https://github.com/srcejon/sdrangel/sessions/bafbe6fb-a6ec-4ee0-92f8-caa27da815f5

Co-authored-by: srcejon <57259258+srcejon@users.noreply.github.com>
2026-04-21 19:56:15 +00:00