Commit Graph
82 Commits
Author SHA1 Message Date
Scott Powell 64434c5326 * misc 2026-09-19 20:13:18 +10:00
Scott Powell b3b17025e3 * more MyMesh::Listener interface hooks 2026-09-17 17:33:36 +10:00
Scott Powell 5c3d9281ff * refactored the UI_DISCOVER_* feature 2026-09-17 13:45:33 +10:00
Scott Powell 3caf033de2 * refactor: removed UITask dependency from MyMesh. New MyMesh::Listener interface
* UITask's are now a MyMesh task Listener
2026-09-16 21:03:44 +10:00
liamcottle cee43752c7 add new ENABLE_WIFI_INTERFACE build flag for companions without providing ssid and pwd 2026-09-08 22:54:50 +12:00
Aleksei Mamlin 1d9a62ca4a companion: get/set timezone offset for clock
* Add tz_offset companion prefs and get/set commands for companion cli
* Use tz_offset for clock on display

Signed-off-by: Aleksei Mamlin <mamlinav@gmail.com>
2026-08-31 09:08:22 +03:00
fdlamotte adbdcf00bb Merge branch 'dev' into node_discover_ui 2026-08-29 11:02:58 -04:00
liamcottle 7dc2d54818 add UI_NO_HIBERNATE build flag to disable hibernate screen on wio tracker l1 2026-08-24 13:45:19 +12:00
Florent 088ae3caeb ui: opt-out for discover screen 2026-08-23 10:42:00 -04:00
Florent 52f0362c09 ui: repeater discover screen 2026-08-21 18:24:46 -04:00
hansimgamrandClaude Opus 4.8 41c60da575 Show plug at >=95% instead of exactly 100%
Boards without a charge-complete signal only infer "full" from voltage, and
a real pack rarely reads the full BATT_MAX_MILLIVOLTS (4.2V), so the plug icon
was effectively never shown. Treat "full" as a high band (>= 95%) so the plug
appears when the battery is charged rather than requiring an exact 100%.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-19 12:44:41 -04:00
hansimgamrandClaude Opus 4.8 3a440ac41a Add charging indicator to companion_radio battery icon
Show a small lightning-bolt icon to the left of the battery indicator on
the ui-new home screen while the device is externally powered, and a plug
icon once the battery reads full. The bolt/plug sits beside the battery so
the fill bar stays clean and uninterrupted. When a buzzer is present, the
mute icon shifts one slot further left so the two never overlap.

Charging state is derived from board.isExternalPowered(), so this works on
any board that reports external power (e.g. the nRF52 VBUS-detect path).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-19 12:44:41 -04:00
Florent de0d5031de M8: preview messages up to 164 cars 2026-08-17 09:24:17 -04:00
Florent 3e82827706 thinknode_m8: initial support 2026-08-11 17:37:35 -04:00
liamcottle e672679d6e refactored companion interfaces to allow for multiple active connection modes 2026-07-28 03:18:54 +12:00
Scott Powell f83ad03e5e * T114 display fix 2026-07-24 18:35:56 +10:00
Scott Powell b8504e55c6 * refactor of Color mapping in UITasks / DisplayDrivers
* color displays now with a new light theme
2026-07-22 16:03:33 +10:00
ripplebiz 795989b918 Merge pull request #2966 from Quency-D/heltec-rc32
Add Heltec rc32 board
2026-07-17 23:23:29 +10:00
Florent c644720ea7 uitask: screen and radio poweroff moved to board 2026-07-17 08:29:31 -04:00
Quency-D b26f53a263 Avoid waking display from rotary input 2026-07-17 15:35:07 +08:00
Quency-D 05d4bd2f7f Add a rotary encoder 2026-07-15 17:45:24 +08:00
Florent 3ee2f77877 restore display and radio poweroff in ui 2026-07-06 08:46:57 -04:00
Kevin Le 7d7de88707 board->powerOff() is sufficient to power off radio, display, GPS and components 2026-07-05 21:22:13 +07:00
Liam Cottle b83355e702 Merge pull request #2671 from sefinek/fix/typos-grammar-formatting
Fix typos and formatting in documentation and comments
2026-06-04 15:57:48 +12:00
Sefinek cc05ae555a docs: fix typos, grammar, and formatting in FAQ and code comments 2026-06-02 22:12:18 +02:00
taco e449af1723 bypass auto-shutdown delay for e-ink devices 2026-06-02 18:37:18 +10:00
taco 3ce1cf404e NRF52: disable autoshutdown if powered, add auto-shutdown warning for oled 2026-06-02 00:55:25 +10:00
Kemal HadimliandClaude Opus 4.7 bb781ff10a companion_radio: opt-in KEEP_DISPLAY_ON_USB to keep OLED on while powered
AUTO_OFF_MILLIS is a power-save feature aimed at battery use. When the
board reports isExternalPowered() == true (USB or other DC source),
blanking the screen serves no purpose — there's nothing to conserve.

