This post is related to your article on comparing temperature sensors.
Sorry, I preferred to post my comment here, because the comment writing interface on the RNT blog is too rudimentary and it’s impossible to test it (once you’ve posted the comment, you can’t edit it anymore to modify it) :-/
I did a little project of my own to test different things. In particular the temperature sensors I had at my disposal.
Each sensor is connected to an ESP32 board which sends the measured temperatures to an M5Stack (also ESP32) which collects and centralizes this data.
The communication protocol used here is ESP-NOW.
At each acquisition board, the ESP32 performs a measurement on its sensor, then sends it by radio frequency (2.4 GHz) to the M5Stack. Then the ESP32 goes into deep sleep until the next measurement.
Apart from the M5Stack, 5 ESP32 boards are used in this project.
From top to bottom on the picture :
- ESP32 bpi:bit board with Abracon ABNTC thermistor
- ESP32 DevKit v1 board (Broodio clone) with DHT22
- ESP32 PicoKit v4.1 board (Espressif) with DHT11
- Adafruit Feather Huzzah32 board with Adafruit BME280
- ESP32 DevKit v4 (Espressif) with DS18B20
I used a temperature probe we use in the kitchen to compare the measured data.
I also calibrated the bpi:bit sensor to adjust the thermistor equation.
Here is the result I get (with a 5 second time step between each measurement):
The M5Stack is also configured as a WiFi access point to connect the smartphone to it. An HTTP server implemented on the M5Stack sends to the smartphone the web interface for data visualization (hosted on SPIFFS). And with each measurement received via ESP-NOW, the M5Stack transmits the measurement in real time to the smartphone using the WebSocket protocol.
The DHT22 is quite close to the control temperature.
The DS18B20 and the sensor soldered on the bpi:bit board get the best readings.
The DHT11 is clearly the least accurate.
On the other hand, I’m surprised that the BME280 increases its measurements so much (about 1°C). Is it due to the Adafruit board on which it is soldered, which also integrates a voltage regulator? It’s a real shame… I thought the BME280 was a very good sensor.
I noticed that you don’t use the same version of the BME280 in your tutorials.
Did you compare it with the one from Adafruit?
If you get a chance, I’d like you to do a comparison on your side.
Thanking you in advance,
All the best,
Thanks for sharing again another great of your projects and notes about your experiments.
About the BME280, we don’t have the version from adafruit. We have a clone.
In our experiment, we didn’t had any “control” sensor. However, you can see from our results that the BME280 is the one giving higher temperatures.
That’s a “feature” of the BME280 sensor. It heats up a bit, and gives temperatures with one or two degress higher than what it is in reality. Nonetheless, I still like that sensor, but you need to keep that in mind.
I also agree that the DHT11 is probably not the best temperature sensor.
The comments section should be used for small comments/questions. You better write your thoughts here because we can’t keep up with all the comments in our website. You’ll always get an answer here.