Temp&Hum 6 Click Board
Temp&Hum 6 Click Board
Key Features
- Two high-accuracy sensors integrated on the same die, ultra-accurate temperature data achieved by using the zoom ADC, advanced logic back-end offers calibrated data converted to physical units, low drift over time, high repeatability, etc.
- Based on the ENS210, relative humidity and temperature sensor with I²C Interface, from ScioSense
- It is a perfect choice for various consumer and industry related applications, such as the indoor weather stations, thermostats and humidistats, microenvironment centers, respiratory therapy applications, and similar applications
Overview
The Temp&Hum 6 Click Board™ is a smart temperature and humidity sensing Click Board™, packed with features that allow straightforward integration into any design. It accurately measures a wide range of temperature and relative humidity values. The ENS210 sensor IC used on this Click Board™ is an ultra-accurate temperature and relative humidity sensor (RH), featuring very low drift, very low power consumption, small hysteresis, and excellent long-term stability. Thanks to its advanced logic back-end, the sensor IC can offer measurement readings in Kelvin and %RH directly over the I2C interface.
Temp&Hum 6 Click Board™ is supported by a mikroSDK compliant library, which includes functions that simplify software development. This Click Board™ comes as a fully tested product, ready to be used on a system equipped with the mikroBUS socket.
Featuring a smart and accurate temperature and humidity sensor IC, this Click board™ represents a perfect solution for a wide range of applications that rely on an accurate temperature and humidity measurements. By reducing the workload off the host microcontroller (MCU), it makes software development much simpler and faster, while reducing the power consumption at the same time. It is a perfect choice for various consumer and industry related applications, such as indoor weather stations, thermostats and humidistats, microenvironment centers, respiratory therapy applications, and similar.
How Does The Temp&Hum 6 Click Board™ Work?
The main component of Temp&Hum 6 Click Board™ is the ENS210, a relative humidity and temperature sensor with I²C Interface, from AMS AG. This sensor IC integrates two very accurate sensing components: temperature sensor, and relative humidity sensor. Thanks to an integrated logic back-end section, the IC can output calibrated readings from both sensors in human-readable format (%RH, and K).
The ENS210 incorporates a high accuracy thermal sensor, which can measure the temperature in the range between -40°C and 100°C while retaining accuracy of ±0.5°C. The accuracy is even greater if the range is narrowed down: when used over the range between 0°C and 70°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 ENS210 is very reliable. It can be used for prolonged periods of time, as it has a very low thermal drift of only 0.005°C per year.
After the measurement has been converted by the A/D converter which uses a relatively new hybrid-mode technology (Zoom ADC), it is fed to a logic back-end, which applies factory-calibrated correction, and converts the raw data into Kelvins. Note 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 consists of a humidity-sensitive large-area capacitor. The humidity-sensitive layer allows the capacitance changes proportional to relative humidity. The capacitance has a linear dependence on temperature, which ensures high accuracy. However, the accuracy of the relative humidity sensor changes with the ambient temperature, as well as with the %RH. The datasheet of the ENS210 offers an absolute accuracy map, covering a range of different %RH and °C values. The RH sensor accuracy varies in the range between ±2.5% and ±5.5%, depending on the measuring conditions. This table can be used to check the exact accuracy for some specific conditions.
After the measurement has been converted by a high-precision 2nd order sigma-delta ADC, the logic back-end section applies the factory-calibrated correction and converts the raw data into %RH value. Note that the capacitor-based humidity sensors commonly suffer from a small hysteresis that might occur if the sensor is used in very humid conditions for prolonged periods of time. However, this hysteresis is not irreversible. The ENS210 does not exhibit a significant hysteresis effect. The datasheet specifies it to be ±0.7 %RH in the range between 20% to 90% RH, and ambient temperature of 25 °C.
Temp&Hum 6 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 | It is a perfect choice for various consumer and industry related applications, such as the indoor weather stations, thermostats and humidistats, microenvironment centers, respiratory therapy applications, and similar applications |
On-board modules | ENS210, relative humidity and temperature sensor with I²C Interface, from ams AG |
Key Features | Two high-accuracy sensors integrated on the same die, ultra-accurate temperature data achieved by using the zoom ADC, advanced logic back-end offers calibrated data converted to physical units, low drift over time, high repeatability, etc. |
Interface | I2C |
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 6 Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Notes | Pin | Pin | Notes | ||||
---|---|---|---|---|---|---|---|
NC | 1 | AN | PWM | 16 | NC | ||
NC | 2 | RST | INT | 15 | NC | ||
NC | 3 | CS | RX | 14 | NC | ||
NC | 4 | SCK | TX | 13 | NC | ||
NC | 5 | MISO | SCL | 12 | SCL | I2C Clock | |
NC | 6 | MOSI | SDA | 11 | SDA | I2C Data | |
Power Supply | +3V3 | 7 | 3.3V | 5V | 10 | NC | |
Ground | GND | 8 | GND | GND | 9 | GND | Ground |
ONBOARD SETTINGS AND INDICATORS
Label | Name | Default | Description |
---|---|---|---|
PWR | PWR | - | Power LED indicator |
Software Support
We provide a library for the Temp&Hum 6 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
The library initializes and defines the I2C bus driver and drivers that offer a choice for writing data in register and reads data form register. The library includes function for read Temperature and Relative Huminidy data and function for read device part ID data. The user also has the function for RUN and STOP procedure and function for reset device.
Key Functions
float temphum6_readTemperature(uint8_t tempIn)
- Functions for read Temperature data.float temphum6_readRelativeHuminidy()
- Functions for read Relative Huminidy data.void temphum6_reset()
- Functions for reset device.
Example Description
The application is composed of the three sections :
- System Initialization - Initializes I2C module.
- Application Initialization - Initialization driver init and reset device and read Part ID.
- Application Task - (code snippet) - Reads Temperature and Huminidy data and logs this data to USBUART every 1sec.
void applicationTask() { char demoText[50]; float TEMP; float HUM; TEMP = temphum6_readTemperature(_TEMPHUM6_TEMP_IN_CELSIUS); FloatToStr(TEMP,demoText); mikrobus_logWrite("Temperature is ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_TEXT); mikrobus_logWrite(" C", _LOG_LINE); HUM = temphum6_readRelativeHuminidy(); FloatToStr(HUM,demoText); mikrobus_logWrite("Huminidy is ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_TEXT); mikrobus_logWrite(" %RH", _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
Additional Notes and Information
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.
Software Support
We provide a library for the Temp&Hum 6 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
The library initializes and defines the I2C bus driver and drivers that offer a choice for writing data in register and reads data form register. The library includes function for read Temperature and Relative Huminidy data and function for read device part ID data. The user also has the function for RUN and STOP procedure and function for reset device.
Key Functions
float temphum6_readTemperature(uint8_t tempIn)
- Functions for read Temperature data.float temphum6_readRelativeHuminidy()
- Functions for read Relative Huminidy data.void temphum6_reset()
- Functions for reset device.
Example Description
The application is composed of the three sections :
- System Initialization - Initializes I2C module.
- Application Initialization - Initialization driver init and reset device and read Part ID.
- Application Task - (code snippet) - Reads Temperature and Huminidy data and logs this data to USBUART every 1sec.
void applicationTask() { char demoText[50]; float TEMP; float HUM; TEMP = temphum6_readTemperature(_TEMPHUM6_TEMP_IN_CELSIUS); FloatToStr(TEMP,demoText); mikrobus_logWrite("Temperature is ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_TEXT); mikrobus_logWrite(" C", _LOG_LINE); HUM = temphum6_readRelativeHuminidy(); FloatToStr(HUM,demoText); mikrobus_logWrite("Huminidy is ", _LOG_TEXT); mikrobus_logWrite(demoText, _LOG_TEXT); mikrobus_logWrite(" %RH", _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
Additional Notes and Information
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.
Frequently Asked Questions
Have a Question?
Be the first to ask a question about this.