Texas Instruments HDC2010 is a high accuracy digital temperature and humidity sensor. Main measurement characteristics:
- relative humidity range 0% - 100%
- humidity accuracy +-2% (factory calibrated)
- temperature from -40C to +125C (functional) and -40C to +80C (operational)
- typical temperature accuracy +-0.2C (factory calibrated)
- embedded heating element to burn away condensation
More info on: HDC2010 datasheet.
In June 2019 we've released 6 new environmental and air quality sensors, including HDC2010 I2C sensor breakout and HDC2010 + CCS811 I2C combo sensors breakout, all being part of the s-Sense I2C sensor breakout family.
PN: SS-HDC2010#I2C SKU: ITBP-6005 HDC2010 I2C sensor breakout info
PN: SS-HDC2010+CCS811#I2C SKU: ITBP-6006 HDC2010+CCS811 I2C combo sensor breakout info
Next, let's kickstart with HDC2010 sensor I2C breakout - around 10-15 minutes. Same hardware and software approach may be used for CCS811 + HDC2010 bundle sensors I2C breakout.
Arduino HDC2010 sensor hardware integration (basic wiring)First, identify if your Arduino it's 5V or 3.3V compliant! The HDC2010 I2C sensor breakout it's shipped in default auto 3-5V compliant configuration. Just wire as bellow:
HINT, for some ARDUINO boards:
- SDA (Serial Data) --> A4 on Uno/Pro-Mini, 20 on Mega2560/Due, 2 Leonardo/Pro-Micro
- SCK (Serial Clock) --> A5 on Uno/Pro-Mini, 21 on Mega2560/Due, 3 Leonardo/Pro-Micro
Bellow, sensor wiring examples, left to right, with Arduino UNO and xyz-mIoT
shield [AT SAMD21G, 3.3V compliant, with or without modems]:
- a. download HDC2010 Arduino library from: here.
- b. unzip the library and install in Arduino libraries folder. Restart Arduino.
- c. Make a folder named "ssense_HDC2010_example". Download and save the code bellow (right click & save as) - use ssense_HDC2010_example.ino as name: HDC2010 - read sensor data Arduino code or, use the ssense_HDC2010_example from Arduino "File-> Examples", under "ssense-HDC2010" library.
- d. Compile and upload the code to your Arduino shield. The sensor data may be seen on Arduino Serial Monitor (set to 19200bps).
HDC2010 have some interesting features (read datasheet) - one of them being the temperature and humidity "comfort zone" monitoring.
In a nut shell, the HDC2010 firmware compare the temperature and humidity sampled data with defined comfort zone temperature and humidity upper and lower limits. If sampled data are outside the defined window one interrupt it's generated. Window threshold values and IRQ behavior are user programmable.
HDC2010 - windowed alerts mode Arduino code- written to be compatible with Arduino Zero and xyz-mIoT shields - do this job. As hardware preliminary, just wire the shields as shown in basic wiring, up-here, and add wire between sensor PAD9 [placed on sensor bottom] to D6 on Arduino Zero/xyz-mIoT shield.
This code it's available also in Arduino "File-> Examples", under "ssense-HDC2010" library.
HINT - to port previous code to other Arduino shields (let's say for Arduino UNO):
- step1. identify one IO INTERRUPT capable pin - Arduino UNO you may like chose D2 or D3.
- step2 -variant a. adapt the alertTHS() ISR function and attachInterrupt() call in a way to be compatible with your board or,
- step2 -variant b. remove/comment the attachInterrupt() call in setup() and pull the alertTHS() function in loop(). In this case you may use any available digital IO.
TUTORIAL PROVIDED WITHOUT ANY WARRANTY!!! USE IT AT YOUR OWN RISK!!!!
Comments