Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use SparkFun Pressure Sensor Breakout - MS5803-14BA: Examples, Pinouts, and Specs

Image of SparkFun Pressure Sensor Breakout - MS5803-14BA
Cirkit Designer LogoDesign with SparkFun Pressure Sensor Breakout - MS5803-14BA in Cirkit Designer

Introduction

The SparkFun Pressure Sensor Breakout - MS5803-14BA is a high-resolution pressure sensor module capable of measuring pressure up to 14 bar (approximately 200 psi), making it suitable for a wide range of applications, including weather stations, water depth measurements, and altimeters. This sensor uses a high-resolution 24-bit analog-to-digital converter to transform the pressure readings into digital form. It also features temperature measurement capability, which can be used to compensate for the pressure readings.

Explore Projects Built with SparkFun Pressure Sensor Breakout - MS5803-14BA

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Battery-Powered Environmental Monitoring System with ESP32, BNO055, and MS5803-14BA
Image of bencana banjir: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
This circuit is a sensor network powered by a LiPo battery through a step-down buck converter, which supplies power to multiple ESP32 microcontrollers, a BNO055 IMU, an ultrasonic sensor, and a pressure sensor. The ESP32 microcontrollers handle data acquisition from the sensors and are programmed to process and transmit this data. The sensors are connected to the ESP32s via I2C and GPIO pins for communication and data collection.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano-Based Battery-Powered Weather Station with SD Card Logging
Image of Leak-test: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
This circuit features an Arduino Nano microcontroller interfaced with a Gravity BMP388 barometric pressure sensor and a Fermion SD Card Module. The Arduino Nano reads pressure data from the BMP388 sensor via I2C communication and stores the data on the SD card using SPI communication. The circuit is powered by a 7.4V battery connected to the Arduino Nano's VIN pin.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano Weather Station with BMP180 Sensor and MicroSD Data Logging
Image of circuito: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
This circuit features an Arduino Nano microcontroller interfaced with an Adafruit BMP180 sensor for measuring atmospheric pressure and a MicroSD card socket for data storage. The BMP180 communicates with the Arduino via I2C, while the MicroSD card uses SPI for data transfer.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP8266 NodeMCU Based Multi-Sensor Monitoring System
Image of test 2: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
This circuit is designed around an ESP8266 NodeMCU microcontroller, which interfaces with a BMP180 barometric pressure sensor, a VL53L0X time-of-flight distance sensor, and a VL6180X proximity and ambient light sensor. The microcontroller collects environmental data such as atmospheric pressure, temperature, and distances to objects, and processes this information to monitor conditions such as eye pressure. The circuit is powered by a LiPoly battery, regulated by an AMS1117 3.3V voltage regulator, and is likely intended for applications in health monitoring or environmental sensing.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with SparkFun Pressure Sensor Breakout - MS5803-14BA

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of bencana banjir: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
Battery-Powered Environmental Monitoring System with ESP32, BNO055, and MS5803-14BA
This circuit is a sensor network powered by a LiPo battery through a step-down buck converter, which supplies power to multiple ESP32 microcontrollers, a BNO055 IMU, an ultrasonic sensor, and a pressure sensor. The ESP32 microcontrollers handle data acquisition from the sensors and are programmed to process and transmit this data. The sensors are connected to the ESP32s via I2C and GPIO pins for communication and data collection.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Leak-test: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
Arduino Nano-Based Battery-Powered Weather Station with SD Card Logging
This circuit features an Arduino Nano microcontroller interfaced with a Gravity BMP388 barometric pressure sensor and a Fermion SD Card Module. The Arduino Nano reads pressure data from the BMP388 sensor via I2C communication and stores the data on the SD card using SPI communication. The circuit is powered by a 7.4V battery connected to the Arduino Nano's VIN pin.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of circuito: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
Arduino Nano Weather Station with BMP180 Sensor and MicroSD Data Logging
This circuit features an Arduino Nano microcontroller interfaced with an Adafruit BMP180 sensor for measuring atmospheric pressure and a MicroSD card socket for data storage. The BMP180 communicates with the Arduino via I2C, while the MicroSD card uses SPI for data transfer.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of test 2: A project utilizing SparkFun Pressure Sensor Breakout - MS5803-14BA in a practical application
ESP8266 NodeMCU Based Multi-Sensor Monitoring System
This circuit is designed around an ESP8266 NodeMCU microcontroller, which interfaces with a BMP180 barometric pressure sensor, a VL53L0X time-of-flight distance sensor, and a VL6180X proximity and ambient light sensor. The microcontroller collects environmental data such as atmospheric pressure, temperature, and distances to objects, and processes this information to monitor conditions such as eye pressure. The circuit is powered by a LiPoly battery, regulated by an AMS1117 3.3V voltage regulator, and is likely intended for applications in health monitoring or environmental sensing.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Water depth sensing for underwater vehicles
  • Altimetry in drones and aircraft
  • Weather station barometric pressure measurement
  • Fluid pressure monitoring in industrial systems

