Pressure 7 Click
PID: MIKROE‐3246
Weight: 23 g
Pressure 7 click features an integrated digital barometric pressure and temperature
sensor labeled as MS5837. This sensor relies on the advanced MEMS technology by
MEAS Switzerland, a well-known high-volume MEMS manufacturer. It is a highresolution pressure sensor, with offers 24-bit pressure and thermal data over the I2C
interface. Each sensor is factory calibrated, with the compensation parameters stored
within its internal PROM memory. A hermetically sealed stainless-steel body filled with
the protective gel ensures high reliability and mechanical endurance of the sensor. A
high-speed conversion, long-term stability, high resolution, low count of external
components required, and a wide range of MCUs that can it can be interfaced with,
make for just some of the benefits of the Pressure 7 click.
It comes in the package which also includes the mikroSDK™ software and a library with
all the functions. The Click board™ comes as a fully tested and approved prototype,
making it a reliable device ready to use on the development board.
The MS5837 sensor requires no additional components besides the pull-up resistors for
the I2C lines, allowing a very compact design. Therefore, an additional I2C level
translator is used on the Pressure 7 click, expanding its connectivity options to a much
wider range of microcontrollers (MCUs). Thanks to the MS5837 advanced highresolution pressure sensor, Pressure 7 click can be used for development of the
industry-related applications, as well as for the healthcare, mobile, smartphone, and
wearable devices application development. It can be used in any application that can
benefit from using a fast and reliable pressure sensor.
How does it work?
The main component of the Pressure 7 click is the MS5837, a pressure sensor IC
produced by TE Sensor Solutions. This is a highly integrated piezo-resistive absolute
pressure sensor, based on the MEMS technology by MEAS Switzerland, which can
measure the pressure in the range from 0 to 30 bar, and the temperature in the range
from -20° to +85° C. The MEMS (micro electromechanical sensor) is placed in a
hermetically sealed, anti-magnetic stainless-steel cap, protected with the special gel.
This makes the sensor itself water-resistant. Besides the piezo-resistive sensor, the
MS5837 module also contains the highly integrated ASIC (Application Specific
Integrated Circuit) which contains all the necessary components that are required to
convert the uncompensated voltage from the MEMS into 24-bit digital data. The
MS5837 sensor offers the standard I2C interface for the communication with the host
MCU, using only a few commands.
The advanced ASIC which contains the 24bit delta-sigma analog-to-digital converter
(ADC), provides a very high resolution of 0.2 mbar per step, as well as the fast
conversion time, down to 0.5 ms. The already low power consumption can be further
regulated by utilizing different output sample rates (OSR), within the range from 256 to
8192. The OSR setting is contained within a single command, which is sent from the host
MCU to initiate the conversion. The OSR directly affects both the current consumption
of the MS5837 sensor, as well as the conversion time: the higher the OSR ratio, the more
current is required, and less time to complete the conversion cycle.
The user application should perform a reset of the MS5837 sensor module before
reading the compensation parameters from the PROM. These compensation parameters
should be stored by the application for the later use. When the MS5837 module receives
the conversion command over the I2C interface, it will start the thermal and pressure
conversion process. After the conversion, the data is clocked out when ADC Read
command is received. After receiving the raw conversion data from the MS5837, the
application should convert this data, applying the previously stored calibration
parameters. The output data rate, as well as the specific conversion type (thermal or
pressure conversion) depend on the received command. The MS5837 datasheet offers
detailed explanation of the command byte.
The conversion data is available over the I2C interface, as mentioned before. The I2C bus
lines (SDA and SCL) are routed to the respective I2C mikroBUS™ pins which are pulled
up by resistors on the Click board™ itself, allowing the Click board™ to be used right out
of the box. The datasheet of the MS5837 sensor module also offers conversion formulas
and algorithms which can be used to convert the raw binary values from the respective
PROM registers to physical, human-readable format. However, Pressure 7 click comes
with the library that contains functions which output converted and properly formatted
thermal and pressure readings.
In addition to the MS5837 sensor module, Pressure 7 click incorporates an additional IC.
It is the PCA9306, a well-known bi-directional I2C level translator from Texas
Instruments, used on many different Click board™ designs, due to its simplicity and
reliability. Since the MS5837 sensor is limited to 3.3V operation, this IC allows it to be
used with the 5V logic level, expanding the connectivity of the Pressure 7 click to MCUs
which use 5V levels for the I2C communication. The logic voltage level selection can be
made by switching the small onboard SMD jumper labeled as VCC SEL, to a proper
position (3V3 or 5V).
Specifications
Type
Pressure / Altitude
Pressure 7 click can be used for development of the industry-related
Applications
applications, as well as for the healthcare, mobile, smartphone, and
wearable devices application development. It can be used in any
application that can benefit from using a fast and reliable pressure sensor
On-board modules
MS5837, a pressure sensor IC produced by TE Sensor Solutions; PCA9306,
a bi-directional I2C level translator from Texas Instruments
High-speed 24-bit conversion, high resolution, low count of external
Key Features
components required, a wide range of MCUs that can it can be interfaced
with, stainless-steel water-proof casing offers reliability and long-term
stability
Interface
I2C
Input Voltage
3.3V,5V
Click board size
M (42.9 x 25.4 mm)
Pinout diagram
This table shows how the pinout on Pressure 7 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
5V
Power Supply
Ground
GND
8
GND
GND
9
GND
Ground
Onboard settings and indicators
Label
Name
Default
Description
LD1
PWR
-
Power LED indicator
JP1
VCC SEL
Left
Logic level voltage selection: left position 3.3V, right
position 5V
Pressure 7 click electrical specifications
Description
Pressure range
Pressure measurement resolution (OSR
dependent)
Temperature range
Temperature measurement resolution (OSR
dependent)
Long-term stability
Min
Typ
Max
Unit
0
-
30
bar
0.20
-
1.57
-20
-
+85
˚C
0.0022
-
0.0086
˚C/conv
-
±30
-
mbar/year
We provide a library for the Pressure 7 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
sending a command and read data from register. The library includes function for read
Temperature data and Pressure data, function for read calibration data from PROM and
function for start measurement. The user also has the function for reset device and
function for set OSR(Over sampling ratio) for Pressure and Temperature measurement
data.
Key functions:
uint8_t pressure7_readPROM() - Functions for read calibration data from PROM
void pressure7_startMeasurement() - Functions for start measurement and calculation data
void pressure7_getSensorData(float *Temperature, float *Pressure) - Functions for read
Pressure and Temperature data
Examples description
The application is composed of the three sections :
System Initialization - Initializes I2C module.
Application Initialization - Initialization driver init, device reset, set OSR for measurement
Pressure(D1) and Temperature(D2) data and read calibration data from PROM.
Application Task - (code snippet) - Start measurement and reads Temperature data and
Pressure data and logs data to USBUART every 500ms.
void applicationTask()
{
pressure7_startMeasurement();
pressure7_getSensorData(&Temperature, &Pressure);
FloatToStr(Temperature, demoText);
demoText[6] = 0;
mikrobus_logWrite(" Temperature : ", _LOG_TEXT);
mikrobus_logWrite(demoText, _LOG_TEXT);
mikrobus_logWrite(" C ", _LOG_LINE);
FloatToStr(Pressure, demoText);
demoText[7] = 0;
mikrobus_logWrite(" Pressure : ", _LOG_TEXT);
mikrobus_logWrite(demoText, _LOG_TEXT);
mikrobus_logWrite(" mBar ", _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.
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.
https://www.mikroe.com/pressure‐7‐click/12‐6‐18