While the use of analogue sensors for detecting temperature are common in the world of open source electronics, digital devices are less so. The RHT03 could help change that, offering a low-cost high-accuracy sensor which connects easily to most prototyping platforms.
The first thing to notice about the RHT03 – also known as the DHT-22 – is its breadboard-friendly layout. Mimicking a T-style package, the legs are properly spaced for connection to any common breadboard type, while also allowing for the component to be soldered to a through-hole PCB for a more permanent project.
Sadly, the RHT03 is clearly made on a budget: the legs are extremely thin, and it can be fiddly to get the breadboard to accept the component without bending one or all. If you’re using the RHT03 in a project where it’s going to be frequently moved around, consider adding some reinforcement.
The RHT03 is an odd beast: although digital, it’s not a One-Wire device and doesn’t work with any common libraries. Thankfully, resourceful hackers have fixed that problem: a GitHub project page provides a simple library for the component plus sample code which spits out the current temperature and humidity.
There are limitations, however: query the RHT03 too quickly and it will return an error, something which is never a problem with an analogue sensor. That restriction – due to the digital nature of the device – comes with an corresponding upside: unlike a thermistor, there’s no complex calculation to carry out in order to arrive at a human-readable figure.
Connecting the RHT03 to an Arduino and running the sample script results in two figures: temperature in Celsius and humidity as a percentage. Using a calibrated multimeter with K-type temperature probe proved that the temperature was accurate, and the humidity didn’t seem far off. Accuracy is official stated as ±0.5°C and ±2% RH.
Compared to using two separate components, the RHT03 has a dual advantage: the sensors are located together for better accuracy, and it requires only a single input pin on your controller along with VIN and ground connections. It’s also battery-friendly, drawing around 1.5mA when reading and 50µA when in standby mode.
If you’re using a non-Arduino prototyping platform, the RHT03 will likely still work – thanks largely to a wide supply voltage range of 3.3-6V – but you may find yourself doing a bit of hacking in order to implement the DHT22 communications library.
There is a catch in all this, however: at £8.51, the RHT03 is an extremely expensive option compared to analogue sensors. If you need accuracy, it’s a good option, but be prepared to pay for the privilege.Pro: Accurate temperature and humidity readings from a single pin. Con: Very expensive compared to analogue equivalents. Supplier: Proto-Pic, £8.51 Score: 6/9