Technical Specifications

Key Technical Details

  • Pressure Range: 0 to 14 bar (0 to 200 psi)
  • Supply Voltage: 1.8V to 3.6V
  • Operating Current: 0.6 mA
  • Output: 24-bit digital pressure and temperature value
  • Interface: I2C and SPI compatible
  • Operating Temperature: -40°C to +85°C

Pin Configuration and Descriptions

Pin Number Name Description
1 GND Ground connection
2 CSB Chip Select for SPI interface (pull low to select)
3 SDI Serial Data In for SPI, I2C SDA
4 SDO Serial Data Out for SPI, I2C address selection
5 SCK Serial Clock for SPI, I2C SCL
6 PS Protocol Select (pull low for SPI, high for I2C)
7 VDD Supply Voltage

Usage Instructions

How to Use the Component in a Circuit

  1. Powering the Sensor: Connect the VDD pin to a power supply between 1.8V and 3.6V. Connect the GND pin to the ground of your power supply.
  2. Selecting the Interface: For I2C, set the PS pin high. For SPI, set the PS pin low.
  3. Connecting to a Microcontroller: For I2C, connect the SCK to SCL and SDI to SDA on your microcontroller. For SPI, connect SCK, SDI, SDO, and CSB to the corresponding SPI pins on your microcontroller.
  4. Address Selection: For I2C, the SDO pin can be used to select the I2C address. Connect SDO to GND for address 0x76 or leave it floating for address 0x77.

Important Considerations and Best Practices

  • Ensure that the power supply voltage does not exceed the maximum rating of 3.6V.
  • Use proper decoupling capacitors close to the sensor's power pins to minimize power supply noise.
  • Keep the sensor away from heat sources to avoid affecting the temperature readings.
  • When using in water, ensure that only the pressure port is exposed to the liquid and the rest of the component is properly sealed.

Example Code for Arduino UNO

#include <Wire.h>

// MS5803-14BA I2C address is either 0x76 or 0x77 (depends on the SDO pin)
#define MS5803_ADDR 0x76

void setup() {
  Wire.begin(); // Initialize I2C
  Serial.begin(9600); // Start serial communication at 9600 baud
  // Initialize the MS5803 sensor
  // TODO: Add sensor initialization code here
}

void loop() {
  // Read pressure and temperature from the sensor
  // TODO: Add sensor reading code here
  
  // Print the results to the serial monitor
  // TODO: Add serial print statements here
  
  delay(1000); // Wait for a second before reading again
}

Note: The above code is a skeleton that initializes the I2C communication and sets up the serial communication. You will need to add the specific initialization and reading code for the MS5803-14BA sensor, which can be found in the sensor's datasheet or a library designed for the sensor.

Troubleshooting and FAQs

Common Issues

  • Sensor not responding: Ensure that the sensor is correctly powered and that the I2C/SPI connections are secure.
  • Inaccurate readings: Check for proper sealing if used underwater and ensure that the temperature compensation is correctly implemented.
  • No data on I2C: Verify that the correct I2C address is being used and that there are no address conflicts on the bus.

Solutions and Tips for Troubleshooting

  • Double-check wiring and solder joints for any loose connections or shorts.
  • Use a logic analyzer or oscilloscope to verify the communication protocol and signals.
  • Ensure that the microcontroller's supply voltage matches the sensor's requirements.
  • Implement error handling in your code to detect and respond to communication errors.

FAQs

Q: Can the sensor be used in saltwater? A: Yes, but ensure that the sensor's body is adequately protected against corrosion.

Q: What is the accuracy of the sensor? A: Please refer to the datasheet for detailed accuracy specifications, as it varies with temperature and pressure range.

Q: How do I calibrate the sensor? A: The sensor comes factory-calibrated, but for critical applications, you may perform additional calibration using known pressure and temperature references.

Q: Is there a library available for interfacing with the sensor? A: Yes, there are libraries available for both Arduino and other microcontroller platforms that simplify interfacing with the MS5803-14BA sensor.