Wykres commitów

21 Commity (master)

Autor SHA1 Wiadomość Data
Thomas Göttgens 2d565c2921 trunk'd 2025-03-16 16:18:12 +01:00
HarukiToreda 2525111c39
E-ink partial refresh limitation removed for free text screen (#6201) 2025-03-16 16:15:33 +01:00
Thomas Göttgens 5c17afb2ac
Clean up some legacy macro definitions (#5983) 2025-02-03 09:36:05 -06:00
Ben Meadors 982190936d
More log reductions. I'll probably stop now ;-) (#5263) 2024-11-06 21:03:25 +08:00
Ben Meadors f769c50fa5
More reduction (#5256)
* Now with even fewer ings

* Ye

* Mo

* QMA6100PSensor
2024-11-04 19:15:59 -06:00
Thomas Göttgens 05e4a639a1
remove newline from logging statements. (#5022)
remove newline from logging statements in code. The LOG_* functions will now magically add it at the end.

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-10-14 15:11:43 +11:00
Ben Meadors e8829b8f52
Refactor and consolidate time window logic (#4826)
* Refactor and consolidate windowing logic

* Trunk

* Fixes

* More

* Fix braces and remove unused now variables.

There was a brace in src/mesh/RadioLibInterface.cpp that was breaking
compile on some architectures.

Additionally, there were some brace errors in
src/modules/Telemetry/AirQualityTelemetry.cpp
src/modules/Telemetry/EnvironmentTelemetry.cpp
src/mesh/wifi/WiFiAPClient.cpp

Move throttle include in WifiAPClient.cpp to top.

Add Default.h to sleep.cpp

rest of files just remove unused now variables.

* Remove a couple more meows

---------

Co-authored-by: Tom Fifield <tom@tomfifield.net>
2024-09-23 08:58:14 -05:00
todd-herbert 92526fca23
"Scan and Select" input for Canned Messages (#4365)
* Add "Scan and Select" input method for canned messages

* Adapt canned message drawing if USE_EINK
* Indicate current selection with indent rather than inverse text
* Avoid large text on "sending" and delivery report pop-ups
* Fit SNR and RSSI details on screen

* Change hash function which detects changes in E-Ink images
The old function struggled to distingush between images on the canned-message frame, failing to update when scrolling between messages. No real justification for the new algorithm, other than "it works" and doesn't seem "too expensive". For context, this function runs once a second.

* Use canned messages (scan and select) by default with HT-VME213 and HT-VME290

* Guard for HAS_SCREEN
2024-08-06 17:16:56 -05:00
todd-herbert 4599534616
Terminate an async-full-refresh when caught by determineMode() instead of onNotify() (#3706) 2024-04-23 12:00:48 -05:00
todd-herbert 46a63bf293
Handle edge cases for E-Ink screensaver (#3518)
* remove redundant logic

* Handle special screens for old EInkDisplayClass

* Handle special screens for EInkDynamicDisplay class

* Join an async refresh in progress to avoid skipping screensaver

* attempt trunk fix
2024-03-31 07:04:05 -05:00
todd-herbert 8187fa7115
E-Ink Screensaver (#3477)
* fix Wireless Paper double-clear screen at boot

* log when flooded with "responsive" frames

* show the "resuming" screen when waking from deep-sleep

* rename drawDeepSleepScreen
avoid future confusion with "Screen Paused" screen

* show a screensaver frame when screen off
The frame shown during deep sleep is now also passed through showScreensaverFrames()

* Add macros for E-Ink color values.
OLEDDISPLAY_COLOR is inverted. Result of light-mode on E-Ink vs dark-mode on OLED?

* adapt drawDeepSleepScreen to new screensaver convention

* Mark Wireless Paper V1.1 as having problems with ghosting
Any other issues can be marked in a similar way, then handled in code where relevant

* Change screensaver from fullscreen logo to overlay

* identify "quirks" rather than "problems"

* move async refresh polling from display() to a NotifiedWorkerThread

* Prevent skipping of deep-sleep screen
(Hopefully)

* Redesign screensaver overlay
Now displays short name

* Optimize refresh for different displays

* Support older EInkDisplay class

* Don't assume text alignment

* fix spelling of a quirk macro
(No impact to code, but avoids future issues)

* Handle impossibly unlikely millis() overflow error
Should have just let it go, but here we are..

---------

Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-03-28 18:31:11 -05:00
Todd Herbert 1032e16ea4 reorder determineMode() checks 2024-03-11 01:02:03 +13:00
Todd Herbert 3daae24d29 fix fallback behavior for unmodified GxEPD2
Issues exposed by https://github.com/meshtastic/firmware/pull/3356#issuecomment-1986950317
2024-03-10 13:43:57 +13:00
Todd Herbert a9c07a4c01 add frameFlags to LOG_DEBUG() messages 2024-03-10 04:07:51 +13:00
Todd Herbert e232e3462c add BLOCKING modifier to frameFlagTypes 2024-03-10 03:48:59 +13:00
Todd Herbert 94794edd43 add init code as a determineMode() check 2024-03-10 03:43:07 +13:00
Todd Herbert 95b6f27d2a change order of determineMode() checks 2024-03-10 03:38:39 +13:00
Todd Herbert efd818fe90 move storeAndReset() to end of update() 2024-03-10 03:07:13 +13:00
Todd Herbert 576f582cd9 rename setFrameFlag() method 2024-03-10 02:30:16 +13:00
Todd Herbert 07da130586 Async full-refresh for EInkDynamicDisplay 2024-03-09 09:30:34 +13:00
todd-herbert c659292836
Reimplement "Dynamic E-Ink" as a derived class (#3316)
Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
2024-03-02 20:07:29 -06:00