Which Temp & Humidity Sensor?

Could anyone help me choose the right sensor for Temp & Humidity? I need loads of them so hoping to use the inexpensive AM2320, AHT20, SHT40 etc.

Would appreciate some help on which is most reliable/accurate. I’m currently tearing my hair out using a bunch of BME280 boards which are all providing wildly different temperatures (+/-4C) and humidity (+/- 20%) even though they’re all right next to each other on the bench - I’m assuming they must be faulty units and it serves me right for buying from eBay…

Anyone know which sensor is most likely to provide good, consistent results?

Yes, cheapo ebay electronics tend to be cheapo for a reason. I’m not sure if the stuff is rejected/defective stock or just outright fake, but it’s always a bit of a gamble.

If you check the store pages the give you stats on the theoretical accuracy of temperature and humidity, I think the SHT40 comes out on top for that. I guess it depends on your desired form factor too.

Thanks for the reply, makes sense

@Shoe @pealy I agree - The SHT40 is a good temperature and humidity sensor! I had some to make a raspberry pi temperature detector with an LCD screen! Go for SHT40!


Thanks for the recommendation - will get a couple in for a test - fingers crossed they report similar values.

The I2C data is all digital right? If my soldering was rubbish I’d get comms errors rather than spurious data wouldn’t I??

Yes, I2C is fully digital. Sometimes sensors have an internal analog element but that will get converted to digital before transmission on the I2C bus. The usual error you’d get with desktop Python if something isn’t right is a 121 Remote I/O error. Alternatively, most platforms have an i2c-scanner example, if you can detect the breakout on that then you should be good to go.

Thanks for that - just wanted to be sure I’m getting what the sensor is sending - my soldering might not be perfect but it’ll do!

I did some experiments with various sensors and wrote it up here:
Testing Temperature Sensors - Which One for Me? : 15 Steps (with Pictures) - Instructables
It may be if interest.

I hate it when programs provide temperatures like 27.3425 deg C. Most of these sensors are only accurate to 0.5 deg C at best. The analogue sensors for temperature (TMP35/6) depend on the accuracy and bit count of your ADC.

@Tonygo2 Thanks for the link - I had a good read, your results were so much better than the rogue batch of BME280’s I’ve been battling with and has renewed my confidence that I’m not asking the impossible.

In fact, I received the 2 SHT40’s from Pimoroni today and (touch wood) they’re at least providing consistent results within tolerance (after an hour or so to stabilise, using the Adafruit test app on a pair of ESP8266). Whether they’re accurate or not is another story but I’ll take consistency as long as they’re in the right ballpark… I’ve got a DHT22 and a BME680 to add to the mix next… fingers crossed for some nicely consistent graphs!

I hope you can make better progress with the new sensors. What language are you using for your code?

Me too!

Not even sure what language, I’m using the Arduino IDE for the little ESP8266 boards… Google says it’s c++… It’s just a case of bolting together snippets from Adafruit and Thingspeak to get them going, super easy to work with. I started with PiZeroW but these things are much easier, they don’t have the enormous capability of a pi but that does mean everything is quicker and simpler… They’re cheap as chips too