08-26-2020 01:54 PM
I'm working on an Open Source Hardware project at the moment and trying to get the BME680 to produce readings while the device goes in and out of deepsleep. The full code is here:
https://github.com/lloydrichards/mimirOpen
But the long and short of it is, that I have a program that wakes up every 5 min, takes reading, and then goes back to sleep. I've tried so far to implement the code from the DeepSleep example by @Dmitry but even if I change the config to (generic_33v_300s_4d) I still have it waking up every three secs.
I've tried saving the state using EEPROM and RTC, but both methods when increasing the sleep to 5 min result in 0 accuracy even after running for 24hrs. I've run the sensors with 3 sec intervals and it works out after 15min or so to get 1 accuracy.
Any help or guidance would be very much appreciated!
Solved! Go to Solution.
08-26-2020 03:31 PM
Hey,
setting the BSEC config file from 3s to 300s doesn't changt the sensor's sampling rate. You need to adapt the sampling rate in the following function accordingly:
sensor.updateSubscription(sensor_list, sizeof(sensor_list) / sizeof(sensor_list[0]), BSEC_SAMPLE_RATE_LP);
shall be
sensor.updateSubscription(sensor_list, sizeof(sensor_list) / sizeof(sensor_list[0]), BSEC_SAMPLE_RATE_ULP);
hope that helps!
BR
08-27-2020 01:43 PM
what a rookie mistake 😅 yes that did indeed work. Takes about an hour or so to get accuracy 1 but after leaving it overnight I was able to get accuracy 3. thanks so much!