Temp-Hum 9 click can measure the humidity in the range from 0 to 100 %RH and temperature in the range from -40 ℃ to +125 ℃ with a typical accuracy of ±2 %RH and ±0.2 ℃. It consumes very low amount of power while operated, and it can output the conversion values directly in physical units, thanks to the CMOSens® manufacturing technology. Featuring high reliability and long-term stability, high Signal-to-Noise (SNR) ratio, good accuracy, and low power consumption, Temp-Hum 9 click is an ideal solution for development of a range of different applications, including battery operated weather stations, thermostats and humidistats, microenvironment centers, respiratory therapy applications, air conditioners, and other similar applications.
How does it work?
The main component of Temp-Hum 9 click is the SHTC3, a relative humidity and temperature sensor with I²C Interface, by Sensirion. This sensor IC integrates two very accurate sensing components: temperature sensor, and relative humidity sensor. By utilizing the proprietary CMOSens® manufacturing technology, this sensor integrates the complete temperature and humidity measurement system on chip. The output data is processed and compensated by the SHTC3 IC itself, requiring only basic conversion formulas to be applied within the firmware of the host microcontroller (MCU). These conversion formulas are given in the SHTC3 datasheet, and provide readings in °C and %RH, directly.
The SHTC3 incorporates an accurate bandgap temperature sensor, which can measure the temperature in the range between -40°C and 125°C while retaining accuracy of ±0.8°C, typically. The accuracy is even greater if the range is narrowed down: when used over the range between 0°C and 60°C, the typical accuracy is ±0.2°C. Also, the repeatability of the temperature measurement is very good, in the range of 0.1°C. The SHTC3 sensor IC can be reliably used for prolonged periods of time, as it has a very low thermal drift of less than 0.02°C per year.
After the measurement has been converted by high-precision ADC, it is fed to a logic back-end which applies factory-calibrated correction and converts the raw data into a compensated value. By applying a simple conversion formula, the temperature measurement can be read directly in ℃. Note however, that the sensor will take some time to accommodate to the ambient temperature, especially if the temperature changes quickly, considering the thermal conductivity of the PCB itself. However, the Click board™ surface is not very large, resulting in lower thermal inertia.
The humidity sensor is a capacitor-based sensor which changes the capacitance proportionally to the relative humidity. However, the capacitance of this sensor is affected by changes of the ambient temperature, as well. The datasheet of the SHTC3 offers a map of the RH accuracy at different temperatures, covering a range of different values. The RH sensor accuracy varies in the range between ±2% and ±4%, depending on the measurement conditions. This table can be used to check the exact accuracy for some specific ℃ and %RH conditions.
After the measurement has been converted by high-precision ADC, it is fed to a logic back-end which applies factory-calibrated correction and converts the raw data into a compensated value. By applying a simple conversion formula, the temperature measurement can be read directly in %RH. Note that capacitor-based humidity sensors commonly suffer from a small hysteresis, which may occur if the sensor is used in very humid conditions for prolonged periods of time. However, this hysteresis is not irreversible. The SHTC3 datasheet specifies that its hysteresis should stay within the range of ±1 %RH.
Temp-Hum 9 click uses the I2C communication interface. It has pull-up resistors connected to the mikroBUS™ 3.3V rail. A proper conversion of logic voltage levels should be applied before the Click board™ is used with MCUs operated with 5V.
Specifications
Type
Temperature & humidity
Applications
This Click board™ is an ideal solution for development of a range of different applications, including battery operated weather stations, thermostats and humidistats, microenvironment centers, respiratory therapy applications, air conditioners, and other similar applications.
On-board modules
SHTC3, a relative humidity and temperature sensor with I²C Interface, by Sensirion
Key Features
The complete measurement stack on chip, thanks to the proprietary CMOSens® manufacturing process, advanced logic back-end offers calibrated data, low drift over time, high repeatability, etc.
Interface
I2C
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
M (42.9 x 25.4 mm)
Input Voltage
3.3V
Pinout diagram
This table shows how the pinout on Temp&Hum 9 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
PWR | PWR | – | Power LED indicator |
Software support
We provide a library for the Temp&Hum 9 Click on our LibStock page, as well as a demo application (example), developed using MikroElektronika compilers. The demo can run on all the main MikroElektronika development boards.
Library Description
Library contains.
Key functions:
void temphum9_readRegister( uint16_t registerAddress_, uint8_t nData_, uint16_t *registerBuffer_ )
– reads one or two 16-bit registers.void temphum9_sendCommand( uint16_t command_ )
– issues (sends) command to device.void temhum9_getTemperatureAndHumidity( uint8_t mode_, float *measurementData)
– performs temperature and relative humidity measurement and calculates temperature and relative humidity.
Examples description
The application is composed of three sections :
- System Initialization – Initializes LOG and I2C.
- Application Initialization – Initializes I2C driver and sends SLEEP and WAKEUP dommands.
- Application Task – Performs simultaneous temperature and relative humidity measurements and logs both values.
void applicationTask( ) { mikrobus_logWrite( " ", _LOG_LINE ); temhum9_getTemperatureAndHumidity( _TEMPHUM9_NORMAL_MODE, &measurementData[0] ); FloatToStr( measurementData[0], text ); mikrobus_logWrite( "> > > Temperature : ", _LOG_TEXT ); mikrobus_logWrite( text, _LOG_TEXT ); mikrobus_logWrite( " C", _LOG_LINE ); FloatToStr( measurementData[1], text ); mikrobus_logWrite( "> > > Relative humidity : ", _LOG_TEXT ); mikrobus_logWrite( text, _LOG_TEXT ); mikrobus_logWrite( " %", _LOG_LINE ); mikrobus_logWrite( " ", _LOG_LINE ); Delay_ms(1000); }
The full application code, and ready to use projects can be found on our LibStock page.
Other mikroE Libraries used in the example:
I2C
UART
Conversions
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 click or RS232 click to connect to your PC, for development systems with no UART to USB interface available on the board. The terminal available in all MikroElektronika compilers, or any other terminal application of your choice, can be used to read the message.