diff --git a/src/sleep.cpp b/src/sleep.cpp index c25e3473e..e612b0032 100644 --- a/src/sleep.cpp +++ b/src/sleep.cpp @@ -309,8 +309,13 @@ esp_sleep_wakeup_cause_t doLightSleep(uint64_t sleepMsec) // FIXME, use a more r // assert(esp_sleep_enable_uart_wakeup(0) == ESP_OK); #endif #ifdef BUTTON_PIN +#if SOC_PM_SUPPORT_EXT_WAKEUP esp_sleep_enable_ext0_wakeup((gpio_num_t)(config.device.button_gpio ? config.device.button_gpio : BUTTON_PIN), LOW); // when user presses, this button goes low +#else + esp_sleep_enable_gpio_wakeup(); + gpio_wakeup_enable((gpio_num_t)BUTTON_PIN, GPIO_INTR_LOW_LEVEL); +#endif #endif #if defined(LORA_DIO1) && (LORA_DIO1 != RADIOLIB_NC) gpio_wakeup_enable((gpio_num_t)LORA_DIO1, GPIO_INTR_HIGH_LEVEL); // SX126x/SX128x interrupt, active high diff --git a/variants/ai-c3/platformio.ini b/variants/ai-c3/platformio.ini index 76ecd9f0f..fbc6b51fa 100644 --- a/variants/ai-c3/platformio.ini +++ b/variants/ai-c3/platformio.ini @@ -2,7 +2,13 @@ extends = esp32c3_base board = esp32-c3-devkitm-1 board_level = extra -build_flags = - ${esp32_base.build_flags} +build_flags = ${esp32c3_base.build_flags} -D PRIVATE_HW -I variants/ai-c3 +; as long as BSEC2 Software Library is not supported remove Sensors from build +build_src_filter = ${esp32c3_base.build_src_filter} + - + - + - +lib_ignore = ${esp32c3_base.lib_ignore} + BSEC Software Library diff --git a/variants/ai-c3/variant.h b/variants/ai-c3/variant.h index 05f0abb51..2db91ccab 100644 --- a/variants/ai-c3/variant.h +++ b/variants/ai-c3/variant.h @@ -1,26 +1,33 @@ -// #define BUTTON_NEED_PULLUP // if set we need to turn on the internal CPU pullup during sleep +#define HAS_TELEMETRY 0 // as long as BSEC2 is not supported +#define HAS_SENSOR 0 // as long as BSEC2 is not supported -#define I2C_SDA 8 -#define I2C_SCL 9 +#define SDA 0 +#define SCL 1 +#define I2C_SDA SDA +#define I2C_SCL SCL -#define BUTTON_PIN 0 +#define BUTTON_PIN 9 // BOOT button +#define LED_PIN 30 // RGB LED #define USE_RF95 -#undef RF95_SCK #define RF95_SCK 4 -#undef RF95_MISO #define RF95_MISO 5 -#undef RF95_MOSI #define RF95_MOSI 6 -#undef RF95_NSS #define RF95_NSS 7 -#define LORA_DIO0 10 // a No connect on the SX1262 module -#define LORA_DIO1 3 // a No connect on the SX1262 module +#define LORA_DIO0 10 +#define LORA_DIO1 3 #define LORA_RESET 2 +// WaveShare Core1262-868M +// https://www.waveshare.com/wiki/Core1262-868M +#define USE_SX1262 +#define SX126X_CS RF95_NSS +#define SX126X_DIO1 LORA_DIO1 +#define SX126X_BUSY 10 +#define SX126X_RESET LORA_RESET +#define SX126X_E22 // use DIO2 as RF switch + +#define HAS_GPS 0 #undef GPS_RX_PIN #undef GPS_TX_PIN - -#define HAS_SCREEN 0 -#define HAS_GPS 0