M5Dial, high power consumption during deep sleep.
-
I have powered the M5Dial with an external power supply (small green connector).
During deep sleep the current is 40 mA. No other devices connected. Am i using the wrong deep sleep mode? Any suggestions are welcome
My code for deep sleep:
WiFi.mode(WIFI_OFF);
btStop();
adc_power_off();
gpio_wakeup_enable(GPIO_NUM_42, GPIO_INTR_LOW_LEVEL); // schijnt niet te werken met deep sleep
esp_sleep_enable_gpio_wakeup();
esp_sleep_enable_timer_wakeup(30 * uS_TO_S_FACTOR);esp_sleep_pd_config(ESP_PD_DOMAIN_MAX, ESP_PD_OPTION_OFF); //esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_OFF); esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_SLOW_MEM, ESP_PD_OPTION_OFF); esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_FAST_MEM, ESP_PD_OPTION_OFF); //esp_light_sleep_start(); esp_deep_sleep_start();
-
In think my last reply in your other thread about the RTC might give some insight to why you (probably) can't do it like this with the M5dial
-
Further..... your are measuring the current consumption on the Vin (I assume the green connector you mentioned) which seems to be connected directly to a buck converter (ME3116....) which in turn supplies also directly( i.e. always) the board battery charger (TP4057).
So:
- The Buck converter will have some kind of idle consumption (I haven't checked the data sheet.)
- if the battery is being charged it could draw some significant current..
-
Try to supply it with a battery (disconnect the source from the Vin green conn.) and measure the consumption from the battery while having the unit in sleep mode.
-
Thank you.
The issue is that I need to power it with a 12 volt battery ( in a remote location). But secondly, I tried this command : M5Dial.Power.timerSleep(5) and then the current goes back to like 10 mA.
I need to I investigate this a bit further. -
I haven't studied all the details of the M5Dial schematic and I don't have one for testing myself so these are just some suggestions shot from the hip:
Check what the power consumption is when it is powered down. There should be a similar function called powerOff(). Referring to my previous explanations in your other thread about the RTC, the power consumption after powerOff() and timerSleep() should the same. If you see a difference there might be a problem with the timerSleep() in the firmware.
You could also try to cycle the 12V externally and see what the consumption is before the M5Dial is switched on. This however, will only work if the power logic is not made so that the device switch on as soon as external power is applied.
Above tests should be done without an "internal" Li-Ion battery attached, but you could also try to measure the consumption from this battery without the external 12V power source. This will tell you whether the power consumption is from the power circuit for external power (buck conv. and Li-Ion Chg.) or from the main part of the M5Dial (ESP, display etc). Again you should measure the same three things as above: powerOff(), timerSleep() and just after having connected the battery.
-
One more thing: Check that the 5Vout goes off when the M5dial is sleeping and when it is powered off.
-
Thank you for your detailed responses. This is an issue i really need to dive into based on the info you have been given. I need some time, but will report my findings asap. Thanks
-
Cheers, I'll be interested in your findings!
As you might have seen in this small "saga" here, I have a similar problem with some (but not all) of my 30+ CoreINK devices which have a similar power control circuit.