Lowering energy consumption

Inquiry and support for Freematics products
Post Reply
juliuslt
Posts: 4
Joined: Sat Jul 24, 2021 3:47 am

Lowering energy consumption

Post by juliuslt »

Hi there,
I currently have Freematics ONE+ Model H. I have my code compiled and uploaded into the device, which collects data when the car is running. I want to leave my Freematics in the car when the car is not running, for the convenience reasons.

Currently, I am using the ESP deep sleep to keep the power usage low, however it draws about 0.07 A (measured on 5V). Device wakes up every minute, checks if OBD connection can be initialized and goes back to deep sleep if connection failed.

Is there any better way to make the device track if the vehicle is running? Also, maybe there is a way to decrease power consumption while in "sleep mode"? Thanks.
stanley
Site Admin
Posts: 1018
Joined: Sat Mar 01, 2014 3:15 am

Re: Lowering energy consumption

Post by stanley »

You can consider using ESP32's power management API to lower CPU clock while in stand by.
smith
Posts: 3
Joined: Tue Nov 16, 2021 9:18 am

Re: Lowering energy consumption

Post by smith »

I have the same problem.

In deep sleep, the ESP32 should use ~ 10 microamps (https://lastminuteengineers.com/esp32-s ... nsumption/), however my current draw during ESP32 deep sleep is, at best, 110mA.

Stanley, how can this be reduced? I understand that the MEMS, SIM7600, GNSS, and OBD coprocessor may be drawing current, and am using the following commands to power them down. Could you perhaps clarify the correct commands for each, and if there are other current drains that need to be addressed? What is the minimum current draw we should be able to reach with every component powered down too?

OBD:

Code: Select all

// obd is a COBD object
obd.uninit();
obd.enterLowPowerMode();
MEMS:

Code: Select all

// mems is a ICM_20948_I2C object
mems->end();
GNSS:

Code: Select all

// freematicsLibrary is a FreematicsESP32 object
freematicsLibrary->gpsEnd()
SIM76000:

Code: Select all

sendCommand("AT+CPOF\r");
Thanks
Last edited by smith on Tue Nov 30, 2021 2:47 pm, edited 1 time in total.
stanley
Site Admin
Posts: 1018
Joined: Sat Mar 01, 2014 3:15 am

Re: Lowering energy consumption

Post by stanley »

With GPS, cellular module turned off and no wifi connection, are you still getting 110mA? You can test by uploading a code doing nothing.
smith
Posts: 3
Joined: Tue Nov 16, 2021 9:18 am

Re: Lowering energy consumption

Post by smith »

Hi Stanley,

With the following, I get 60mA.

Code: Select all

void setup() {}
void loop() {
	esp_deep_sleep_start();
}
From this, I have two questions...

1. What is using 60mA? (Is it possible to reach lower power consumption?)
2. How can I properly power down all components (GPS, cellular, wifi, etc.) to get to this 60mA when moving from operational to sleeping?
juliuslt
Posts: 4
Joined: Sat Jul 24, 2021 3:47 am

Re: Lowering energy consumption

Post by juliuslt »

Also, is there any way to get back from the sleep mode automatically, without checking for obd connection? For example, using ESP light sleep and checking for some obd pin?
Post Reply