Skip to content

SPIDemo.ino

Arnd edited this page Dec 12, 2020 · 2 revisions

Arduino sketch to read and display measurements from the Bosch BME280 sensor. The sensor is connected to the Arduino using the processor's SPI pins and the library uses the Arduino's standard SPI library.

Compatibility

No special processor-dependent calls are used and thus this sketch should run on any of the Arduino systems. The serial port speed defaults to 115200 baud. The 3 standard SPI wires/pins (MOSI, MISO and SCK) as well as the CS pin are in different locations dependent upon the processor or Arduino board in use and the example board shown above is for an Arduino ATMEga2560. The library has been tested on an Arduino Micro, Arduino ATMega 2560 and an Arduino UNO.

Function

The BME680 is instantiated and initialised in the setup() method with the following explicit values:

  • All 4 sensors (temperature, humidity and pressure) are turned on with 16x oversampling
  • IIR filtering is turned on to 16x

After initialisation the program loops infinitely. It displays the temperature in degrees Celsius, the humidity in %, the pressure in hPa (hectopascal) and ambient gas sensor resistance in milliohms. The altitude is computed using a standard atmosphere of 1013.25 and is displayed in meters. After displaying the measurements the program pauses 5 seconds and repeats.