The screen of the heltec wireless tracker uses the same power source as the GPS. If the GPS turns off the power during the screen shutdown period and then turns on the power, the screen will not function properly. So initialize the screen every time it starts.
* Enable GPS for Wio-E5 variant on Serial2
* Add ability to override GPS serial port using GPS_SERIAL_PORT, and make RAK2560 use it.
* Don't try to send ATAK packets if ATAK is disabled, +4k flash
* No delay between UI frame rendering for OLED
* force redraw the display
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Jason P <applewiz@mac.com>
* feat(display): enable screen wake on received messages
* feat(menu): add Screen Wakeup option in system menu
* feat(ui): update wake on message configuration and refactor save logic
* feat(TextMessageModule): conditionally trigger screen wake on received message
* Refactoring system menu options for notification and screen.
* Fix MUI options in the system menu.
* Build out Reboot/Shutdown Menu and consolidate options within it
* Trunk fixes
* Protobuf ref
* Revert generated files
* Update plumbing for screen_wakeup_menu
* Begin work on crafting a method to stop screen wake for received messages
* SharedUIDisplay.cpp doesn't need ExternalNotificationModule.h
* Stop screen wake if External Notification is enabled
* Removing extra log lines
* Add role and battery state checks for not waking screen. Menu updates to resolve some Back options not being linked
* Resolve some additional merge conflict related issues
* Shouldn't throttle the power menu
* Finalize renames of some menus
* Flip Flop MUI Menu to avoid accidental clicks
* NULL check for powerStatus
* Remove "Wakeup" eNum
* Update src/graphics/Screen.cpp
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* CoPilot was close this should fix the builds
---------
Co-authored-by: whywilson <m.tools@qq.com>
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Tests to identify display model
* (InkHUD) SSD1682 controller IC
Has a few quirks, gets its own base class
* (InkHUD) E0213A367 Display
For Heltec Wireless Paper V1.1.1, V1.2
For Heltec VM-E213 V1.1
* (InkHUD) Select display model at boot
* (BaseUI) Wrapper to combine multiple GxEPD2 drivers
Workaround for issue of GxEPD2_BW objects not having a shared base class. Allows us to select a driver at runtime.
https://github.com/meshtastic/firmware/issues/6851#issuecomment-2905353447
* (BaseUI) Select E-Ink model at boot
* (InkHUD) SSD1682 deep sleep
* (InkHUD) No deep sleep for SSD1682
* (InkHUD) Fully no-op deep sleep for SSD1682
As reported by @KZ1R , Kazakhstan has frequencies in use for Lora devices that are not covered by our existing band selections.
This adds
* KZ_433 433.075 - 434.775 MHz <10 mW EIRP, Low Powered Devices (LPD)
* KZ_863 863 - 868 MHz <25 mW EIRP, 500kHz channels allowed, must not be used at airfields
Legal ref provided in https://github.com/meshtastic/firmware/issues/7204 and verified.
https://www.gov.kz/memleket/entities/mdai/press/article/details/6128
Order of the Ministry of Investments and Development of the Republic of Kazakhstan No. 34 dated January 21, 2015.
Published on 01 July 2024 19:03 Updated on 01 July 2024
Fixes https://github.com/meshtastic/firmware/issues/7204
* Testing battery states with some info lines in the drawCommonHeader
* Update logic of USB connected, update images for states
* Tweak battery layout for isHighResolution
* Hide the magic 101%
* Adjust padding for SENSECAP_INDICATOR
* Excessive logs are unnecessary as troubleshooting is done.
* Reduce excess code - simplify readability
* Restore Lightning Bolt for Charging and related alignment issues
---------
Co-authored-by: Jonathan Bennett <jbennett@incomsystems.biz>
* Honor custom boot screen from userPrefs.jsonc
* Meshtastic logo when powered off, userPrefs logo at boot
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
* Initial work on splitting notification renderer into components for reuse
* More progress
* Fix notification popup
* more fix, less crash
* Adjustments for OLED on keeping menus tidy, added Bluetooth Toggle to Home frame. Also widen the frame slightly if you have a scroll bar
* Small changes for EInk to not crowd elements
* Change System frame menu over to better match actions; added color picker for T114
* Fix build errors and add T190 for testing
* Logic gates are hard sometimes
* Screen Color Picker changes, defined Yellow as a Color.
* Additional colors and tuning
* Abandon std::sort in NodeDB, and associated fixes (#7175)
* Generate short name for nodes that don't have user yet
* Add reboot menu
* Sort fixes
* noop sort option to avoid infinite loop
* Refactor Overlay Banner
* Continuing work on Color Picker
* Add BaseUI menus to add and remove Favorited Nodes
* Create TFT_MESH_OVERRIDE for variants.h and defined colors
* Trigger a NodeStatus update at the end of setup() to get fresh data on display at boot.
* T114 defaults to White, Yellow is now bright Yellow
* Revert "T114 defaults to White, Yellow is now bright Yellow"
This reverts commit 8d05e17f11.
* Only show OEM text if not OLED
* Adjust OEM logo to maximize visible area
* Start plumbing in Color Picker changes
* Finished plumbing
* Fix warning
* Revert "Fix warning"
This reverts commit 2e8aecd52d.
* Fix display not fully redrawing
* T-Deck should get color too
* Emote Revamp
* Update emotes.cpp
* Poo Emote fix
* Trunk fix
* Add secret test menu and number picker
* Missed bits
* Save colors between reboots
* Save Clock Face election to protobuf
* Make reboot first, then settings
* Add padding for single line pop-ups
* Compass saving and faster menus
* Resolve build issue with Excluding GPS
* Resolve issue with memory bars on EInk
* Add brightness settings for supported screen (#7182)
* Add brightness menu.
* add loop destination selection.
* Bring back color (and sanity) to the menus!
* Trunk
---------
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
Co-authored-by: Jason P <applewiz@mac.com>
Co-authored-by: HarukiToreda <116696711+HarukiToreda@users.noreply.github.com>
Co-authored-by: Wilson <m.tools@qq.com>
* Add 12pt fonts
* Add fontMedium
In addition to fontSmall and fontLarge
* Set fonts in nicheGraphics.h
* Change all uses of fontLarge to fontMedium
fontLarge was previously set at 9pt. fontLarge is now 12pt, fontMedium is 9pt. (NB: fonts may be customized per-variant)
* Use fontLarge with "All Messages" and "DMs" applets
* Documentation