mirror of
https://github.com/meshtastic/firmware.git
synced 2025-06-08 06:02:05 +00:00
Only init screen if one found
This commit is contained in:
parent
3955a5616e
commit
75e41c1604
@ -256,6 +256,7 @@ int32_t ButtonThread::runOnce()
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (btnEvent != BUTTON_EVENT_NONE) {
|
if (btnEvent != BUTTON_EVENT_NONE) {
|
||||||
|
if (screen) {
|
||||||
#if HAS_SCREEN
|
#if HAS_SCREEN
|
||||||
switch (btnEvent) {
|
switch (btnEvent) {
|
||||||
case BUTTON_EVENT_PRESSED: {
|
case BUTTON_EVENT_PRESSED: {
|
||||||
@ -312,7 +313,8 @@ int32_t ButtonThread::runOnce()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
btnEvent = BUTTON_EVENT_NONE;
|
btnEvent = BUTTON_EVENT_NONE;
|
||||||
#else
|
#endif
|
||||||
|
} else {
|
||||||
// On devices without screen: full legacy logic
|
// On devices without screen: full legacy logic
|
||||||
switch (btnEvent) {
|
switch (btnEvent) {
|
||||||
case BUTTON_EVENT_PRESSED: {
|
case BUTTON_EVENT_PRESSED: {
|
||||||
@ -541,7 +543,7 @@ int32_t ButtonThread::runOnce()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
btnEvent = BUTTON_EVENT_NONE;
|
btnEvent = BUTTON_EVENT_NONE;
|
||||||
#endif
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 50;
|
return 50;
|
||||||
|
12
src/main.cpp
12
src/main.cpp
@ -850,9 +850,21 @@ void setup()
|
|||||||
// Initialize the screen first so we can show the logo while we start up everything else.
|
// Initialize the screen first so we can show the logo while we start up everything else.
|
||||||
#if HAS_SCREEN
|
#if HAS_SCREEN
|
||||||
if (config.display.displaymode != meshtastic_Config_DisplayConfig_DisplayMode_COLOR) {
|
if (config.display.displaymode != meshtastic_Config_DisplayConfig_DisplayMode_COLOR) {
|
||||||
|
|
||||||
|
#if defined(ST7701_CS) || defined(ST7735_CS) || defined(USE_EINK) || defined(ILI9341_DRIVER) || defined(ILI9342_DRIVER) || \
|
||||||
|
defined(ST7789_CS) || defined(HX8357_CS) || defined(USE_ST7789) || defined(ILI9488_CS)
|
||||||
|
screen = new graphics::Screen(screen_found, screen_model, screen_geometry);
|
||||||
|
#elif defined(ARCH_PORTDUINO)
|
||||||
|
if ((screen_found.port != ScanI2C::I2CPort::NO_I2C || settingsMap[displayPanel]) &&
|
||||||
|
config.display.displaymode != meshtastic_Config_DisplayConfig_DisplayMode_COLOR) {
|
||||||
screen = new graphics::Screen(screen_found, screen_model, screen_geometry);
|
screen = new graphics::Screen(screen_found, screen_model, screen_geometry);
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
if (screen_found.port != ScanI2C::I2CPort::NO_I2C)
|
||||||
|
screen = new graphics::Screen(screen_found, screen_model, screen_geometry);
|
||||||
#endif
|
#endif
|
||||||
|
}
|
||||||
|
#endif // HAS_SCREEN
|
||||||
// setup TZ prior to time actions.
|
// setup TZ prior to time actions.
|
||||||
#if !MESHTASTIC_EXCLUDE_TZ
|
#if !MESHTASTIC_EXCLUDE_TZ
|
||||||
LOG_DEBUG("Use compiled/slipstreamed %s", slipstreamTZString); // important, removing this clobbers our magic string
|
LOG_DEBUG("Use compiled/slipstreamed %s", slipstreamTZString); // important, removing this clobbers our magic string
|
||||||
|
Loading…
Reference in New Issue
Block a user