antirez / antirez/bme680-pure-mp
Minor error in formula to calculate air pressure
- Lingua principale
- Python
- Stelle
- 20
- Fork
- 1
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
I think I have found a very, very small error in the calculation of the air pressure. As far as I know, URL https://github.com/boschsensortec/BME68x_SensorAPI/ contains the reference API for handling data from a BME680 sensor. Line 871 in this driver reads:
` var2 = ((((var1 >> 2) * (var1 >> 2)) >> 11) * (int32_t)dev->calib.par_p6) >> 2;
`
In your driver this corresponds with line 69, which reads:
` var2 = (((var1 >> 2) ** 2) >> 11) * (self.par_p6 >> 2)`
I think it should read:
` var2 = ((((var1 >> 2) ** 2) >> 11) * self.par_p6) >> 2`
Running some tests show that the (absolute) difference between the air pressures calculated using both variants of the formula set is much less than 1 [hPa], thus much less than the typical accuracy. So normally, one will not notice the difference.
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Valutazione
Questa issue non è ancora stata valutata.