Supporting BME680 with BSEC on ESP32 using deep-sleep
I'm thinking of using BME680 and related software with ESP32 using deep-sleep. In deep-sleep, the system turns system RAM off but small part of RAM (RTC_RAM) is kept powered for preserve the state during the sleep. I was thinking of putting data structures from bme680.h, the integration files into the RTC_RAM and initialize everything once during the power-up but after returning from the deep-sleep, I would just trigger measurements (no initializations) as MBE680 is kept all the time powered in (U)LP so it retains its state during the deep-sleep boot-ups.
This part should work fine but I'm not sure if any system data is kept at libalgosec. If there are some data at the algorithm section that needs to be preserved between measurements (or initialized in the library), then this approach would not work and the best I can do is light-sleep. Can you, please, confirm if you store any system data in the algorithm library that would prevent my approach?
Re: Supporting BME680 with BSEC on ESP32 using deep-sleep
The state should be sufficient to resume using BSEC when the the ESP32 is powered back on. If you see a problem in the behavior of the algorithm, for example, the IAQ estimate never calibrates, get back to us.