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

How to Use SDS011: Examples, Pinouts, and Specs

Image of SDS011
Cirkit Designer LogoDesign with SDS011 in Cirkit Designer

Introduction

The SDS011 is a laser-based particulate matter (PM) sensor manufactured by Nova Fitness Co., Ltd. It is designed to measure the concentration of PM2.5 and PM10 particles in the air with high precision and reliability. The sensor uses laser scattering technology to detect and count particles, providing real-time digital output via UART. Its compact design and ease of use make it a popular choice for air quality monitoring systems, environmental research, and IoT applications.

Explore Projects Built with SDS011

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino UNO-Based Water Quality Monitoring System with TDS Sensor and SIM900A SMS Alerts
Image of WaterQuality: A project utilizing SDS011 in a practical application
This circuit is a water quality monitoring system using an Arduino Uno, which reads TDS values from a TDS sensor and displays the results on a 16x2 I2C LCD. A green LED indicates good water quality, while a SIM900A module sends an SMS alert if the water quality is poor.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO-Based Water Quality Monitoring System with TDS Sensor and SMS Alerts
Image of Arduino Based Project Water Quality Sensor!: A project utilizing SDS011 in a practical application
This circuit is a water quality monitoring system that uses an Arduino Uno to read TDS (Total Dissolved Solids) values from a TDS sensor and display the results on a 16x2 I2C LCD. A green LED indicates good water quality, while a SIM900A module sends an SMS alert if the water quality is poor.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Water Quality Monitoring System with DS18B20 and Turbidity Sensor
Image of Copy of AquaSense: A project utilizing SDS011 in a practical application
This circuit is a water quality monitoring system that uses an ESP32 microcontroller to measure TDS, pH, temperature, and turbidity of water. The system includes sensors for each parameter and a start switch, with data being displayed on a 16x2 I2C LCD and logged via serial communication.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Environmental Monitoring System with Nokia 5110 LCD and Multiple Sensors
Image of MONITORING STATION WATER QUALITY : A project utilizing SDS011 in a practical application
This circuit is a solar-powered environmental monitoring system that uses an ESP32 microcontroller to interface with various sensors (temperature, turbidity, TDS, pH, dissolved oxygen, electrical conductivity, and ORP) and a GPS module. The system charges a 18650 Li-Ion battery via a TP4056 module connected to a solar panel, and displays data on a Nokia 5110 LCD.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with SDS011

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 WaterQuality: A project utilizing SDS011 in a practical application
Arduino UNO-Based Water Quality Monitoring System with TDS Sensor and SIM900A SMS Alerts
This circuit is a water quality monitoring system using an Arduino Uno, which reads TDS values from a TDS sensor and displays the results on a 16x2 I2C LCD. A green LED indicates good water quality, while a SIM900A module sends an SMS alert if the water quality is poor.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Arduino Based Project Water Quality Sensor!: A project utilizing SDS011 in a practical application
Arduino UNO-Based Water Quality Monitoring System with TDS Sensor and SMS Alerts
This circuit is a water quality monitoring system that uses an Arduino Uno to read TDS (Total Dissolved Solids) values from a TDS sensor and display the results on a 16x2 I2C LCD. A green LED indicates good water quality, while a SIM900A module sends an SMS alert if the water quality is poor.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Copy of AquaSense: A project utilizing SDS011 in a practical application
ESP32-Based Water Quality Monitoring System with DS18B20 and Turbidity Sensor
This circuit is a water quality monitoring system that uses an ESP32 microcontroller to measure TDS, pH, temperature, and turbidity of water. The system includes sensors for each parameter and a start switch, with data being displayed on a 16x2 I2C LCD and logged via serial communication.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of MONITORING STATION WATER QUALITY : A project utilizing SDS011 in a practical application
ESP32-Based Environmental Monitoring System with Nokia 5110 LCD and Multiple Sensors
This circuit is a solar-powered environmental monitoring system that uses an ESP32 microcontroller to interface with various sensors (temperature, turbidity, TDS, pH, dissolved oxygen, electrical conductivity, and ORP) and a GPS module. The system charges a 18650 Li-Ion battery via a TP4056 module connected to a solar panel, and displays data on a Nokia 5110 LCD.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Indoor and outdoor air quality monitoring
  • Smart home and IoT devices
  • Environmental research and data collection
  • HVAC systems for air quality control
  • Industrial pollution monitoring

Technical Specifications

The SDS011 sensor is designed for accurate and reliable particulate matter detection. Below are its key technical specifications:

Parameter Value
Measurement Range 0.0 – 999.9 µg/m³
Particle Size Detection PM2.5 and PM10
Accuracy ±10%
Resolution 0.3 µg/m³
Output Interface UART (3.3V TTL) and PWM
Operating Voltage 4.7V – 5.3V
Operating Current ≤ 70 mA
Response Time ≤ 10 seconds
Operating Temperature -10°C to +50°C
Operating Humidity 0 – 70% RH
Lifetime 8,000 hours
Dimensions 71 mm × 70 mm × 23 mm
Weight ~150 g

