antirez / antirez/bme680-pure-mp

Minor error in formula to calculate air pressure

Abierto
#2 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
20
Forks
1
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

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.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.