PM2.5 low-cost sensors and calibration data for SDS011 and PMS7003

Binh Nguyen, Independent Researcher, Hanoi, Vietnam

1. What is laser-scattering method

Three popular models of low-cost sensors for PM2.5 in 2019 are Plantower PMS7003, Nova Fitness SDS011 and Honeywell HPMA115S0. Plantower has other older models such as PMS5003, and PMS3003. The fourth version is not low-cost by a developing country standard, Dylos DC1100 Pro.


Laser-scattering method is mentioned in low-cost sensors with different nuances such as based on the principle of laser scattering (SDS011, PMS7003), laser-based sensor (HPM), and true laser particle counter (DC1100). The distinction is needed because laser emits a narrow region of wavelengths, created a perception of a higher accurate device. Light scattering is used interchangeably in this article. In a true technical term, light scattering referred to a lower accuracy, less expensive LED as the light source. The laser is used in laboratory-grade equipment such as Met One E-Sampler or GRIMM EDM 180.

What I learned from the Internet about laser-scattering method is shining a laser beam onto a particle, light can be scattered, diffracted, absorped or extincted. Measuring size of a particle and how many particle in that size is based Mie Theory with inelastic scattering. To read more about laser-scattering, refer to this 7-page write-up.

Table 1: Basic technical specification of lowcost sensors
# PMS7003 SDS011 HPMA115S0 DC1100 Pro
Price ~13$ ~$19 ~$19 ~$290
Range (µg/m3 0-500 (1000)* 0-999 0-1000 N/A
Error 10% and ±10µg/m3 15% and ±10µg/m3 15% and ±10µg/m N/A
Lifespan (h) 8,000 8,000 20,000 several years
Communication Serial with headers, baudrate 9600
Mode Continuous or passive query by Serial input 1-minute or 1-hour sampling
Output PM1,PM2.5,PM10, counts with size of 0.3, 0.5, 10, 2.5, 5, 10 µm PM2.5, PM10 in float PM2.5, PM10 in integer small (> 0.5µm) and large (>2.5µm) for Pro model
Software Arduino, Python libraries Data logger (Windows), customized Python script
*: effective and maximum ranges

If we only look at the specifications, PMS7003 is very promising with the lowest cost, smallest footprint, available third-party library for DIY. Particle counting with 0.3 µm at 50% and 0.5µm at 98% efficiency making this sensor stands out for its wealth of outputs. The SDS011 has a sampling hose that can draw sample upto 1m. This is convenient for a setup with no fan installed. HPMA115S0's datasheet is pleasant compared to the first and the brand name brings some ease as well. DC1100 has been used as a middle-device and has shown a good correlation to lab-grade equipment.

2. Comparative monitoring

The first use for the low-cost sensors is comparative monitoring, in which values of PM2.5 and PM10 (PMs) are compared with the time event. This analysis provides patterns of the concentration with the change of experimental conditions such as road vs. home, cooking vs. none, day vs. night, construction site vs. residential home. The comparative analysis is suitable for high-school and undergrad students to have some peek into the change of PMs with the condition.

I myself conducted three studies by the time writing this post using the comparative analysis. The first one is to evaluate the PMs inside a closed room and the balcony during a 5-day vacation. The next two are PMs emitted by a firewood cook stove and removal efficiencies of face masks to PMs. The details of these studies posted here. For each study, I compared PMs concentration from a sensor measuring the background or ambient concentration and the other for the experimental conditions. When one sensor is available, I have to move between experimental conditions and the one for the background.

3. Summary of studies on observed value and calibration

Comparative studies are simple and useful for hobyist and personal uses. When communicating results to the public or for a research level, the accuracy of the low cost devices to the standard method is a must. Table 1 listed the error of PMS7003, SDS011, HPMA115S0 is 10% and ±15µg/m3 which is a good start, but to be sure with local conditions, the so-called "co-location" study is needed. In a co-location study, all devices are placed in proximity and expose to the same ambient condition. The output of sensors is cross-checked with additional to a calibration curve based a reliable device using the reference method.

Available testing on optical sensors measuring PMs including the low-cost class are carried out by the US. EPA and the Air Quality Sensor Performance Evaluation Center (AQ-SPEC). The study done by the US. EPA included mid-range devices in term of price, from $500-$2500. Only DC1100 Pro was included in this study in North Carolina, US. The AQ-SPEC carried extensive testing on commerical devices ranging from $150-$300. Testing bare sensors is not included rather a package with possible customized calibration by the device's maker. The reference device is Federal Equivalent Method (FEM) approval such as GRIMM (EDM 180) or Met One (BAM-1020).

Table 2: Correlation value (R2)** and linear regression from collocation field study
# PMS7003 SDS011 HPMA115S0 DC1100 Pro
US .EPA N/A N/A N/A 0.5-0.6
AQ-SPEC (R2 0.85 (Edimax PMS5003)*, 0.93-0.97 (PurpleAir, PMS5003) N/A N/A 0.81
AQ-SPEC (Regression) FEM=0.563x+3.90, FEM=0.625x+2.73 N/A N/A FEM = -8E12x2+5E-05x+3.97 (x: particle count/ft3
Johnston (2019), UK, ρ as Pearson coefficient 0.88 N/A 0.85 N/A
Badura (2018), Poland R2=0.73-0.75, FEM=0.413x R2=0.66-0.70,FEM=0.592x N/A N/A
Liu (2018), Norway N/A R2=0.71-0.80,FEM=0.645x+1.32 N/A N/A
*PMS5003 and PMS7003 has similar observed values **R2, another name: Goodness-of-Fit, a value = 1 shows a perfect fit to the regression line. A value = 0 shows no correlation between two axes

Over 10 reports and journal articles I skimmed through, a conscensus summary as follow:

  • SDS011, PMS7003, HPMA115S0 overestimated PMs concentration by FEM device
  • The R2 values is in the region of 0.6-0.8 for the field test

4. Personal experience on observed value and calibration

During the first 6-month of 2019, I collaborated with SPARC lab, Hanoi University of Science and Technology, Vietnam to evaluate the PMS7003 sensors. The PMS7003 is the heart of AirSENSE kit that has been used as a demo for high-school and students for STEM education. This kit could also use as low-cost PM2.5 monitor with additional calibration. In addition to the sensors from SPARC's lab, I bought one SDS011 sensor and collected PM2.5 concentration measured by the US. Embassy at Vietnam (Hanoi) as the reference station. The reference station was using MetOne BAM 1020. The station stopped working from the end of April 2019 for "technical difficulty". The location of PMS and SDS011 is 5.3 km to the South-West of the reference station. During winter and spring seasons, the dominant wind direction in Hanoi is North-East.

The data is collected using Raspberry Pi with Python script or available Arduino libraries for ESP8266 or ESP32. I also coded up a Python library for PMS7003 to run simultanously 4 sensors in one script. The code also works with other x003 sensors from Plantower since they use the same bitstream format.

Fig. 1: Location and distance between the PMS7003 and SDS011 site to the reference station (MetOne BAM 1020).

The graph below shows over 60-day collecting data. The data was cleaned up for peaks that is larger than 300 (µg/m3). PMS7003 produced more abnormal peaks than SDS011. Finally, a total of 1451 rows, equipvalents to 1451 hours, was used for further analysis.

Fig. 2: One-hour averaged data from PMS7003 and SDS011 and from the reference station (MetOne BAM 1020).

Using Seaborn library, the relational plots between each sensor to the reference stations are shown below.

Fig. 3: Correlation of 1-hour average PM2.5 from SDS011 and PMS7003 with MetOne BAM 1020.

The graph shows at low concentration, the correlation between PMS7003 and SDS011 to the reference station is high. At a higher PM2.5, concentration, a cluster of points above the fitting lines suggested some systematic changes relative to the reference.

Correlation between SDS011 and PMS7003 is surprisingly well which could interpret that either sensor is suitable for a low-cost device for PM2.5 monitor.

Fig. 4: Correlation of 1-hour average PM2.5 from SDS011 with PMS7003.

The Seaborn library provides nice visualization but does not have available fitting statistics. Nevertheless, using library such as SkLearn, we can fit the data with linear regression with an option to intercept to the origin. The results are summarized in Table 3.

Table 3: Linear regression from 60-day data collection, Hanoi Vietnam.
# PMS7003* SDS011* SDS011/PMS7003**
R2 0.66 0.51 0.84
Slope 0.66 0.77 0.81
*: x axis for SDS011 or PMS7003, y axis for BAM (FEM) **: x axis for PMS7003, y axis for SDS011

The results in Table 3 are inline with the literature review in Table 2, in which SDS011, PMS7003 overestimated the PM2.5 by a reference method or a FEM device. The PMS7003 displayed a higher overestimation than SDS011 and a higher R2 as well.

Fig. 5: PM2.5 concentration by SDS011, PMS7003 after adjustment with the coefficien factors in Table 3 along with MetOne BAM 1020 .

Other sensors such as HPMA115S0, one Dylos DC1100 Pro and a second one SDS011 has been in operation recently. The data is not sufficient to included for an analysis at this time of writing.

5. Summary

Located 5.3km away from a reference station is less than ideal. Variation of wind and PM2.5 sources introduces more uncertainty. Nevertheless, this analysis and data show resonable fittings of PM2.5 monintoring from low-cost sensors.PM2.5 by Nova Fitness SDS011 overestimated 30% than by BAM monitor. The Plantower PMS7003 overestimated 52% than the BAM monitor. The goodness-of-fitting (R2) of PMS7003 is 0.66 and SDS011's is 0.51 to BAM monitor. The R2 found in this study is lower than the other studies. Collorating data between SDS011 and PMS7003 hows a R2=0.84 which supports the distance between BAM monintor and the low-cost sensors contributed to a lower R2. In addition, the report will be updated with additional data from Honeywell HPMA115S0 and Dylos DC1100 Pro devices.

6. Additional information

For more information about technical of each sensor mentioned above, checkout its datasheet:

▣ ▣ ▣