Replies: 2 comments 4 replies
-
I don't understand what you're trying to do. In standby mode, the SX126x does not receive any data.
I don't know what gave you the impression something like this was valid - you are mixing together RF switch modes with SX126x standby modes. See the documentation for SX126x::standby. |
Beta Was this translation helpful? Give feedback.
-
I found in the testing process, I set up radio. StartReceiveDutyCycle (50000600, 000); Later let esp32 into sleep, then I found sx1262 will work in the receive mode after a period of time (two to three minutes) into the radio. StartReceiveDutyCycle (50000600 000) that a set of cycles, is there any way to make its directly into this one cycle |
Beta Was this translation helpful? Give feedback.
-
1、Regardless of whether the esp32 is in deep or light sleep, the sx1262 can normally receive data and wake up the device when it is set to accept
void sx1262_deepSleep() {
printf("LoRa Starting to sleep ... \n");
Lcd.sleep();
rtc_gpio_set_direction((gpio_num_t)LORA_IRQ_PIN, RTC_GPIO_MODE_INPUT_ONLY);
rtc_gpio_pulldown_en((gpio_num_t)LORA_IRQ_PIN);
esp_sleep_enable_ext1_wakeup(1ULL << LORA_IRQ_PIN, ESP_EXT1_WAKEUP_ANY_HIGH); // Set to high wakeup
//deep sleep mode
esp_deep_sleep_start();
}
2、If you add radio.standy(), or radio.standby(Module::MODE_RX, true); Power consumption can indeed be reduced, but the IRQ pin cannot be interrupted properly to wake up the esp32
void sx1262_deepSleep() {
printf("LoRa Starting to sleep ... \n");
Lcd.sleep();
radio.standy();
//radio.standby(Module::MODE_RX, true)
rtc_gpio_set_direction((gpio_num_t)LORA_IRQ_PIN, RTC_GPIO_MODE_INPUT_ONLY);
rtc_gpio_pulldown_en((gpio_num_t)LORA_IRQ_PIN);
esp_sleep_enable_ext1_wakeup(1ULL << LORA_IRQ_PIN, ESP_EXT1_WAKEUP_ANY_HIGH); // Set to high wakeup
// deep sleep mode
esp_deep_sleep_start();
}
Beta Was this translation helpful? Give feedback.
All reactions