Guard for no BUTTON_PIN; handle portduino

This commit is contained in:
Todd Herbert 2025-01-13 23:30:39 +13:00
parent f15897e173
commit 8449ba7341

View File

@ -42,11 +42,18 @@ bool ScanAndSelectInput::init()
else else
pin = 0; // GPIO 0 then pin = 0; // GPIO 0 then
// Short circuit: if selected pin conficts with the user button // Short circuit: if selected pin conficts with the user button
#ifdef USERPREFS_BUTTON_PIN #if defined(ARCH_PORTDUINO)
int pinUserButton = config.device.button_gpio ? config.device.button_gpio : USERPREFS_BUTTON_PIN; // Resolved button pin int pinUserButton = 0;
if (settingsMap.count(user) != 0 && settingsMap[user] != RADIOLIB_NC) {
pinUserButton = settingsMap[user];
}
#elif defined(USERPREFS_BUTTON_PIN)
int pinUserButton = config.device.button_gpio ? config.device.button_gpio : USERPREFS_BUTTON_PIN;
#elif defined(BUTTON_PIN)
int pinUserButton = config.device.button_gpio ? config.device.button_gpio : BUTTON_PIN;
#else #else
int pinUserButton = config.device.button_gpio ? config.device.button_gpio : BUTTON_PIN; // Resolved button pin int pinUserButton = config.device.button_gpio;
#endif #endif
if (pin == pinUserButton) { if (pin == pinUserButton) {
LOG_ERROR("ScanAndSelect conflict with user button"); LOG_ERROR("ScanAndSelect conflict with user button");