Temperature and Humidity Sensor

A project log for Street Sense

Portable electronic device to measure air and noise pollution

Mike TeachmanMike Teachman 03/25/2019 at 17:200 Comments

The next step in the project is rather unremarkable - adding a temperature and humidity sensor.  I chose the Si7021 sensor,  packaged in a convenient breakout board by Adafruit.  The sensor specification claims ±0.4 °C temperature accuracy.  Temperature measurements from the sensor will be recorded periodically to the SD card and will be used for temperature compensation of the ozone and NO2 sensor readings.

I have used this breakout board in other MicroPython projects so I was expecting a simple integration with the Street Sense MicroPython code.  But, I once again stumbled on a breaking interface change in the Loboris ESP32 port.  The Si7021 driver that I use with the mainline of MicroPython does not work in the Loboris port - caused by a breaking change in the I2C interface API.

Fortunately, I was able to source a different Si7021 MicroPython driver from Github for this sensor that works with the Loboris I2C implementation.

The V07 schematic shows the addition of the sensor.

The sensor is mounted in the breadboard to the left of the OLED display