6 Commits
Author SHA1 Message Date
liquidraver 12eba394a4 add erase and reboot to observers 2026-10-10 08:27:56 +02:00
liquidraver 5ac3156943 observer lightsleep + companion opt-in 2026-10-09 21:01:26 +02:00
liquidraver c60b5e1bae pwm cleanup 2026-10-09 08:38:37 +02:00
ZephCore T096andClaude Sonnet 5 6b9d205b00 leds: do not reclaim a PWM-shared pin as plain GPIO in main()
server_main_common.cpp and main_observer.cpp both configured led0 as
a plain GPIO output at boot, unconditionally. On ESP32 that calls
esp_rom_gpio_matrix_out() under the hood, which routes the pin's
output to the GPIO signal and takes it away from whatever peripheral
had it before, including the LEDC channel a heartbeat-pwm-led or
lora-tx-pwm-led alias had already claimed during the PWM driver's own
init. The PWM write then succeeds (no error, no warning) but never
reaches the pin: confirmed on V4.3 hardware, where the same pin lights
up fine over plain GPIO, and over PWM in a different (non-Zephyr)
firmware, but stays dark over Zephyr's PWM once this GPIO configure
has run.

Companion builds never hit this (they don't use server_main_common.cpp)
and nRF52 isn't affected (no shared GPIO matrix), which is why T096
tested fine while V4.3 didn't.

Fix is alias-based, not a board list, so any future board with either
PWM alias is covered without extra wiring.

Also: CLI_HAS_RADIO_LED only checked the plain lora-tx-led alias, so
"set leds.radio" replied "(no radio LED on this board)" on boards
whose radio LED exists only via lora-tx-pwm-led (V4.3). Check both.

Documents the two PWM aliases in the board porting guide, and
leds.brightness plus the corrected LED topology counts in
docs/CLI_commands.md.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-08 18:27:42 +02:00
liquidraver 9bb7ccfe53 upstream dev sync 2026-10-06 16:59:23 +02:00
liquidraver 108b96d36c rename cli commands and fix it 2026-10-05 22:35:28 +02:00