@Сергей_Ф, я попробовал с разными значениями, но код все равно не правильно срабатывает. После этого я решил вывести reason, она равна 5. Что я делаю не так?
Код:
int REASON_RESET = 0;
extern "C" {
#include "user_interface.h"
}
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
struct rst_info *rstInfo = system_get_rst_info();
uint32_t reason = rstInfo->reason;
Serial.println(reason);
if ( reason == REASON_RESET ){
Serial.println("Button");
} else {
Serial.println("Timer");
}
ESP.deepSleep(30e6);
}