Message ID | ZsWdFOIkDtEB9WGO@mail.your-server.de (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | iio: sgp40: retain documentation in driver | expand |
On Wed, 21 Aug 2024 09:53:56 +0200 Andreas Klinger <ak@it-klinger.de> wrote: > Retain documentation on how the voc index is actually calculated in > driver code as it'll be removed in Documentation. > > This is a follow up on patch "[PATCH] iio: ABI: remove duplicate > in_resistance_calibbias" from David. Applied both patches. Thanks to you both for sorting this. Jonathan > > Signed-off-by: Andreas Klinger <ak@it-klinger.de> > --- > drivers/iio/chemical/sgp40.c | 11 ++++++++--- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/drivers/iio/chemical/sgp40.c b/drivers/iio/chemical/sgp40.c > index 7f0de14a1956..07d8ab830211 100644 > --- a/drivers/iio/chemical/sgp40.c > +++ b/drivers/iio/chemical/sgp40.c > @@ -14,11 +14,16 @@ > * 1) read raw logarithmic resistance value from sensor > * --> useful to pass it to the algorithm of the sensor vendor for > * measuring deteriorations and improvements of air quality. > + * It can be read from the attribute in_resistance_raw. > * > - * 2) calculate an estimated absolute voc index (0 - 500 index points) for > - * measuring the air quality. > + * 2) calculate an estimated absolute voc index (in_concentration_input) > + * with 0 - 500 index points) for measuring the air quality. > * For this purpose the value of the resistance for which the voc index > - * will be 250 can be set up using calibbias. > + * will be 250 can be set up using in_resistance_calibbias (default 30000). > + * > + * The voc index is calculated as: > + * x = (in_resistance_raw - in_resistance_calibbias) * 0.65 > + * in_concentration_input = 500 / (1 + e^x) > * > * Compensation values of relative humidity and temperature can be set up > * by writing to the out values of temp and humidityrelative.
diff --git a/drivers/iio/chemical/sgp40.c b/drivers/iio/chemical/sgp40.c index 7f0de14a1956..07d8ab830211 100644 --- a/drivers/iio/chemical/sgp40.c +++ b/drivers/iio/chemical/sgp40.c @@ -14,11 +14,16 @@ * 1) read raw logarithmic resistance value from sensor * --> useful to pass it to the algorithm of the sensor vendor for * measuring deteriorations and improvements of air quality. + * It can be read from the attribute in_resistance_raw. * - * 2) calculate an estimated absolute voc index (0 - 500 index points) for - * measuring the air quality. + * 2) calculate an estimated absolute voc index (in_concentration_input) + * with 0 - 500 index points) for measuring the air quality. * For this purpose the value of the resistance for which the voc index - * will be 250 can be set up using calibbias. + * will be 250 can be set up using in_resistance_calibbias (default 30000). + * + * The voc index is calculated as: + * x = (in_resistance_raw - in_resistance_calibbias) * 0.65 + * in_concentration_input = 500 / (1 + e^x) * * Compensation values of relative humidity and temperature can be set up * by writing to the out values of temp and humidityrelative.
Retain documentation on how the voc index is actually calculated in driver code as it'll be removed in Documentation. This is a follow up on patch "[PATCH] iio: ABI: remove duplicate in_resistance_calibbias" from David. Signed-off-by: Andreas Klinger <ak@it-klinger.de> --- drivers/iio/chemical/sgp40.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-)