Re: [PATCH v2 3/5] iio: pressure: bmp280: Add support for new sensor BMP580

From: Jonathan Cameron
Date: Sun Jan 08 2023 - 07:22:05 EST


On Sun, 01 Jan 2023 12:16:28 +0100
Angel Iglesias <ang.iglesiasg@xxxxxxxxx> wrote:

> On Fri, 2022-12-30 at 18:22 +0000, Jonathan Cameron wrote:
> > On Thu, 29 Dec 2022 19:23:16 +0100
> > Angel Iglesias <ang.iglesiasg@xxxxxxxxx> wrote:
> >
> > > On Thu, 2022-12-29 at 18:35 +0100, Christophe JAILLET wrote:
> > > > Le 26/12/2022 à 15:29, Angel Iglesias a écrit : 
> > > > > Adds compatibility with the new sensor generation, the BMP580.
> > > > >
> > > > > The measurement and initialization codepaths are adapted from
> > > > > the device datasheet and the repository from manufacturer at
> > > > > https://github.com/boschsensortec/BMP5-Sensor-API.
> > > > >
> > > > > Signed-off-by: Angel Iglesias
> > > > > <ang.iglesiasg-Re5JQEeQqe8AvxtiuMwx3w@xxxxxxxxxxxxxxxx>
> > > > >  
> > > >
> > > > [...]
> > > >  
> > > > > diff --git a/drivers/iio/pressure/bmp280.h
> > > > > b/drivers/iio/pressure/bmp280.h
> > > > > index efc31bc84708..27d2abc17d01 100644
> > > > > --- a/drivers/iio/pressure/bmp280.h
> > > > > +++ b/drivers/iio/pressure/bmp280.h 
> > > >
> > > > [...]
> > > >  
> > > > > +#define BMP580_CHIP_ID                 0x50
> > > > >   #define BMP380_CHIP_ID                        0x50 
> > > >
> > > > Hi,
> > > >
> > > > this is maybe correct (I've not been able to find the datasheet to check
> > > > myself), but it looks odd to have the same ID for 2 different chips. 
> > >
> > > Yes, I also couldn't find a datasheet for the BMP580 or a devkit anywhere.
> > > I'm
> > > developing this using the BMP581, which seems to be a variant almost
> > > identical.
> > > Something similar happened with the BMP38x; you could find the BMP384 and
> > > the
> > > BMP388, but the BMP380 was unavailable everywhere, datasheet included. My
> > > guess
> > > is this is a similar situation. In any case, the datasheet of the BMP581 is
> > > available here:
> > > https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bmp581-ds004.pdf
> > >
> > > Regarding the chip id being the same between generations is weird, but at
> > > least
> > > the datasheet and the sensor I have uses 0x50 as the chip id. After you
> > > mentioned this, I checked back on the reference API repository from Bosch
> > > and it
> > > has both 0x50 and 0x51 as valid IDs:
> > > *
> > > https://github.com/boschsensortec/BMP5-Sensor-API/blob/master/bmp5_defs.h#L198
> > > * https://github.com/boschsensortec/BMP5-Sensor-API/blob/master/bmp5.c#L1444
> > https://github.com/boschsensortec/BMP3-Sensor-API/blob/master/bmp3_defs.h
> > I was curious on whether we had a wrong value for bmp380, but nope... Same ID.
> >
> > Huh. As per earlier comment - who wants to moan at Bosch as this is crazy
> > situation?
> >
> > Jonathan
>
> Well I'm doing this in my free time beacuse I wanted to setup a meteo station
> and got annoyed needing to patch-up userspace code for reading pressure and
> temperature sensors on a very underpowered ARM device when there is a kernel
> subsystem for this kind of things. The rest is history on the mailing list.
> I don't think I have any leverage to have Bosch listening to my complaints

Sadly I don't have a good contact in Bosch. So all we can do is +CC the
contact address.

If anyone else has a good channel to point out this silliness please do!

Jonathan

>
> Angel
>
> >
> > >
> > > Angel
> > >
> > > > CJ
> > > >  
> > > > >   #define BMP180_CHIP_ID                        0x55
> > > > >   #define BMP280_CHIP_ID                        0x58 
> > > >  
> > >
> >
>