Commit 81844f53 authored by me-no-dev's avatar me-no-dev

Add API to feed the loop WDT (call from loop only)

parent f7cf583b
...@@ -131,10 +131,8 @@ bool setCpuFrequencyMhz(uint32_t cpu_freq_mhz){ ...@@ -131,10 +131,8 @@ bool setCpuFrequencyMhz(uint32_t cpu_freq_mhz){
uint32_t capb, apb; uint32_t capb, apb;
//Get XTAL Frequency and calculate min CPU MHz //Get XTAL Frequency and calculate min CPU MHz
rtc_xtal_freq_t xtal = rtc_clk_xtal_freq_get(); rtc_xtal_freq_t xtal = rtc_clk_xtal_freq_get();
uint32_t min_cpu_mhz = 10;
if(xtal > RTC_XTAL_FREQ_AUTO){ if(xtal > RTC_XTAL_FREQ_AUTO){
if(xtal < RTC_XTAL_FREQ_40M) { if(xtal < RTC_XTAL_FREQ_40M) {
min_cpu_mhz = xtal / 2; //13Mhz for 26Mhz XTAL
if(cpu_freq_mhz <= xtal && cpu_freq_mhz != xtal && cpu_freq_mhz != (xtal/2)){ if(cpu_freq_mhz <= xtal && cpu_freq_mhz != xtal && cpu_freq_mhz != (xtal/2)){
log_e("Bad frequency: %u MHz! Options are: 240, 160, 80, %u and %u MHz", cpu_freq_mhz, xtal, xtal/2); log_e("Bad frequency: %u MHz! Options are: 240, 160, 80, %u and %u MHz", cpu_freq_mhz, xtal, xtal/2);
return false; return false;
......
...@@ -69,6 +69,13 @@ void disableLoopWDT(){ ...@@ -69,6 +69,13 @@ void disableLoopWDT(){
} }
} }
} }
void feedLoopWDT(){
esp_err_t err = esp_task_wdt_reset();
if(err != ESP_OK){
log_e("Failed to feed WDT! Error: %d", err);
}
}
#endif #endif
void enableCore0WDT(){ void enableCore0WDT(){
......
...@@ -77,6 +77,8 @@ float temperatureRead(); ...@@ -77,6 +77,8 @@ float temperatureRead();
//enable/disable WDT for Arduino's setup and loop functions //enable/disable WDT for Arduino's setup and loop functions
void enableLoopWDT(); void enableLoopWDT();
void disableLoopWDT(); void disableLoopWDT();
//feed WDT for the loop task
void feedLoopWDT();
#endif #endif
//enable/disable WDT for the IDLE task on Core 0 (SYSTEM) //enable/disable WDT for the IDLE task on Core 0 (SYSTEM)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment