I have assembled my prototype altimeter and everything is working except getting a response from the BMP581 over I2C. I have tried two different BMP581 units and neither have given me any results.
What I've tried:
- Swapped 10k I2C pull-up resistors for 2.2k
- Communicated with the BMP581 using both fast and standard mode speeds
- Swapped SCL/SDA lines on the MCU in software to try communicating
- Reflowed the IC multiple times
- Swapped the IC for a new one, tried reflowing that more than once
- Scanning the entire I2C bus to see if the address was unexpected
- Soldering connections which I attached to a BMP280 breakout board to confirm that the MCU's I2C peripheral is indeed working as expected and could detect the BMP280
I'm really at a loss and I'm considering moving to a different barometer entirely for my device. I have confirmed that my layout follows the recommended datasheet application note for I2C mode, I have confirmed that my footprint matches up with the datasheet (I downloaded it directly from Mouser but better to be sure), that the pinout matches, that all connections go where they should and that I have soldered the IC on in the correct orientation.
Below are images of the relevant part of my schematic, routing layout, and the board with and without the IC soldered.