Adds the missing GROUND_STATION UART mode YAML mapping so AUX1 survives save/reload and reboot. Adds regression coverage for Ground Station, all AUX1 UART modes, and legacy AUX serial-mode migration.
The YAML serializer's UART mode lookup table had no entry for
UART_MODE_GROUND_STATION, so the AUX1 selection was written with an
empty value and read back as OFF after a power cycle. Add the missing
table entry and regression tests for the save/reload roundtrip of all
AUX1 modes and the legacy auxSerialMode migration.
Reviewed PR-only change f0d51db against ground-station (f067d8b).
The root cause is addressed: GROUND_STATION was absent from the YAML enum used to serialize g_eeGeneral.serialPort, so the selected AUX1 mode could not round-trip across a reboot.
The added enum mapping is scoped to persistence and preserves existing enum values.
Regression coverage checks both the specific Ground Station save/reload case and all current AUX1 modes.
git diff --check passes.
I attempted to run gtests-radio, but this review environment lacks Qt6 development files, so native test configuration cannot start. The repository Gitea token available to the reviewer has no write:repository scope, so I also could not dispatch the GX12 workflow from here.
Before merge/flash acceptance: run the GX12 workflow, flash the artifact, select SYS → Hardware → AUX1 → Ground Station, power-cycle, and verify Orange Pi again receives GS frames on /dev/ttyS2 without reselecting the mode.
## Review: no blocking findings
Reviewed PR-only change `f0d51db` against `ground-station` (`f067d8b`).
- The root cause is addressed: `GROUND_STATION` was absent from the YAML enum used to serialize `g_eeGeneral.serialPort`, so the selected AUX1 mode could not round-trip across a reboot.
- The added enum mapping is scoped to persistence and preserves existing enum values.
- Regression coverage checks both the specific Ground Station save/reload case and all current AUX1 modes.
- `git diff --check` passes.
I attempted to run `gtests-radio`, but this review environment lacks Qt6 development files, so native test configuration cannot start. The repository Gitea token available to the reviewer has no `write:repository` scope, so I also could not dispatch the GX12 workflow from here.
Before merge/flash acceptance: run the GX12 workflow, flash the artifact, select `SYS → Hardware → AUX1 → Ground Station`, power-cycle, and verify Orange Pi again receives `GS` frames on `/dev/ttyS2` without reselecting the mode.
piotr
merged commit f0d51db58b into ground-station2026-10-01 14:32:37 +02:00
piotr
deleted branch issue-1-ground-station-persist2026-10-01 14:32:37 +02:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Fixes #1
Adds the missing
GROUND_STATIONUART mode YAML mapping so AUX1 survives save/reload and reboot. Adds regression coverage for Ground Station, all AUX1 UART modes, and legacy AUX serial-mode migration.Validation: clean GX12 from-scratch gate; 158/158 native gtests passed;
git diff --checkpassed; added-lines security scan passed.Physical GX12 power-cycle and Orange Pi
/dev/ttyS2frame verification remain hardware acceptance steps after flashing the resulting build.Review: no blocking findings
Reviewed PR-only change
f0d51dbagainstground-station(f067d8b).GROUND_STATIONwas absent from the YAML enum used to serializeg_eeGeneral.serialPort, so the selected AUX1 mode could not round-trip across a reboot.git diff --checkpasses.I attempted to run
gtests-radio, but this review environment lacks Qt6 development files, so native test configuration cannot start. The repository Gitea token available to the reviewer has nowrite:repositoryscope, so I also could not dispatch the GX12 workflow from here.Before merge/flash acceptance: run the GX12 workflow, flash the artifact, select
SYS → Hardware → AUX1 → Ground Station, power-cycle, and verify Orange Pi again receivesGSframes on/dev/ttyS2without reselecting the mode.