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

How to Use ZH03B: Examples, Pinouts, and Specs

Image of ZH03B
Cirkit Designer LogoDesign with ZH03B in Cirkit Designer

Introduction

The ZH03B Laser Dust Sensor Module is an advanced and highly sensitive device designed to detect and measure the presence of dust particles in the air. Utilizing laser scattering technology, the ZH03B can identify particulate matter with high precision, making it an essential tool for air quality monitoring. Common applications include environmental monitoring, air purifiers, smart home devices, and industrial air quality control systems.

Explore Projects Built with ZH03B

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32-Based Battery-Powered Multi-Sensor System
Image of Dive sense: A project utilizing ZH03B in a practical application
This circuit consists of a TP4056 module connected to a 3.7V LiPo battery, providing a charging interface for the battery. The TP4056 manages the charging process by connecting its B+ and B- pins to the battery's positive and ground terminals, respectively.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Emergency Alert System with NUCLEO-F072RB, SIM800L, and GPS NEO 6M
Image of women safety: A project utilizing ZH03B in a practical application
This circuit is an emergency alert system that uses a NUCLEO-F072RB microcontroller to send SMS alerts and make calls via a SIM800L GSM module, while obtaining location data from a GPS NEO 6M module. The system is powered by a Li-ion battery and includes a TP4056 module for battery charging and protection, with a rocker switch to control power to the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
STM32F103C8T6 Bluetooth-Controlled Arcade Joystick Interface
Image of RC카 조이스틱: A project utilizing ZH03B in a practical application
This circuit features an STM32F103C8T6 microcontroller interfaced with a Bluetooth HC-06 module for wireless communication and an Adafruit Arcade Joystick for user input. The microcontroller's pins B0 and B10 are connected to the TXD and RXD pins of the Bluetooth module, enabling serial communication, while pins B14 and B15 interface with the joystick's directional controls. The circuit is powered by a battery, with power distribution managed through the microcontroller's 3.3V pin and common ground connections.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32-Based Environmental Monitoring System with Solar Charging
Image of IoT Ola (Final): A project utilizing ZH03B in a practical application
This circuit features an ESP32 microcontroller interfaced with a BME/BMP280 sensor for environmental monitoring and an MH-Z19B sensor for CO2 measurement, both communicating via I2C (SCL, SDA) and serial (TX, RX) connections respectively. It includes a SIM800L module for GSM communication, connected to the ESP32 via serial (TXD, RXD). Power management is handled by two TP4056 modules for charging 18650 Li-ion batteries via solar panels, with a step-up boost converter to provide consistent voltage to the MH-Z19B, and voltage regulation for the SIM800L. Decoupling capacitors are used to stabilize the power supply to the BME/BMP280 and ESP32.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with ZH03B

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 Dive sense: A project utilizing ZH03B in a practical application
ESP32-Based Battery-Powered Multi-Sensor System
This circuit consists of a TP4056 module connected to a 3.7V LiPo battery, providing a charging interface for the battery. The TP4056 manages the charging process by connecting its B+ and B- pins to the battery's positive and ground terminals, respectively.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of women safety: A project utilizing ZH03B in a practical application
Battery-Powered Emergency Alert System with NUCLEO-F072RB, SIM800L, and GPS NEO 6M
This circuit is an emergency alert system that uses a NUCLEO-F072RB microcontroller to send SMS alerts and make calls via a SIM800L GSM module, while obtaining location data from a GPS NEO 6M module. The system is powered by a Li-ion battery and includes a TP4056 module for battery charging and protection, with a rocker switch to control power to the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of RC카 조이스틱: A project utilizing ZH03B in a practical application
STM32F103C8T6 Bluetooth-Controlled Arcade Joystick Interface
This circuit features an STM32F103C8T6 microcontroller interfaced with a Bluetooth HC-06 module for wireless communication and an Adafruit Arcade Joystick for user input. The microcontroller's pins B0 and B10 are connected to the TXD and RXD pins of the Bluetooth module, enabling serial communication, while pins B14 and B15 interface with the joystick's directional controls. The circuit is powered by a battery, with power distribution managed through the microcontroller's 3.3V pin and common ground connections.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of IoT Ola (Final): A project utilizing ZH03B in a practical application
ESP32-Based Environmental Monitoring System with Solar Charging
This circuit features an ESP32 microcontroller interfaced with a BME/BMP280 sensor for environmental monitoring and an MH-Z19B sensor for CO2 measurement, both communicating via I2C (SCL, SDA) and serial (TX, RX) connections respectively. It includes a SIM800L module for GSM communication, connected to the ESP32 via serial (TXD, RXD). Power management is handled by two TP4056 modules for charging 18650 Li-ion batteries via solar panels, with a step-up boost converter to provide consistent voltage to the MH-Z19B, and voltage regulation for the SIM800L. Decoupling capacitors are used to stabilize the power supply to the BME/BMP280 and ESP32.
Cirkit Designer LogoOpen Project in Cirkit Designer

