-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Unify the native display config between legacy display and MUI #6838
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
|
||
| #if HAS_TFT | ||
| if (config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_COLOR) { | ||
| tftSetup(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I saw that you moved the tftSetup() further down from line 542 by 200 lines which delays the initialization and prolongs the boot process. I actually moved it up a while ago (after sorting out the SPI issues) so that just after switching the device on the screen turns on as well...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I saw that you moved the
tftSetup()further down from line 542 by 200 lines which delays the initialization and prolongs the boot process. I actually moved it up a while ago (after sorting out the SPI issues) so that just after switching the device on the screen turn on as well...
Yeah, unfortunately it now must happen after nodeDB initialization, as that's where the config values get loaded.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe we can store the setting also in NVRAM so that after a reboot the value is immediately available, e.g.
RTC_DATA_ATTR int rtc_displayMode = 0;
if (rtc_displayMode == meshtastic_Config_DisplayConfig_DisplayMode_COLOR)
tftSetup();
|
I've adapted, built, and tested the other TFT targets:
Also, now MUI can revert to former UI. |
| #endif | ||
| #if !MESHTASTIC_EXCLUDE_SOCKETAPI | ||
| initApiServer(); | ||
| if (config.display.displaymode != meshtastic_Config_DisplayConfig_DisplayMode_COLOR) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm wondering about this line. Would it still be possible to
a) use MQTT with MUI
b) attach remote MUI to meshtasticd when set to COLOR, but no X11/FB Panel defined in config.yaml
Same above for webserver.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not 100% sure. I just followed the MESHTASTIC_EXCLUDE_SOCKETAPI=1 from the TFT targets.
I don't think webserver at the same time as MUI makes sense, as they would fight over the API connection. Would be willing to give MQTT a try.
It seems like a really weird state, to set the config to COLOR, and not have any display configured. But we could try to sort it out.
|
Reverting from oled style to MUI takes two steps and needs a phone or CLI: Maybe for T-Deck it's more convenient to add a keyboard shortcut that does these steps to be able to revert without phone (or when phone battery is empty). |
Added Sixth Line Definition Screen Rename, and Automatic Line Adjustment
Adjusted line construction to ensure we fit maximum content per screen.
Adjust Nodelist Center Divider
This is a WIP effort to unify the builds for MUI targets, so the use of the MUI can be a runtime config option, currently config.display.displaymode == meshtastic_Config_DisplayConfig_DisplayMode_COLOR. It's currently the native-tft target and the t-deck, but likely still contains crashes and potential bugs.