But OLEDs are vulnerable to burn-in with static content, so this
behaviour is gated behind a new build flag KEEP_DISPLAY_ON_USB. Default
is unchanged from upstream — the display blanks after AUTO_OFF_MILLIS
on USB or battery. Variants that ship with an LCD instead of an OLED
(e.g. heltec_t096) can opt in by adding -D KEEP_DISPLAY_ON_USB to
their env, gaining always-on-while-powered without exposing OLED users
to burn-in risk.

When the flag is enabled, the implementation refreshes _auto_off every
loop iteration while externally powered, so the timer naturally counts
a fresh AUTO_OFF_MILLIS window from the moment power is removed —
no instantaneous-blank-on-unplug.

Applied to all three companion_radio UI flavours (ui-new, ui-tiny,
ui-orig). Boards without an isExternalPowered() override use the
base-class default in MeshCore.h (returns false), so battery-powered
behaviour is unchanged everywhere.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-29 11:25:48 +01:00
liamcottle 5a509752a7 don't play startup tune if buzzer pref disabled 2026-05-02 01:47:35 +12:00
Liam Cottle 2522492cd7 Merge pull request #2436 from chrisdavis2110/rak3401-comp-ana-button
feat: Add support for PIN_USER_BTN_ANA on rak3401 companion usb and companion ble envs
2026-04-30 16:57:00 +12:00
chrisdavis2110 0265851621 added PIN_USER_BTN_ANA for rak3401 companion usb and companion ble 2026-04-28 21:26:56 -07:00
liamcottle 5f75b90ff9 added website to companion splash screen 2026-04-28 20:37:17 +12:00
Scott Powell 2325973fec * Companion: applyGPSPrefs() now just in one place (moved out of UITask) 2026-03-25 16:26:51 +11:00
Leah fb025fb67e Add muted icon to show when buzzer is muted 2026-02-11 10:00:20 +01:00
taco 598489be47 refactor ui with ring buffer and display most recent 2026-02-04 09:38:05 +11:00
Steven Linn 44e7c092c8 Add battery min/max voltage parameter support 2026-01-28 22:24:49 -07:00
liquidraver e855706abb move showalert after saveprefs 2025-12-17 21:27:22 +01:00
fdlamotte 01f7a3c95e Merge pull request #1057 from liquidraver/wiodev
Disable screen switching on when connected
2025-12-04 11:10:51 +01:00
ripplebiz 0082149c60 Merge pull request #996 from mattzzw/dev
Add display of IP address to companion screen
2025-12-03 13:52:48 +11:00
csrutil 39503ad0b4 move GPS preference initialization to UITask 2025-11-29 18:35:34 +08:00
csrutil c641beabd3 https://github.com/meshcore-dev/MeshCore/issues/989 - persist GPS enabled state to preferences
Add GPS configuration to NodePrefs structure and persist the GPS
enabled state when toggled via UI. This ensures GPS settings are
retained across device restarts.
2025-11-29 16:37:23 +08:00
Florent 1c0017b634 thinknode_m5: gps support 2025-11-28 13:15:11 +01:00
Florent ee4e87c3ee thinknode_m5: manage baclight 2025-11-28 10:33:19 +01:00
ripplebiz 13bf82f1c4 Merge pull request #1130 from zaquaz/buzzer-feature-pr
Added buzzer config persistance across restart
2025-11-27 16:04:44 +11:00
Frieder Schrempf 048bd268a1 companion: ui: Respect LED_STATE_ON for status LED
The current logic only works for active high LEDs. Some boards need
an active low level control and therefore they set LED_STATE_ON to 0.
Take this into account and use the correct LED pattern for both cases.

Signed-off-by: Frieder Schrempf <frieder@fris.de>
2025-11-22 15:05:08 +01:00
Jaroslav Škarvada 07e7e2d44b companion: Suspend radio when hibernating
This should significantly reduce power consumption in hibernation.

Fixes: #1014

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
Signed-off-by: Frieder Schrempf <frieder@fris.de> # generalize for all radios and UIs
2025-11-22 15:05:01 +01:00
zaquaz 2bd47de3b9 Added buzzer config persistance accross restart 2025-11-20 19:02:32 -08:00
liquidraver eae16cfc5f less unnecessary comments, less lines of code :) 2025-11-03 21:39:35 +01:00
liquidraver 397d280c3b stop OLED powering on every message if connected to phone 2025-11-03 21:25:31 +01:00
Adam Mealings c13b4ae481 Analogue button delay based on millis 2025-10-31 13:04:59 +00:00