Technical Specifications

Key Technical Details

  • Operating Voltage: 5V DC
  • Measuring Particle Size: 1.0 µm, 2.5 µm, and 10 µm
  • Output Data: PM1.0, PM2.5, PM10 concentrations (µg/m³)
  • Preheating Time: ≤ 30 seconds
  • Response Time: ≤ 10 seconds
  • Working Temperature Range: -20°C to 50°C
  • Working Humidity Range: 0 to 99% RH
  • Interface: UART (TTL level)

Pin Configuration and Descriptions

Pin Number Name Description
1 VCC Power supply (5V DC)
2 GND Ground
3 TXD UART Transmit
4 RXD UART Receive
5 RESET Reset pin (active low)
6 PWM PWM output mode (optional)

Usage Instructions

Integration into a Circuit

  1. Power Supply: Connect the VCC pin to a 5V power source and the GND pin to the ground.
  2. Data Communication: Connect the TXD pin to the RX (receive) pin of your microcontroller, and the RXD pin to the TX (transmit) pin.
  3. Reset (Optional): The RESET pin can be connected to a digital pin on your microcontroller if software reset functionality is required.

Important Considerations and Best Practices

  • Ensure that the power supply is stable and within the specified voltage range.
  • Avoid exposing the sensor to high concentrations of organic solvents, corrosive gases, or heavy dust for extended periods.
  • For accurate measurements, allow the sensor to preheat for at least 30 seconds after powering on.
  • Implement a proper calibration routine if precise measurements are critical for your application.

Example Code for Arduino UNO

#include <SoftwareSerial.h>

SoftwareSerial zhSerial(10, 11); // RX, TX

void setup() {
  Serial.begin(9600);
  zhSerial.begin(9600);
  Serial.println("ZH03B Dust Sensor Example");
}

void loop() {
  if (zhSerial.available()) {
    // Read data from the sensor
    byte data[24];
    for (int i = 0; i < 24; i++) {
      data[i] = zhSerial.read();
    }

    // Check data packet header and tail
    if (data[0] == 0xFF && data[1] == 0x18 && data[22] == 0xAB && data[23] == 0x07) {
      int PM1_0 = data[4] * 256 + data[5];
      int PM2_5 = data[6] * 256 + data[7];
      int PM10 = data[8] * 256 + data[9];

      // Output the dust concentration values
      Serial.print("PM1.0: ");
      Serial.print(PM1_0);
      Serial.print(" ug/m3, PM2.5: ");
      Serial.print(PM2_5);
      Serial.print(" ug/m3, PM10: ");
      Serial.print(PM10);
      Serial.println(" ug/m3");
    }
  }
  delay(1000); // Wait for 1 second before reading again
}

Troubleshooting and FAQs

Common Issues

  • Inaccurate Readings: Ensure the sensor has preheated for at least 30 seconds. Avoid placing the sensor in environments with high humidity or volatile organic compounds.
  • No Data Output: Check the wiring, especially the UART connections. Ensure that the power supply is within the specified range.
  • Sensor Not Responding: Perform a reset by pulling the RESET pin low or power cycle the sensor.

FAQs

Q: Can the ZH03B sensor measure other types of particles? A: The ZH03B is specifically designed to measure particulate matter such as dust. It is not suitable for detecting gases or other pollutants.

Q: How often should the sensor be calibrated? A: Calibration frequency depends on the application's accuracy requirements. For critical applications, calibration should be performed regularly against a known reference.

Q: Is the ZH03B sensor waterproof? A: No, the ZH03B is not waterproof. Protect it from moisture and water damage.

For further assistance, please refer to the manufacturer's technical support or community forums dedicated to air quality monitoring.