#define HAS_PMU false
#define HAS_NP false
#define HAS_EEPROM false
+ #define HAS_INPUT false
+ #define HAS_SLEEP false
#if defined(ENABLE_TCXO)
#define HAS_TCXO true
#elif BOARD_MODEL == BOARD_HELTEC32_V3
#define IS_ESP32S3 true
#define HAS_DISPLAY true
+ #define HAS_INPUT true
+ #define HAS_SLEEP true
#define HAS_BLUETOOTH false
#define HAS_BLE true
// Cannot run wifi and BLE at same time?
#define HAS_CONSOLE false
#define HAS_EEPROM true
+ #define PIN_WAKEUP GPIO_NUM_0
+ #define WAKEUP_LEVEL 0
+
#if defined(EXTERNAL_LEDS)
const int pin_led_rx = 13;
const int pin_led_tx = 14;
const int pin_led_rx = 35;
const int pin_led_tx = 35;
#endif
+ const int pin_btn_usr1 = 0;
#define MODEM SX1262
#define HAS_TCXO true
serial_interrupt_init();
// Configure input and output pins
+ #if HAS_INPUT
+ input_init();
+ #endif
+
#if HAS_NP == false
pinMode(pin_led_rx, OUTPUT);
pinMode(pin_led_tx, OUTPUT);
#if HAS_BLUETOOTH || HAS_BLE == true
if (!console_active && bt_ready) update_bt();
#endif
+
+ #if HAS_INPUT
+ input_read();
+ #endif
+}
+
+void sleep_now() {
+ #if HAS_SLEEP == true
+ esp_sleep_enable_ext0_wakeup(PIN_WAKEUP, WAKEUP_LEVEL);
+ esp_deep_sleep_start();
+ #endif
+}
+
+void button_event(uint8_t event, unsigned long duration) {
+ if (duration > 2000) {
+ sleep_now();
+ }
}
volatile bool serial_polling = false;