firmware/variants
Jonathan Bennett 4feaec651f
Unify the native display config between legacy display and MUI (#6838)
* Add missed include

* Another Warning fix

* Add another HAS_SCREEN

* Namespace fixes

* Removed depricated destination types and re-factored destination screen

* Get rid of Arduino Strings

* Clean up after Copilot

* SixthLine Def, Screen Rename

Added Sixth Line Definition Screen Rename, and Automatic Line Adjustment

* Consistency is hard - fixed "Sixth"

* System Frame Updates

Adjusted line construction to ensure we fit maximum content per screen.

* Fix up notifications

* Add a couple more ifdef HAS_SCREEN lines

* Add screen->isOverlayBannerShowing()

* Don't forget the invert!

* Adjust Nodelist Center Divider

Adjust Nodelist Center Divider

* Fix variable casting

* Fix entryText variable as empty before update to fix validation

* Altitude is int32_t

* Update PowerTelemetry to have correct data type

* Fix cppcheck warnings (#6945)

* Fix cppcheck warnings

* Adjust logic in Power.cpp for power sensor

---------

Co-authored-by: Jason P <applewiz@mac.com>

* More pixel wrangling so things line up NodeList edition

* Adjust NodeList alignments and plumb some background padding for a possible title fix

* Better alignment for banner notifications

* Move title into drawCommonHeader; initial screen tested

* Fonts make spacing items difficult

* Improved beeping booping and other buzzer based feedback (#6947)

* Improved beeping booping and other buzzer based feedback

* audible button feedback (#6949)

* Refactor

---------

Co-authored-by: todd-herbert <herbert.todd@gmail.com>

* Sandpapered the corners of the notification popup

* Finalize drawCommonHeader migration

* Update Title of Favorite Node Screens

* Update node metric alignment on LoRa screen

* Update the border for popups to separate it from background

* Update PaxcounterModule.cpp with CommonHeader

* Update WiFi screen with CommonHeader and related data reflow

* It was not, in fact, pointing up

* Fix build on wismeshtap

* T-deck trackball debounce

* Fix uptime on Device Focused page to actually detail

* Update Sys screen for new uptime, add label to Freq/Chan on LoRa

* Don't display DOP any longer, make Uptime consistent

* Revert Uptime change on Favorites, Apply to Device Focused

* Label the satelite number to avoid confusion

* Boop boop boop boop

* Correct GPS positioning and string consistency across strings for GPS

* Fix GPS text alignment

* Enable canned messages by default

* Don't wake screen on new nodes

* Cannedmessage list emote support added

* Fn+e emote picker for freetext screen

* Actually block CannedInput actions while display is shown

* Add selection menu to bannerOverlay

* Off by one

* Move to unified text layouts and spacing

* Still my Fav without an "e"

* Fully remove EVENT_NODEDB_UPDATED

* Simply LoRa screen

* Make some char pointers const to fix compilation on native targets

* Update drawCompassNorth to include radius

* Fix warning

* button thread cleanup

* Pull OneButton handling from PowerFSM and add MUI switch (#6973)

* Trunk

* Onebutton Menu Support

* Add temporary clock icon

* Add gps location to fsi

* Banner message state reset

* Cast to char to satisfy compiler

* Better fast handling of input during banner

* Fix warning

* Derp

* oops

* Update ref

* Wire buzzer_mode

* remove legacy string->print()

* Only init screen if one found

* Unsigned Char

* More buttonThread cleaning

* screen.cpp button handling cleanup

* The Great Event Rename of 2025

* Fix the Radiomaster

* Missed trackball type change

* Remove unused function

* Make ButtonThread an InputBroker

* Coffee hadn't kicked in yet

* Add clock icon for Navigation Bar

* Restore clock screen definition code - whoops

* ExternalNotifications now observe inputBroker

* Clock rework (#6992)

* Move Clock bits into ClockRenderer space

* Rework clock into all device navigation

* T-Watch Actually Builds Different

* Compile fix

---------

Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>

* Add AM/PM to Digital Clock

* Flip Seconds and AM/PM on Clock Display

* Tik-tok pixels are hard

* Fix builds on Thinknode M1

* Check for GPS and don't crash

* Don't endif til the end

* Rework the OneButton thread to be much less of a mess. (#6997)

* Rework the OneButton thread to be much less of a mess. And break lots of targets temporarily

* Update src/input/ButtonThread.h

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix GPS toggle

* Send the shutdown event, not just the kbchar

* Honor the back button in a notificaiton popup

* Draw the right size box for popup with options

* Try to un-break all the things

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* 24-hour Clock Should have leading zero, but not 12-hour

* Fixup some compile errors

* Add intRoutine to ButtonThread init, to get more responsive user button back

* Add Timezone picker

* Fix Warning

* Optionally set the initial selection for the chooser popup

* Make back buttons work in canned messages

* Drop the wrapper classes

* LonPressTime now configurable

* Clock Frame can not longer be blank; just add valid time

* Back buttons everywhere!

* Key Verification confirm banner

* Make Elecrow M* top button a back button

* Add settings saves

* EInk responsiveness fixes

* Linux Input Fixes

* Add Native Trackball/Joystick support, and move UserButton to Input

* No Flight Stick Mode

* Send input event

* Add Channel Utilization to Device Focused frame

* Don't shift screens when we draw new ones

* Add showOverlayBanner arguments to no-op

* trunk

* Default Native trackball to NC

* Fix crash in simulator mode

* Add longLong button press

* Get the args right

* Adjust Bluetooth Pairing Screen to account for bottom navigation.

* Trackball everywhere, and unPhone buttons

* Remap visionmaster secondary button to TB_UP

* Kill ScanAndSelect

* trunk

* No longer need the canned messages input filter

* All Canned All the time

* Fix stm32 compile error regarding inputBroker

* Unify tft lineheights (#7033)

* Create variable line heights based upon SCREEN_HEIGHT

* Refactor textPositions into method -> getTextPositions

* Update SharedUIDisplay.h

---------

Co-authored-by: Jason P <applewiz@mac.com>

* Adjust top distance for larger displays

* Adjust icon sizes for larger displays

* Fix Paxcounter compile errors after code updates

* Pixel wrangling to make larger screens fit better

* Alert frame has precedence over banner -- for now

* Unify on ALT_BUTTON

* Align AM/PM to the digit, not the segment on larger displays

* Move some global pin defines into configuration.h

* Scaffolding for BMM150 9-axis gyro

* Alt button behavior

* Don't add the blank GPS frames without HAS_GPS

* EVENT_NODEDB_UPDATED has been retired

* Clean out LOG_WARN messages from debugging

* Add dismiss message function

* Minor buttonThread cleanup

* Add BMM150 support

* Clean up last warning from dev

* Simplify bmm150 init return logic

* Add option to reply to messages

* Add minimal menu upon selecting home screen

* Move Messages to slot 2, rename GPS to Position, move variables nearer functional usage in Screen.cpp

* Properly dismiss message

* T-Deck Trackball press is not user button

* Add select on favorite frame to launch cannedMessage DM

* Minor wording change

* Less capital letters

* Fix empty message check, time isn't reliable

* drop dead code

* Make UIRenderer a static class instead of namespace

* Fix the select on favorite

* Check if message is empty early and then 'return'

* Add kb_found, and show the option to launch freetype if appropriate

* Ignore impossible touchscreen touches

* Auto scroll fix

* Move linebreak after "from" for banners to maximize screen usage.

* Center "No messages to show" on Message frame

* Start consolidating buzzer behavior

* Fixed signed / unsigned warning

* Cast second parameter of max() to make some targets happy

* Cast kbchar to (char) to make arduino string happy

* Shorten the notice of "No messages"

* Add buzzer mode chooser

* Add regionPicker to Lora icon

* Reduce line spacing and reorder Position screen to resolve overlapping issues

* Update message titles, fix GPS icons, add Back options

* Leftover boops

* Remove chirp

* Make the region selection dismissable when a region is already set

* Add read-aloud functionality on messages w/ esp8266sam

* "Last Heard" is a better label

* tweak the beep

* 5 options

* properly tear down freetext upon cancel

* de-convelute canned messages just a bit

* Correct height of Mail icon in navigation bar

* Remove unused warning

* Consolidate time methods into TimeFormatters

* Oops

* Change LoRa Picker Cancel to Back

* Tweak selection characters on Banner

* Message render not scrolling on 5th line

* More fixes for message scrolling

* Remove the safety next on text overflow - we found that root cause

* Add pin definitions to fix compilation for obscure target

* Don't let the touchscreen send unitialized kbchar values

* Make virtual KB just a bit quicker

* No more double tap, swipe!

* Left is left, and Right is right

* Update horizontal lightning bolt design

* Move from solid to dashed separator for Message Frame

* Single emote feature fix

* Manually sort overlapping elements for now

* Freetext and clearer choices

* Fix ESP32 InkHUD builds on the unify-tft branch (#7087)

* Remove BaseUI branding

* Capitalization is fun

* Revert Meshtastic Boot Frame Changes

* Add ANZ_433 LoRa region to picker

* Update settings.json

---------

Co-authored-by: HarukiToreda <116696711+HarukiToreda@users.noreply.github.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Jason P <applewiz@mac.com>
Co-authored-by: todd-herbert <herbert.todd@gmail.com>
Co-authored-by: Thomas Göttgens <tgoettgens@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-21 06:36:04 -05:00
..
ai-c3
betafpv_900_tx_nano
betafpv_2400_tx_micro Update variant.h (#5140) 2024-10-25 08:07:01 +10:00
bpi_picow_esp32_s3
canaryone update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
CDEBYTE_E77-MBL Speed up builds by referencing github zips for shallow checkouts (#6441) 2025-03-29 06:19:05 -05:00
CDEBYTE_EoRa-S3
chatter2 Upgrade to LovyanGFX 1.2 (#5677) 2025-01-12 15:16:26 +08:00
crowpanel-esp32s3-5-epaper Update platformio.ini (#6512) 2025-04-07 07:04:31 -05:00
diy XIAO BLE cleanup (supporting changes to seeed_xiao_nrf52840_kit too) (#7024) 2025-06-19 18:51:33 -05:00
Dongle_nRF52840-pca10059-v1 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
dreamcatcher Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
EBYTE_ESP32-S3 Remove LED_INVERTED, see below for why ;-) (#4382) 2024-08-05 06:02:32 -05:00
ec_catsniffer update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
elecrow_panel elecrow-adv-35-tft 2025-06-11 10:54:08 -05:00
ELECROW-ThinkNode-M1 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
ELECROW-ThinkNode-M2 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
esp32-s3-pico Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
feather_diy update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
feather_rp2040_rfm95 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
gat562_mesh_trial_tracker add support for GAT562 Mesh Trial Tracker (#6984) 2025-06-13 17:27:48 +10:00
hackerboxes_esp32_io Adding Variants for Hackerboxes ESP32C3 OLED kit and the ESP32 IO Kit (#6319) 2025-03-25 22:57:06 +01:00
hackerboxes_esp32c3_oled Adding Variants for Hackerboxes ESP32C3 OLED kit and the ESP32 IO Kit (#6319) 2025-03-25 22:57:06 +01:00
heltec_capsule_sensor_v3 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
heltec_esp32c3 Remove LED_INVERTED, see below for why ;-) (#4382) 2024-08-05 06:02:32 -05:00
heltec_hru_3601 Add support for Heltec HRU-3601 2024-06-20 12:30:02 +08:00
heltec_mesh_node_t114 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
heltec_mesh_node_t114-inkhud cppcheck-supress to ignore intentional error 2025-06-15 16:37:19 -05:00
heltec_mesh_pocket Fixed breaking of inkhud / tft suffix convention 2025-06-13 06:59:05 -05:00
heltec_sensor_hub Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
heltec_v1
heltec_v2 I thought these were already board level extra 2024-10-16 07:34:24 -05:00
heltec_v2.1 I thought these were already board level extra 2024-10-16 07:34:24 -05:00
heltec_v3 Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
heltec_vision_master_e213 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
heltec_vision_master_e290 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
heltec_vision_master_t190 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
heltec_wireless_bridge Improve support for Heltec Wireless Bridge (#6647) 2025-06-10 13:54:07 +10:00
heltec_wireless_paper Revert "Add a new screen for heltec_wireless_paper. (#6894)" (#6918) 2025-05-29 10:17:20 -05:00
heltec_wireless_paper_v1 Fixes BUG #6243 Heltec Tracker (#6781) 2025-05-14 06:29:05 -05:00
heltec_wireless_tracker Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
heltec_wireless_tracker_V1_0 Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
heltec_wsl_v2.1 Heltec Wireless Stick Lite V1/V2 support (#5808) 2025-01-12 13:17:40 +08:00
heltec_wsl_v3 Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
icarus Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
link32_s3_v1 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
m5stack_core Upgrade to LovyanGFX 1.2 (#5677) 2025-01-12 15:16:26 +08:00
m5stack_coreink Dependencies: minor version updates (#6045) 2025-02-19 06:32:38 -06:00
m5stack_cores3 Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
m5stack-stamp-c3
MakePython_nRF52840_eink update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
MakePython_nRF52840_oled update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
ME25LS01-4Y10TD update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
ME25LS01-4Y10TD_e-ink update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
mesh-tab Crowpanel 4.3, 5.0, 7.0 support (#6611) 2025-05-13 14:15:52 +02:00
meshlink update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
meshlink_eink update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
monteops_hw1 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
MS24SF1 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
my_esp32s3_diy_eink PIO: Cleanup dependency naming (#6090) 2025-02-19 18:14:54 -06:00
my_esp32s3_diy_oled PIO: Cleanup dependency naming (#6090) 2025-02-19 18:14:54 -06:00
nano-g1 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
nano-g1-explorer Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
nano-g2-ultra update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
nibble_esp32 add nugget and nibble boards for 38c3 (#5609) 2024-12-21 14:57:01 +01:00
nibble_rp2040 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
nugget_s2_lora add nugget and nibble boards for 38c3 (#5609) 2024-12-21 14:57:01 +01:00
nugget_s3_lora Fix nugget s3 lora variant issues (#7070) 2025-06-19 18:48:22 -05:00
picomputer-s3 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
portduino Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
portduino-buildroot Portduino: specify C++ version and add link pthread (#5642) 2024-12-21 11:13:03 -06:00
radiomaster_900_bandit Speed up builds by referencing github zips for shallow checkouts (#6441) 2025-03-29 06:19:05 -05:00
radiomaster_900_bandit_micro Added Radiomaster Bandit Nano and Radiomaster Bandit Micro to default_envs. (#4077) 2024-06-11 14:51:39 -05:00
radiomaster_900_bandit_nano Radio Master Joystick (#4476) 2024-08-17 05:51:53 -05:00
rak2560 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
rak3172 implement littlefs for stm32 (#5987) 2025-03-21 16:12:27 +01:00
rak4631 Add rak12035 VB Soil Monitor Tested & Working (#6741) 2025-06-19 18:51:03 -05:00
rak4631_epaper Add rak12035 VB Soil Monitor Tested & Working (#6741) 2025-06-19 18:51:03 -05:00
rak4631_epaper_onrxtx Add rak12035 VB Soil Monitor Tested & Working (#6741) 2025-06-19 18:51:03 -05:00
rak4631_eth_gw Add rak12035 VB Soil Monitor Tested & Working (#6741) 2025-06-19 18:51:03 -05:00
rak4631_nomadstar_meteor_pro [Variant] nomadstar meteor pro (#6742) 2025-06-10 07:48:52 +10:00
rak11200 Update variant.h 2024-09-17 15:24:11 +08:00
rak11310 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
rak_wismeshtap Add rak12035 VB Soil Monitor Tested & Working (#6741) 2025-06-19 18:51:03 -05:00
rp2040-lora update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
rpipico update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
rpipico2 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
rpipico2w update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
rpipico-slowclock update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
rpipicow update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
seeed_solar_node update seeed solar node led pin (#6871) 2025-05-23 08:04:17 -05:00
seeed_wio_tracker_L1 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
seeed_xiao_nrf52840_kit fix(xiao_ble): Typo preventing SX1262 init (SX126X_CS gets stuck) (#7094) 2025-06-21 06:17:46 -05:00
seeed_xiao_s3 Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
seeed-sensecap-indicator Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
senselora_rp2040 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
station-g1 Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
station-g2 Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
t-deck Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
t-echo Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
t-eth-elite Speed up builds by referencing github zips for shallow checkouts (#6441) 2025-03-29 06:19:05 -05:00
t-watch-s3 Crowpanel 4.3, 5.0, 7.0 support (#6611) 2025-05-13 14:15:52 +02:00
tbeam Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
tbeam_v07 Making some board levels extra for uncommon hardware 2024-09-28 13:04:50 -05:00
tbeam-s3-core Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
tlora_c6 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
tlora_t3s3_epaper InkHUD Extended ASCII (#6768) 2025-05-22 18:16:53 -05:00
tlora_t3s3_v1 use rfswitch definition and update radiolib 2024-09-28 19:07:11 +02:00
tlora_v1 fix: set upload_speed for tlora_v1 (#6601) 2025-04-16 06:15:16 -05:00
tlora_v1_3 fix: set upload_speed for tlora_v1_3 & tlora_v2_1_16 (#6595) 2025-04-15 20:39:13 -05:00
tlora_v2 I thought these were already board level extra 2024-10-16 07:34:24 -05:00
tlora_v2_1_16 fix: set upload_speed for tlora_v1_3 & tlora_v2_1_16 (#6595) 2025-04-15 20:39:13 -05:00
tlora_v2_1_16_tcxo fix: set upload_speed for tlora_v1_3 & tlora_v2_1_16 (#6595) 2025-04-15 20:39:13 -05:00
tlora_v2_1_18 Support TLORA_V3.0 (#5563) 2024-12-14 10:59:15 +01:00
tlora_v3_3_0_tcxo mainline tlora v3 (#6322) 2025-03-15 11:30:58 +01:00
tracker-t1000-e update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
trackerd PIO: Cleanup dependency naming (#6090) 2025-02-19 18:14:54 -06:00
tracksenger Increase MAX_NUM_NODES on high-flash ESP32_S3 (#6311) 2025-03-18 20:19:51 -05:00
TWC_mesh_v4 Dependencies: minor version updates (#6045) 2025-02-19 06:32:38 -06:00
unphone Unify the native display config between legacy display and MUI (#6838) 2025-06-21 06:36:04 -05:00
wio-e5 implement littlefs for stm32 (#5987) 2025-03-21 16:12:27 +01:00
wio-sdk-wm1110 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
wio-t1000-s update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
wio-tracker-wm1110 update bosch bsec2 (#6727) 2025-05-05 06:03:36 -05:00
wiphone Fix WiPhone variant.h (#6664) 2025-04-24 20:40:48 -05:00