01-26-2021 02:19 AM
01-26-2021 03:26 AM
Hello Hpmax,
Whic interface you used, I2C or SPI? You could capture waveform to check the actual communication.
01-26-2021 05:14 AM
01-26-2021 06:51 AM
Hello Hpmax,
BME280 chip id is 0x60.
It is better to check HW communication, otherwise you couldn't know if the communication is correct or not.
01-26-2021 09:11 AM
I am aware that it is supposed to be 0x60, which is why I was posting this. As previously stated, I cannot check the hardware. I was wondering if there were other devices that might respond with 0x45 (another variant in the same series perhaps).
That said, I asked my friend to disconnect the device and he got the same result. There is an MS5611 on the I2C bus which uses the same address, so my assumption is my software was talking to the MS5611 rather than the BME280, but it's difficult for me to understand why the BME280 seemed to have no impact. I presume a write command (from the MCU) would work fine despite the collision, instead it's only the read that would be affected by the collision, and I'd expect that the impact of a collision would essentially be effectively a logical AND. That is if the MS5611 is outputing a 0x45, and the BME280 is outputting a 0x60, I'd expect to read in a 0x40.