Environmental Sensor (Qwiic) - BME680

Added to your shopping cart

The BME680 from Bosch is a powerful sensor capable of sensing humidity, barometric pressure, temperature and indoor air quality. The BME680 can communicate over SPI or I2C (default). The SparkX carrier board provides jumpers to select between communication protocols (SPI or I2C) as well as the ability to change the I2C address and remove the I2C pull up resistors. The carrier board also incorporates two Qwiic connectors so you can start talking to the board immediately - no soldering required!

While the BME680 is a very small IC, getting actual indoor air quality (IAQ) out of the BME680 is difficult. If you need a more direct sensor we recommend the SparkFun Environmental Sensor Combo which uses the CCS811 along side the BME280. Both sensors have robust libraries and a direct calculation of tVOCs and equivalent CO2.

We currently do not have a library for the BME680 available but will be releasing one soon.

We do not plan to regularly produce SparkX products so get them while they’re hot!

Experimental Product: SparkX products are rapidly produced to bring you the most cutting edge technology as it becomes available. These products are tested but come with no guarantees. Live technical support is not available for SparkX products. Head on over to our forum for support or to ask a question.

Customer Comments

  • Q: Why does it state that: “While the BME680 is a very small IC, getting actual indoor air quality (IAQ) out of the BME680 is difficult.”

    What does it mean it will be difficult? What does that mean and why?

  • Continuing from last question I have changed how I have set up the Sensor which I am trying to communicate to via I2C. The 2 GND pins: Set to GND coming from Microprocessor(Nucleo-F446RE) The two 3.3 volts : Set to 3.3V wired from Microprocessor SDA : Wired directly to Microprocessor SDA Pin that has been set up (No pullup since there is one in breakout schematic) SCL: Wired directly to Microprocessor SCL Pin that has been set up (No pullup since there is one in breakout schematic) CS: No connect because in breakout it “defaults” to I2C SDI: No connect since not using SPI Interface SDO: No connect so Slave Adress should default to 0x77 I believe? SCK: No connect since not using SPI I based these connections off the breakout although I could have some thought wrong? I am looking at the SCL and SDA lines between the Microprocessor and Sensor and am seeing the SCL and SDA lines but on the 9th clock I am only seeing Nack. I have tried sending (0x77), (0x77<<1) to shift address in correct location, and tried (0x76)(0x76<<1) just to double check. Any thoughts or ideas?

  • Regarding this sensor the description here says that the sensor defaults to I2C but reading through the data sheet it says that to use I2C the CS pin must be connected to power. So my question is to use I2C is it default or will I need to connect it to power? Thanks

    • CS is pulled up to 3.3V with a 4.7k resistor by default. Cut trace in jumper SJ2 to disable this. (You still want a pull-up on that pin for SPI operation, however)

      See breakout schematics listed under documents.

Customer Reviews

No reviews yet.