mirror of https://github.com/arendst/Tasmota.git
honeywell article edit to unified design
parent
8804fefe76
commit
414fecdf2d
|
@ -1,11 +1,14 @@
|
|||
### Why the Honeywell HIH series sensors?
|
||||
|
||||
The go-to humidity sensor for the DIY Arduino/ESP8266 community is the DHT22. Unfortunately, this sensor has a tendency to collect condensation and give false readings (usually 99.9% RH) in wet environments like a bathroom or outside. Not being able to use a humidity sensor in a wet area (IMHO) defeats the point of a humidity sensor, so I set about looking for alternatives.
|
||||
|
||||
After looking at several options, I found the Honeywell HIHxxxx sensors. Different models of the HIH line have different features and work over different ranges of humidity, but most of them use the same I2C protocol, which is now supported in Tasmota. Check the datasheets [available by searching Mouser](https://www.mouser.com/Sensors/Environmental-Sensors/Board-Mount-Humidity-Sensors/_/N-axfmy?Keyword=honeywell&FS=True) to compare sensors. One of the most critical features to look for is a hydrophobic filter which allows humid air through, but blocks water droplets from entering the sensor. This is listed on the datasheets as "with filter,condensation resistant". Also keep in mind the humidity range you'll be measuring.
|
||||
|
||||
For my purposes (bathroom humidity sensor), there was a clear choice in the HIH7121-021 ([datasheet](https://www.mouser.com/datasheet/2/187/honeywell-sensing-humidicon-hih7000-series-product-1140774.pdf), [non-affiliate direct link to product on Mouser](https://www.mouser.com/ProductDetail/Honeywell/HIH7121-021-001?qs=sGAEpiMZZMsrQJTAfdCBRHqyplkhxKu6kqHzVrlY%2FZM%3D), which works over a range of 0-100% RH, supports I2C, is accurate to within 3%, and has a hydrophobic filter. I will focus on this sensor below, but I suspect much of the information will be applicable to other HIHxxxx sensors.
|
||||
**This feature is not included in precompiled binaries.**
|
||||
To use it you must [compile your build](compile-your-build). Add the following to `user_config_override.h`:
|
||||
```
|
||||
#ifndef USE_HIH6
|
||||
#define USE_HIH6 // Enable Honeywell HIH (I2C address 0x27) (+0k6)
|
||||
#endif
|
||||
```
|
||||
----
|
||||
Honeywell HumidIcon™ Digital Humidity and Temperature Sensors HIH Series
|
||||
|
||||
## Configuration
|
||||
### Wiring the sensor
|
||||
Get the 4 pin SIP version if possible, as this will be easier to solder than the 8 pin SMD version.
|
||||
|
||||
|
@ -33,23 +36,29 @@ I have tested several of these without the 0.22 uF capacitor and without the pul
|
|||
I have noticed that temperature readings tend to be a degree or so high if the sensor is wired directly to the ESP:
|
||||
![directly connected - don't do this!](https://i.imgur.com/yKGJ8OR.jpg)
|
||||
|
||||
|
||||
Soldering a 1-2" piece of wire between the ESP and the HIH7121 fixes this issue:
|
||||
![connect via a short wire](https://i.imgur.com/AznIPGX.jpg)
|
||||
|
||||
### Tasmota setup
|
||||
1. Add `#define USE_HIH6` (and `#define USE_I2C`, which is defined by default) to your `user_config_override.h` file
|
||||
2. Build Tasmota
|
||||
3. Flash your device
|
||||
4. Note: At some point, hopefully this will be enabled in the sensors build by default. If/when that happens, you simply need to flash `tasmota-sensors.bin` and enter:
|
||||
### Tasmota
|
||||
In the _Configuration -> Configure Module_ page assign:
|
||||
1. GPIO RX to `I2C SDA (6)`
|
||||
2. GPIO TX to `I2C SCL (5)`
|
||||
|
||||
`I2cDriver2 0` to disable PCF8574 support
|
||||
After a reboot the driver will detect the HIHxxxx automatically and display sensor data.
|
||||
|
||||
if you have an LCD display also configured, run `I2CDriver3 0`
|
||||
![tasmota setup](https://i.imgur.com/UYOUPm7.png)
|
||||
|
||||
The device will reboot after each of these, then the HIHxxxx should be detected. More documentation on this is in the [I2CDEVICES.md](https://github.com/arendst/Tasmota/blob/development/I2CDEVICES.md) file.
|
||||
> If you have defined USE_PCF8574 first use:
|
||||
>
|
||||
> `I2cDriver2 0` to disable PCF8574 support
|
||||
>
|
||||
>if you have an LCD display also configured, run `I2CDriver3 0`
|
||||
>
|
||||
> More documentation on this is in the [I2CDEVICES.md](https://github.com/arendst/Tasmota/blob/development/I2CDEVICES.md) file.
|
||||
|
||||
5. Configure the device as you normally would (network, MQTT, host, etc)
|
||||
6. In the configuration page, set `TX GPIO1` to `I2C SCL (5)` and `RX GPIO3` to `I2C SDA (6)`
|
||||
7. Save and the ESP will reboot; your sensor should show up after 5-10 seconds.
|
||||
![tasmota setup](https://i.imgur.com/UYOUPm7.png)
|
||||
### Why the Honeywell HIH series sensors?
|
||||
The go-to humidity sensor for the DIY Arduino/ESP8266 community is the DHT22. Unfortunately, this sensor has a tendency to collect condensation and give false readings (usually 99.9% RH) in wet environments like a bathroom or outside. Not being able to use a humidity sensor in a wet area (IMHO) defeats the point of a humidity sensor, so I set about looking for alternatives.
|
||||
|
||||
After looking at several options, I found the Honeywell HIHxxxx sensors. Different models of the HIH line have different features and work over different ranges of humidity, but most of them use the same I2C protocol, which is now supported in Tasmota. Check the [datasheets](https://sensing.honeywell.com/sensors/humidity-sensors) to compare sensors. One of the most critical features to look for is a hydrophobic filter which allows humid air through, but blocks water droplets from entering the sensor. This is listed on the datasheets as "with filter,condensation resistant". Also keep in mind the humidity range you'll be measuring.
|
||||
|
||||
For my purposes (bathroom humidity sensor), there was a clear choice in the HIH7121-021 ([datasheet](https://www.mouser.com/datasheet/2/187/honeywell-sensing-humidicon-hih7000-series-product-1140774.pdf), [non-affiliate direct link to product on Mouser](https://www.mouser.com/ProductDetail/Honeywell/HIH7121-021-001?qs=sGAEpiMZZMsrQJTAfdCBRHqyplkhxKu6kqHzVrlY%2FZM%3D), which works over a range of 0-100% RH, supports I2C, is accurate to within 3%, and has a hydrophobic filter. The article focuses on that sensor, but I suspect much of the information will be applicable to other HIHxxxx sensors.
|
|
@ -26,7 +26,7 @@ More about [general configuration](Sensor-Configuration) of peripherals.
|
|||
- **HR-E** - Water Meter Encoder interface (serial)
|
||||
- [**HC-SR04 (HC-SR04P, JSN-SR04T)**](HC-SR04) - Ultrasonic Sensor
|
||||
- [**HC-SR501**](PIR-Motion-Sensors#HC-SR501) - PIR Motion Sensor<img src="https://user-images.githubusercontent.com/5904370/53279530-8c571600-3711-11e9-85c0-27d35be2df48.png" width="200" align="right" />
|
||||
- **[Honeywell HIH](https://github.com/arendst/Tasmota/wiki/Honeywell-HIHxxxx-humidity-sensors)** - Temperature and Humidity sensor (I<sup>2</sup>C)
|
||||
- **[Honeywell HIH](https://github.com/arendst/Tasmota/wiki/Honeywell-HIHxxxx)** - Temperature and Humidity sensor (I<sup>2</sup>C)
|
||||
- **Honeywell HPMA115S0** - Particulate Matter Sensor (serial)
|
||||
- **HTU21** - Temperature and Humidity sensor (I<sup>2</sup>C)
|
||||
- **HX711** - Load Cell sensor (single wire)
|
||||
|
|
Loading…
Reference in New Issue