This board has gone red! Checkout the new version here - it incorporates a variety of small changes including a jumper to disable the power LED.
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!
NOTE: The I2C address of the BME680 is 0x77 and is jumper selectable to 0x76. A multiplexer/Mux is required to communicate to multiple BME680 sensors on a single bus. If you need to use more than one BME680 sensor consider using the Qwiic Mux Breakout.
We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.
Based on 1 ratings:
Great sensor. Software is very difficult though. Bosch has released the software for this now, so you can use the actual sensors software. Seems to work pretty well. Sparkfun should update their tutorials for use with the new bosch software. It works pretty well.
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?
"We currently do not have a library for the BME680 available but will be releasing one soon." What is soon? Thanks and regards...
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.