Closed pbolduc closed 3 years ago
Thanks for the assist on the other issue. I think your suggestion is valid and convenient if users could specify the measurements they wanted (though, I'm not sure if that the best approach).
If you submit a pull request, I'd be happy to verify it on a few boards.
I've created a PR for this feature. I'm not a C++ guy, so please, check and make any changes you think are necessary. All measurements are read, I don't know if this would be a problem.
Thanks @cdonate. Will be in next release.
The readings for the humidity and pressure can be off because they depend on the temperature reading. There is a instance variable t_fine that both humidity and pressure reference. It is only initialized in when reading the temperature. This fact should be documented.
I propose adding a single method that reads all three measurements in a single call to the sensor. In my measurements on a Moteino M0, the time required to read temperature, humidity and pressure can be reduced by about 35% (1139 us vs 1729 us). Reading all values in a single call ensures the sensor values are all from the same measurement.
My first prototype looks like this. However, I am thinking on changing this a bit to align it better with the style of BME280 class with various methods (ie temperature in C / F, altitude in meters / feet). Thoughts?
edit: fixed units from ns to us.