Moisture click
PID: MIKROE‐3084
Weight: 23 g
Moisture click is a Click board™ that can be used to easily detect a moisture level of the
skin, by simply touching the sensitive surface of the PCB. The Click board™ is equipped
with the printed copper trace sensor, which is sampled by the accurate FDC2112 IC, a
12bit capacitance to digital (FDC) converter, which employs innovative noise and EMI
resistant capacitance measuring techniques. This sensor allows the Click board™ to
measure the skin moisture by measuring its capacitance, which changes depending on
the skin moisture level (hydration state of the outer epidermis).
The simplicity and a low number of external components required for operation, make the
FDC2112 IC an ideal solution for using it in a range of different applications that are based
on the capacitance measurement. The Click board™ allows evaluation of the FDC2112 IC,
utilizing it for a range of skin hydration and moisture measurement applications, which
involve an accurate and reliable measurement of the capacitive properties of the skin, in
order to determine the percentage of hydration or moisture.
How does it work?
As already mentioned, the working principle of the Moisture click is based on measuring
the skin capacitance property in order to determine the skin moisture level or hydration
state of the outer epidermis. The studies show that various skin hydration measurement
methods are complementary and no single method gives 100% accurate result for all skin
conditions. However, measurement of the capacity turned out to be the most effective and
reliable of measuring the skin hydration. Therefore, Moisture click uses the FDC2112IC, a
very precise 12bit capacitance to digital converter, from Texas Instruments.
The main challenge for all the capacitive sensing applications is the presence of EMI and
noise, which can reduce the sensitivity. The FDC2112 IC employs an innovative narrow
band architecture, which reduces the electromagnetic interferences (EMI) and noise
influence. It uses an L‐C resonator, (L‐C tank) and monitors changes of its resonant
frequency, which occurs as a result of a change in the capacitance. The IC features an
internal referent frequency generator, which is compared with the measured oscillation
frequency of the L‐C tank. The 16bit conversion result is stored on the 12bit output
registers, and it is available via the I2C interface. The digital gain function allows a higher
dynamic range of the measurement to be obtained, by shifting the internal 16bit value.
The device features 2 internal sensing channels, of which only one is required for this
application. There are two connections, IN0A and IN0B, forming the necessary L‐C
resonator circuit, along with the copper trace that serves as the capacitance sensor. By
placing a finger on the pad, the capacitance of the resonator is changed, and the frequency
is shifted. This frequency shift is measured and stored at the output registers.
The working parameters of this circuit can be configured by the appropriate registers,
such for example ‐ the input deglitch filter which suppresses EMI and ringing above the
sensor frequency, conversion time, sequencing mode through the channels, and so on. The
FDC2112 datasheet offers a complete description of all the registers and their functions.
There are two power modes available, used to reduce the power consumption. The device
goes into the Sleep mode right after the POR (Power‐ON Reset), waiting to be configured.
When the Sleep Mode Enable bit in the status register is cleared, the device enters the
Normal mode, ready to make measurements. The manufacturer recommends configuring
the device only while in the Sleep mode. If frequent data acquisition is not required, the
device can be put into the Sleep mode between the readings, saving power that way. The
configuration data is retained in this mode, and the I2C interface is operational.
The configurable INTB pin of the FDC2112 IC can be used for the host controller
notification. It can be configured to notify the host MCU for a range of different functions,
including data ready event, watchdog error, amplitude too low or too high error, etc. Each
of these events can be set to raise a flag and be reported by asserting the INTB pin. This pin
is open‐drain configuration and it is pulled to a LOW logic level when asserted. It is routed
to the mikroBUS™ INT pin.
I2C address of the FDC2112 IC can be selected with the SMD jumper labeled as ADD SEL.
This jumper sets the state of the least significant bit (LSB) of the I2C slave address, to either
0 or 1, according to the jumper position it occupies (labeled as 0 and 1).
Lines of the I2C interface are routed to the appropriate mikroBUS™ pins (SCL and SDA)
providing an easy and reliable connection with the host MCU. This Click board™ requires
only 3.3V for the operation and it should not be interfaced with the MCUs operating with
5V signal levels without a proper logic voltage level shifter.
Specifications
Type
Temperature / Humidity
This Click board™ is an ideal solution for development of skin
Applications
moisture/skin hydration applications, based on a reliable and
innovative capacitive sensing technology
On-board
FDC2112 IC, a very precise 12bit capacitance to digital converter,
modules
from Texas Instruments
Noise and electromagnetic interference (EMI) immunity, low power
Key Features
consumption, configurable interrupt pin, low number of external
components required, and more
Interface
I2C
Input Voltage
3.3V
Click board
size
L (57.15 x 25.4 mm)
Pinout diagram
This table shows how the pinout on Moisture 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
INT
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
3.3V
7
3.3V
5V
10
NC
Ground
GND
8
GND
GND
9
GND
Interrupt
Ground
Onboard jumpers and settings
Label
Name
Default
LD1
PWR
-
JP1
ADDR SEL
Left
Description
Power LED indicator
I2C address LSB selection: left position 0, right position
1
Software support
We provide a demo application for Moisture 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 the register. The library includes a function for calibration chip for
measurement, a function for reading moisture data. The user also has the function for
initializes chip, set offset, gain and clock divider and software reset.
Key functions :
uint8_t moisture_init(uint16_t gain, uint16_t offset, uint16_t clk_div)‐
Functions for initializing the chip
uint8_t moisture_getData() ‐ Functions for measurement data in percent.
void moisture_calibration() ‐ Functions for calibration chip for measurement
Example description
The application is composed of three sections :
System Initialization - Initializes I2C module
Application Initialization - Initializes Driver init and sets moisture gain, offset data and clock
divider. Calibration chip for measurement - don't touch the sensor while calibrating.
Application Task - (code snippet) - Measure moisture data in percentage every 500ms. To make
the measurement successful, touch the sensor and wait until values are stabilized.
void applicationTask()
{
mikrobus_logWrite(" Moisture data : ", _LOG_TEXT);
moistureData = moisture_getData();
IntToStr(moistureData, demoText);
mikrobus_logWrite(demoText, _LOG_LINE);
Delay_ms( 500 );
}
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
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.
mikroSDK
This click board is supported with mikroSDK ‐ MikroElektronika Software Development
Kit. To ensure proper operation of mikroSDK compliant click board demo applications,
mikroSDK should be downloaded from the LibStock and installed for the compiler you are
using.
For more information about mikroSDK, visit the official page.
Downloads
mikroBUS™ Standard specification
LibStock: mikroSDK
Moisture click 2D and 3D files
fdc2112-q1 datasheet
Moisture click schematic
Libstock: Moisture click library
https://www.mikroe.com/moisture-click?adtoken=f2e5595b7ba5a62c512322f45b76b5a17d1731c3&ad=mikromanage&id_employee=21 7-11-18