BME680 Arduino Mega2560

Hey Guys,

I want to use the Arduino Mega2560 to read Sensor data from the BME680

But however I connect it, it won’t get recognized.

First I tried I2C:

VCC and GND from Sensor to 3.3V and GND on the Arduino
SCL to dedicated PIN 21
SDA to dedicated PIN 20

I used the bme680test.ino from adafruit (in the attachments) for testing but it just says: Could not find a valid BME680 sensor, check wiring!

I also tried the i2c_scanner.ino (also in attachments), a test file from the mega2560 library. Same problem here, “No I2C devices found”.

Next, I tried using SPI (which already worked for an SD-Card reader I used with this board):

Following the pinout from the homepage (SPI) and using additional info for connection from here, I connected the Sensor like follows:

VCC and GND from Sensor to 3.3V and GND on the Arduino
SCL to SCK pin 52
SDA (which I guess is same as SDI) to MOSI pin 51
SD0 to MISO pin 50
CS to pin 53

which should be the hardware SPI config, still no sensor found. The exact same happens when changing to software SPI with the mentioned pins…

Do you guys have any clue why this setup is not working with the sensor? I triple check the wiring and when connecting the SD card reader SPI is working just fine…

I am grateful for any help :smiley:

i2c_scanner.ino (2.11 KB)

bme680test.ino (2.26 KB)

VCC and GND from Sensor to 3.3V and GND on the Arduino
SCL to dedicated PIN 21
SDA to dedicated PIN 20

You might have already fried your sensor. SDA and SCL are pull-up to 5V on-board on the Mega2560 by 10kΩ resistor. The maximum rating for the I2C signals on the BME680 are Vcc+0.3V, so 3.6V in your case. The 5V you applied is substantially above that. As you connected Vcc to 3.3V and the board seems to contain a linear voltage regulator, that chip's Vcc might even be below 3V, which makes the 5V even worse. As it looks that the board also contains pull-ups to the chips Vcc voltage, it may be slightly less harmful but that's a lot of guessing as your vendor fails to supply schematics of the board (you shouldn't buy breakout boards without schematics, that's like buying a bottle without a label on it, would you drink it).

Any idea of how I could figure out whether the sensor is actually fried or not?

Insert a level converter and run an I2C scanner. If it finds a device your sensor is still OK.