Skip to main content

Grove - High Precision Barometric Pressure Sensor DPS310

Grove - High Precision Barometric Pressure Sensor (DPS310)

pir

Barometer detecting is very useful in enviromental sensing or altitude measuring. The Grove Barometer sensor is besed on infineon DPS310, a miniaturized digital barometer air pressure sensor with high accuracy. It can measure pressure range from 300 to 1200 hPa, with ±0.002hPa precision, which means you can detect altitude change within ±2cm at most.

pir

BMP280 vs. BME280 vs. DPS310

We've already released the Grove - Barometer Sensor (BMP280) and Grove - Barometer Sensor(BME280), let us show you how powerful Grove-DPS310 is through the comparison of the table below.

ITEMGrove-BMP280Grove-BME280Grove-DPS310
Pressure Range300 ~ 1100 hPa300 ~ 1100 hPa300 ~ 1200 hPa
Temperature Range-40 ~ 85 ℃-40 ~ 85 ℃-40 ~ 85 °C
Pressure Precision--± 0.002 hPa (or ±0.02 m)
Pressure Accuracy(Absolute)± 1 hPa (or ±8 m)± 1 hPa (or ±8 m)± 1 hPa (or ±8 m)
Pressure Accuracy (Relative)± 0.12 hPa± 0.12 hPa± 0.06 hPa (or ±0.5 m)
Pressure Resolution0.18 Pa0.18 Pa0.06 Pa
Humidity-0 ~ 100%-
CommunicationI2C/SPII2C/SPII2C/SPI

Specification

ItemValue
Operating Voltage3.3V / 5V
Operating air pressure300 to 1200hPa
Precision±0.002hPa
InterfaceI2C,SPI
I2C AddressThe default address is 0x77,When short-circuited, the address is 0x76
note
When communicating in SPI mode, do not select I<sup>2</sup>C address as 0x76, otherwise SPI will not be able to read data normally (since I<sup>2</sup>C and SPI share pins, I<sup>2</sup>C address as 0x76 is equivalent to MOSI pin grounding).

Features

  • High Pressure Precision: ± 0.002 hPa (or ±0.02 m)
  • High Pressure Accuracy: ± 0.06 hPa (or ±0.5 m)-Relative; ± 1 hPa (or ±8 m)-Absolute
  • Wide Range: Pressure: 300 –1200 hPa; Temperature: -40 – 85 °C.
  • Easy to Use: Grove IIC (with interrupt) / SPI
  • Low power consumption

Typical Applications

  • Indoor Navigation (floor detection e.g. in shopping malls and parking garages)
  • Health and Sports (accurate elevation gain and vertical speed)
  • Outdoor Navigation (GPS start-up time and accuracy improvement, dead-reckoning e.g. in tunnels)
  • Weather Station('Micro-weather' and local forecasts)
  • Drones (flight stability and height control)
tip
More details about Grove modules please refer to [Grove System](https://wiki.seeedstudio.com/Grove_System/)

Hardware Overview

pir

Platforms Supported

ArduinoRaspberry PiBeagleBoneWioLinkIt ONE

pir

pir

pir

pir

pir

caution
The platforms mentioned above as supported is/are an indication of the module's software or theoritical compatibility. We only provide software library or code examples for Arduino platform in most cases. It is not possible to provide software library / demo code for all possible MCU platforms. Hence, users have to write their own software library.

Getting Started

note
If this is the first time you work with Arduino, we firmly recommend you to see [Getting Started with Arduino](https://wiki.seeedstudio.com/Getting_Started_with_Arduino/) before the start.

Play With Arduino

Hardware

Materials required

Seeeduino V4.2Base ShieldHigh Precision Barometric Pressure Sensor

pir

pir

pir

Get One NowGet One NowGet One Now
note
**1** Please plug the USB cable gently, otherwise you may damage the port. Please use the USB cable with 4 wires inside, the 2 wires cable can't transfer data. If you are not sure about the wire you have, you can click [here](https://www.seeedstudio.com/Micro-USB-Cable-48cm-p-1475.html) to buy.

**2** Each Grove module comes with a Grove cable when you buy. In case you lose the Grove cable, you can click [here](https://www.seeedstudio.com/Grove-Universal-4-Pin-Buckled-20cm-Cable-%285-PCs-pack%29-p-936.html) to buy.
  • Step 1. Connect the Grove - High Precision Barometric Pressure Sensor (DPS310) to port I2C of Grove-Base Shield.

  • Step 2. Plug Grove - Base Shield into Seeeduino.

  • Step 3. Connect Seeeduino to PC via a USB cable.

Software

note
If this is the first time you work with Arduino, we strongly recommend you to see [Getting Started with Arduino](https://wiki.seeedstudio.com/Getting_Started_with_Arduino/) before the start.
  • Step 3. Copy the code into Arduino IDE and upload.
#include <Dps310.h>

Dps310 Dps310PressureSensor = Dps310();

void setup()
{
Serial.begin(9600);
while (!Serial);
Dps310PressureSensor.begin(Wire);
Serial.println("Init complete!");
}

void loop()
{
float Detection_array[10];
uint8_t oversampling = 7;
int16_t ret;
int i;
int size = 10;
int state1;
int state2;
/*In the following two cycles, the pressure state at the pre and post time was detected respectively.
The sampling quantity was 10. The values with large deviation were removed, and the average value was calculated.*/
ret = Dps310PressureSensor.measurePressureOnce(Detection_array[0], oversampling);
state1 = Detection_array[0];
for (i = 1; i < 9; i++)
{
ret = Dps310PressureSensor.measurePressureOnce(Detection_array[i], oversampling);
if (Detection_array[i] - Detection_array[i - 1] < 5)
{
state1 += Detection_array[i];
}
else
{
size -= 1;
}
}
state1 = state1 / size;
delay(100);


ret = Dps310PressureSensor.measurePressureOnce(Detection_array[0], oversampling);
state2 = Detection_array[0];
for (i = 1; i < 9; i++)
{
ret = Dps310PressureSensor.measurePressureOnce(Detection_array[i], oversampling);
if (Detection_array[i] - Detection_array[i - 1] < 5)
{
state2 += Detection_array[i];
}
else
{
size -= 1;
}
}
state2 = state2 / size;

if (ret != 0)
{
Serial.print("FAIL! ret = ");
Serial.println(ret);
}
/*Calculate the difference in air pressure to determine if you fall*/
else if (state2 - state1 > 4)
{
Serial.println("You fell down. Do you need help?");
delay(5000);
}
else
Serial.println("It's ok!");
}

/*********************************************************************************************************
END FILE
*********************************************************************************************************/
  • Step 4. Upload the demo. If you do not know how to upload the code, please check How to upload code.
  • Step 5. Open the serial monitor. If every thing goes well and if you simulate a fall, or drop it to the ground, it will tell you if you need help.

Resources

Schematic Online Viewer

Tech Support & Product Discussion

Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs.

Loading Comments...