For battery conservation, we put the ESP32S3 in deep sleep mode but the ZMOD4410 is still powered.
The ZMOD4410 is consuming 30-100ma during the 4 min of the standard initialization, sampling and deinit. We want to initialize the ZMOD4410 once but upon wakeup, operate the ZMOD4410 and collect samples.
To support wakup with no ZMOD4410 initialization, we put the ZMOD4410 libraries and data structures used to operated the ZMOD4410 in memory that is still powered so that values set during the initialization are not lost during deep sleep and the ZMOD441 doesn't have to go through the initialization and calibration operations after the first time. (Specifically, the data structures and libraries were placed into RTC memory.)
As expected for the first time thru, the 10+ "Warmup" values are retrieved and the "valid" result from the first time shows the TVOC is very low and IAQ is 1. The firmware then goes into deep sleep.
On each wakeup, the ZMOD4410 is read again and, as expected, there are no "Warmup" values only "valid" results but the TVOC for the "valid" result is very high and the IAQ is always 4 or 5.
Testing without sleep and wakeup, the TVOC always is very low and IAQ ranges from 1.0 - 1.8.
We suspect that we missed placing something in powered memory to save the value.
Please advise how to place the ZMOD4410 code and libraries into powered memory so that the ESP32S3 deep sleep mode does not affect the performance and operation of the ZMOD4410.
Or perhaps, there is a better way.
Thanks.
Jay
Hi Jay,
Thanks for reaching out to the online support team. Unfortunately, we cannot skip the initialization; the sensor need time to stabilize. Otherwise, the algorithm cannot return the accuracy reading. Our sensor and algorithm are not designed for such "on-demand" application. The sensor and algorithm need to continue running. If you need a low power, you can try our ultra-low power firmware (90s sampling, power consumption ~200uW).
https://www.renesas.com/us/en/document/rln/zmod4410-change-log-2nd-gen-ultra-low-power-firmware?language=en&r=454426
Regards:
Raja.
Hi Raja,
Thanks for replying.
We don't skip the initialization. We initialize on power-up.
But, if we understand you, the ZMOD4410 is designed for continuous sampling on started for accuracy.