Browse Source

fix(heltec-v3): powerOff() arms user button + LoRa-DIO1 wake mask

HeltecV3Board::powerOff() called enterDeepSleep(0) with the default
pin_wake_btn = -1, so the wake mask armed only LoRa-DIO1. The user
button (PIN_USER_BTN) was never armed despite typical long-hold-button-
to-hibernate UX prompts expecting it to wake.

Mirrors the same fix landed for HeltecV4Board in May 2026 in the
downstream meshomatic-conduit-firmware fork
(akkerkid/meshomatic-conduit-firmware fix/hibernate-button-only-wake),
where this bug shipped to ~80 conduit units before discovery. V3 in
upstream carries the identical bug shape today.

One-line fix: pass PIN_USER_BTN explicitly. No API changes; the
default-arg signature stays. Affected use case: any board class user
that calls `powerOff()` expecting both LoRa packets AND the user
button to wake the device (the OLED prompt "Tap button to wake" reads
that way).

Signed-off-by: AkkerKid <[email protected]>
pull/2595/head
AkkerKid 3 weeks ago
parent
commit
854ad0ea58
  1. 2
      variants/heltec_v3/HeltecV3Board.h

2
variants/heltec_v3/HeltecV3Board.h

@ -76,7 +76,7 @@ public:
}
void powerOff() override {
enterDeepSleep(0);
enterDeepSleep(0, PIN_USER_BTN);
}
uint16_t getBattMilliVolts() override {

Loading…
Cancel
Save