Pin Configuration

The SDS011 sensor has a 7-pin connector for power and data communication. The pin configuration is as follows:

Pin Number Pin Name Description
1 VCC Power supply (4.7V – 5.3V)
2 GND Ground
3 RX UART Receive (3.3V TTL)
4 TX UART Transmit (3.3V TTL)
5 SET Sleep/Wake control (optional, active low)
6 NC Not connected
7 NC Not connected

Usage Instructions

Connecting the SDS011 to a Circuit

  1. Power Supply: Connect the VCC pin to a 5V power source and the GND pin to ground.
  2. Data Communication: Use the TX and RX pins for UART communication. Ensure the microcontroller or device you are using supports 3.3V TTL UART levels.
  3. Optional Control: The SET pin can be used to put the sensor into sleep mode to conserve power. Leave it unconnected if not used.

Important Considerations

  • Airflow: Ensure the sensor's air inlet and outlet are unobstructed for accurate readings.
  • Orientation: Install the sensor in a horizontal position for optimal performance.
  • Warm-Up Time: Allow the sensor to warm up for 30 seconds after powering on for stable readings.
  • Lifetime: The sensor has a limited operational lifetime of 8,000 hours. Plan for periodic replacement in long-term applications.

Example: Connecting SDS011 to Arduino UNO

Below is an example of how to connect and use the SDS011 sensor with an Arduino UNO:

Wiring Diagram

SDS011 Pin Arduino UNO Pin
VCC 5V
GND GND
TX D2 (via voltage divider for 5V to 3.3V conversion)
RX D3

Arduino Code

#include <SoftwareSerial.h>

// Define RX and TX pins for SoftwareSerial
SoftwareSerial sdsSerial(3, 2); // RX = Pin 3, TX = Pin 2

void setup() {
  Serial.begin(9600); // Initialize Serial Monitor
  sdsSerial.begin(9600); // Initialize SDS011 UART communication

  Serial.println("SDS011 Sensor Initialized");
}

void loop() {
  if (sdsSerial.available() > 0) {
    // Read data from SDS011
    byte data[10];
    int index = 0;

    while (sdsSerial.available() > 0 && index < 10) {
      data[index++] = sdsSerial.read();
    }

    // Validate data packet
    if (index == 10 && data[0] == 0xAA && data[1] == 0xC0 && data[9] == 0xAB) {
      int pm25 = (data[2] + (data[3] << 8)) / 10; // PM2.5 in µg/m³
      int pm10 = (data[4] + (data[5] << 8)) / 10; // PM10 in µg/m³

      Serial.print("PM2.5: ");
      Serial.print(pm25);
      Serial.print(" µg/m³, PM10: ");
      Serial.print(pm10);
      Serial.println(" µg/m³");
    }
  }

  delay(1000); // Wait 1 second before next reading
}

Best Practices

  • Use a voltage divider or level shifter to safely connect the sensor's TX pin to a 5V microcontroller.
  • Avoid exposing the sensor to high humidity or corrosive gases, as this may damage the internal components.
  • Periodically clean the sensor's air inlet and outlet to prevent dust buildup.

Troubleshooting and FAQs

Common Issues and Solutions

  1. No Data Output

    • Ensure the sensor is powered correctly (4.7V – 5.3V).
    • Verify the UART connection and baud rate (9600 bps).
    • Check for loose or incorrect wiring.
  2. Inaccurate Readings

    • Allow the sensor to warm up for at least 30 seconds after powering on.
    • Ensure the sensor is installed in a horizontal position with unobstructed airflow.
    • Clean the air inlet and outlet if dust buildup is suspected.
  3. Sensor Stops Working

    • Check the sensor's operational lifetime (8,000 hours). Replace the sensor if it has exceeded its lifetime.
    • Verify that the operating temperature and humidity are within the specified range.

FAQs

Q: Can the SDS011 measure other particle sizes besides PM2.5 and PM10?
A: No, the SDS011 is specifically designed to measure PM2.5 and PM10 particle concentrations.

Q: How do I put the sensor into sleep mode?
A: Pull the SET pin low to put the sensor into sleep mode. Leave it unconnected or pull it high to wake the sensor.

Q: Can I use the SDS011 with a 3.3V microcontroller?
A: Yes, but ensure the VCC pin is supplied with 5V. The UART pins (TX and RX) are 3.3V TTL compatible.

Q: How often should I clean the sensor?
A: Cleaning frequency depends on the environment. In dusty conditions, clean the air inlet and outlet every few months.

Q: What is the sensor's response time?
A: The SDS011 has a response time of ≤ 10 seconds, providing near real-time measurements.