PMS5003 Particulate Matter Sensor – PM2.5 Air Quality Monitor
PMS5003 PM2.5 Laser Particle Sensor – Air Quality Monitor
The PMS5003 is a laser-based particulate matter sensor that measures PM2.5 and PM10 concentrations in real time, outputting digital serial data with high accuracy and a long-life laser for air quality monitoring.
Key Specifications
| Measurement Range | 0.3–1.0, 1.0–2.5, 2.5–10 µm; PM2.5: 0–999 µg/m³ |
| Output Signal | UART serial (9600 bps default, 3.3V TTL) |
| Power Supply | 5 V DC, typical current <100 mA |
| Laser Source | Class 1 laser, lifetime >8000 hours |
| Response Time | <1 second |
| Accuracy | ±10% for PM2.5 under standard conditions |
| Operating Temperature | -20 to +60 °C |
| Dimensions | 50 × 38 × 21 mm |
What You Can Build With This
- Arduino Air Quality Monitor: Display real‑time PM2.5 readings on a 16×2 LCD with an Arduino Uno and a simple SoftwareSerial sketch.
- ESP32 IoT Dashboard: Stream particulate data over Wi‑Fi to Blynk or ThingSpeak for a remote air quality dashboard using an ESP32.
- Raspberry Pi Logger: Connect via UART to a Raspberry Pi, log PM2.5 values to InfluxDB, and visualise trends in Grafana.
- CBSE Physics Practical: Measure indoor and outdoor particulate matter as part of a Class 11‑12 environmental monitoring project or ATL lab activity.
- Smart City Air Alert: Build a multi‑node pollution mapping system with LoRa or cellular backhaul for a B.Tech final year project or Smart India Hackathon entry.
Compatibility
| Platform | Compatible | Connection | Library / Method |
|---|---|---|---|
| Arduino Uno R3 | Yes | UART via D2 (RX), D3 (TX) (SoftwareSerial) | PMS5003 Arduino library |
| Arduino Nano | Yes | UART via D2 (RX), D3 (TX) (SoftwareSerial) | PMS5003 Arduino library |
| Arduino Mega 2560 | Yes | UART via hardware Serial1 (RX1, TX1) | PMS5003 Arduino library |
| ESP8266 NodeMCU | Yes | UART via GPIO (RXD2, TXD2 or SoftwareSerial) | PMS5003 Arduino library |
| ESP32 Dev Board | Yes | UART via any free GPIO (HardwareSerial) | PMS5003 Arduino library or ESP-IDF UART |
| Raspberry Pi Pico | Yes | UART via GP0 (TX) / GP1 (RX) | MicroPython UART module |
| Raspberry Pi 4 / 5 | Yes | USB‑UART adapter or GPIO UART | Python pyserial library |
Wiring and Interface Notes
Connect the sensor’s TX pin to the microcontroller RX and RX to TX; a level shifter is recommended because the PMS5003 uses 3.3V logic while many Arduino boards operate at 5V. Power the sensor with 5V (or 3.3V if available) and always share a common ground. The default UART baud rate is 9600, and the sensor outputs a 32‑byte data packet – use a pre‑built library to parse PM2.5, PM10, and particle count values reliably.
Frequently Asked Questions
Does the PMS5003 output PM1.0 and PM10 values?
The sensor primarily measures PM2.5 concentration, but it also calculates PM1.0 and PM10 based on particle size distribution. You can read these values from the serial data frame using the standard protocol.
Can this sensor be used outdoors continuously?
Yes, but it is not waterproof. For outdoor deployments, place it inside a ventilated weatherproof enclosure and clean the laser diode periodically to prevent dust build‑up affecting accuracy.
What you can build with this
Shipping Information
- Prepaid Orders: ₹75 for orders up to ₹999, FREE shipping above ₹999
- COD Orders: ₹125 shipping + ₹50 COD fee = ₹175 total
- Delivery Timeline: Dispatch in 1-2 days, delivery in 2-7 days depending on location
Returns & Warranty
- 7-Day Return: Manufacturing defects only (approval required)
- Warranty: 7 days from delivery
- Non-Returnable: Batteries, consumables, cut wires, clearance items