Particulate Matter Sensor - SPS30

The Sensirion Particulate Matter Sensor SPS30 is a compact, high quality, optical particle sensor that uses laser scattering and Sensirion's innovative contamination resistance technology to achieve superior binning and particle measurement. This sensor allows users to measure mass concentration and number of particles of 1 µg/m^3, 2.5 µg/m^3, 4 µg/m^3, and 10 µg/m^3.

The compact form factor, measuring just under 41mm x 41mm x 12mm, combined with a sensor lifetime over 8 years and a self cleaning procedure, makes the SPS30 the perfect sensor for projects in difficult to access locations. We've designed and included an easy to use 5-pin cable to make using the SPS30 a snap. The 1.5mm connector is broken out to 5 breadboard friendly wires color coded to make hooking up the SPS30 easy.

The SPS30 has a five pin interface that can communicate over two different protocols: UART and I2C. The SPS30 requires a 5V power supply, but can work with 3.3V and 5V microcontrollers. The logic is 5V and 3.3V tolerant.

Sensirion has written drivers for both the UART protocol and I2C. Unfortunately we've found the I2C is limited to only mass concentrations (not number concentrations) using the Arduino platform. So if you plan to use this sensor with an Arduino, use the UART interface. Both interfaces are described in their datasheet.

  • SPS30 Sensor
  • 5-pin 150mm Interface Cable

Customer Comments

  • Okay so I finally got some working code and can help others. This is for the Arduino Uno R3 using I2C comms

    First, head to this github link and download and install this library from the very helpful Paulhva

    I then made some edits to his example code and made a circuit diagram for hooking up to the R3. In the picture, those are 10k resistors.

    You can find the code and the circuit diagram and a log of my changes here

    Just make sure you change your serial monitor to the 115200 baud rate and use the Carriage return option instead of No Line Ending

  • I'd love to see a hookup guide for this. Seems like the internet is having a lot of problems getting a working library that is easy to use.

    Found this one: https://github.com/paulvha/sps30

    Edit: See my new comment for how to fix this

  • I'm received this sensor but can't get the Arduino library setup to correctly compile to run on aan Arduino UNO.

    Can anybody share what is working for them if they have this running on an Arduino device please?

    Looks like a great sensor, all my other voc, temp and humidity chips from them work perfectly

    • I can't get the library to compile on a ATSAMD21 Cortex M0, the library is a bit of a nightmare / maze. I spent a few hours on the UART with no luck. Did you get yours to work?

      • I've gotten it working with SAMDs using I2C (and all the measurements seem to be available) - but can't figure out how to get it working on any of the atmega Arduinos after endless faffing with sensiron_arch_config.h. Definitely second the request for a sketch that works on Uno from Sparkfun!

      • Did you ever get the library working for this sensor?

      • No, I’m not sure what the minimal code is to get the UART library to run on an Arduino Uno just to see it working.

        Can somebody at Sparkfun please provide a sketch that works and compiled with the Arduino Uno without all other nonessential stuff in the library removed? It would really be helpful for a lot of us who bought this sensor.

  • "number of particles of 1 µg/m3, 2.5 µg/m3, 4 µg/m3, and 10 µg/m3", should instead possibly be units of size in µm?

    • The sensor can count the concentration of particulates of those sizes and so it can then use simple math to give you the concentration of them as well. Thats how the Honeywell HPMA115SO does it as well. Both are laser particulate matter counters which are much more accurate than ones that use simple infrared LEDs and a lens.

Customer Reviews

5 out of 5

Based on 2 ratings:

Currently viewing all customer reviews.

2 of 3 found this helpful:

I'm so excited its finally available!

This little guy is half the size (thickness) of the Honeywelll HPMA115S0 and it gives 2 more points of data (1 µg/m3 & 4 µg/m3)! Not only that but it also has self cleaning which the Honeywell does not have. I'm hoping after I test this dude out I can see if it has a standby mode which the Honeywell has some serious issues dealing with make it not nearly as useful as it could be since its almost always running.

Very good unit

I also have the evaluation kit and using the SPS30 software that can be downloaded from their web site it gave very accurate. Used in 3D printing to see what the environment is like.