Sensirion PM Sensors SPS30 Datasheet New
Sensirion PM Sensors SPS30 Datasheet New
Product Summary
The SPS30 Particulate Matter (PM) sensor is a technological breakthrough in optical PM sensors. Its
measurement principle is based on laser scattering and makes use of Sensirion’s innovative contamination-
resistance technology. This technology, together with high-quality and long-lasting components, enables precise
measurements from its first operation and throughout its lifetime of more than ten years. In addition, Sensirion’s
advanced algorithms provide superior precision for different PM types and higher-resolution particle size
binning, opening up new possibilities for the detection of different sorts of environmental dust and other particles.
With dimensions of only 41 x 41 x 12 mm3, it is also the perfect solution for applications where size is of
paramount importance, such as wall-mounted or compact air quality devices.
Content
1 Particulate Matter Sensor Specifications 2
2 Electrical Specifications 3
3 Hardware Interface Specifications 4
4 Functional Overview 5
5 Operation and Communication through the UART Interface 8
6 Operation and Communication through the I2C Interface 16
7 Mechanical Specifications 23
8 Shipping Package 24
9 Ordering Information 24
10 Revision History 24
11 Important Notices 25
12 Headquarters and Subsidiaries 26
Table 1: Particulate matter sensor specifications. Default conditions of 25±2 °C, 50±10% relative humidity and 5 V supply voltage
apply unless otherwise stated. ‘max.’ means ‘maximum’, ‘typ.’ means ‘typical’, ‘% m.v.’ means ‘% of measured value’.
2 Electrical Specifications
The interface connector is located at the side of the sensor opposite to the air inlet/outlet. Corresponding female plug is
ZHR-5 from JST Sales America Inc. In Figure 1 a description of the pin layout is given.
The SPS30 offers both a UART 7 and an I2C interface. For connection cables longer than 20 cm we recommend using
the UART interface, due to its intrinsic robustness against electromagnetic interference.
Note, that there is an internal electrical connection between GND pin (5) and metal shielding. Keep this metal shielding
electrically floating in order to avoid any unintended currents through this internal connection. If this is not an option,
proper external potential equalization between GND pin and any potential connected to the shielding is mandatory. Any
current though the connection between GND and metal shielding may damage the product and poses a safety risk
through overheating.
Power on / Reset
Idle
• After power on or reset the module is in Idle-Mode.
• Most of the internal electronics switched off /reduced power consumption.
• Fan and laser are switched off.
• The module is ready to receive and process any command.
Measurement
• The Measurement-Mode can only be entered from Idle-Mode.
• All electronics switched on / max. power consumption.
• The measurement is running and the module is continuously processing measurement data.
• New readings are available every second.
Sleep
• The Sleep-Mode can only be entered from Idle-Mode.
• Most of the internal electronics switched off / reduced power consumption.
• Fan and laser are switched off.
• Microcontroller is in Sleep-Mode.
• To minimize power consumption, the UART / I2C interface is also disabled.
• A wake-up sequence is needed to turn the module back on. See Wake-up command in the interface description.
8 The typical particle size (TPS) gives an indication on the average particle diameter in the sample aerosol. Such output correlates with the weighted average of the
number concentration bins measured with a TSI 3330 optical particle sizer. Consequently, lighter aerosols will have smaller TPS values than heavier aerosols.
9 Requires at least firmware version 2.0
res. res. res. res. res. res. res. res. res. res. SPEED res. res. res. res. res.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Error Error
res. res. res. res. res. res. res. res. res. res. LASER FAN res. res. res. res.
Note: All “res.” bits are reserved for internal use or future versions. These bits can be both 0 and 1 and should therefore
be ignored.
Bit Time
(1/Baudrate)
Start Stop
Bit 0 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7
Bit Bit
Frame Content
Example: Data to send = [0x43, 0x11, 0x7F] Data transmitted = [0x43, 0x7D, 0x31, 0x7F].
Address
The slave device address is always 0.
Command
In the MOSI frame the command tells the device what to do with the transmitted data. In the MISO frame, the slave just
returns the received command.
Length
Length of the “TX Data” or “RX Data” field (before byte-stuffing).
State
The MISO frame contains a state byte, which allows the master to detect communication and execution errors.
b7 b6 b0
Error-Flag Execution error code
The first bit (b7) indicates that at least one of the error flags is set in the Device Status Register.
The “Execution error code” signalizes all errors which occur while processing the frame or executing the command. The
following table shows the error codes which can be reported from the device. Note that some of these errors are system
internal errors which require additional knowledge to be understood. In case of a problem, they will help Sensirion to
localize and solve the issue.
Error Code
Meaning
dec hex
0 0x00 No error
1 0x01 Wrong data length for this command (too much or little data)
2 0x02 Unknown command
3 0x03 No access right for command
4 0x04 Illegal command parameter or parameter out of allowed range
40 0x28 Internal function argument out of range
67 0x43 Command not allowed in current state
Table 6 Reference table for error codes.
Adr 0x00
CMD 0x00
L 0x02
Data 0 0x01
Data 1 0x03
Sum 0x06
Least Significant Byte of Sum 0x06
Inverted (=Checksum) 0xF9
Example Frames:
Start measurement with output format “Big-endian IEEE754 float values”:
MOSI 0x7E 0x00 0x00 0x02 0x01 0x03 0xF9 0x7E
Empty response frame:
MISO 0x7E 0x00 0x00 0x00 0x00 0xFF 0x7E
Example Frames:
MISO Data:
If no new measurement values are available, the module returns an empty response frame.
If new measurement values are available, the response frame contains the measurement results. The data format
depends on the selected output format, see 4.3 Measurement Output Formats.
Example Frames:
Example Frames:
Example Frames:
Send 0xFF to generate a low pulse in order to wake-up the interface:
0xFF
MOSI Wake-up command, within 100ms:
0x7E 0x00 0x11 0x00 0xEE 0x7E
MISO 0x7E 0x00 0x11 0x00 0x00 0xEE 0x7E
Alternatively, if the software implementation does not allow to send a single byte with the value 0xFF, the Wake-up
command can be sent twice in succession. In this case the first Wake-up command is ignored, but causes the interface
to be activated.
Example Frames:
MISO Data:
MISO Data:
Example Frames:
Product Type:
Recommended to use as product identifier, returns always the string “00080000” on this product.
MOSI 0x7E 0x00 0xD0 0x01 0x00 0x2E 0x7E
0x7E 0x00 0xD0 0x00 0x09 0x30 0x30 0x30 0x38 0x30 0x30 0x30 0x30 0x00 0x9B
MISO 0x7E
Serial Number:
MOSI 0x7E 0x00 0xD0 0x01 0x03 0x2B 0x7E
0x7E 0x00 0xD0 0x00 0x15 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30
MISO 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x00 0x5A 0x7E
MISO Data:
17 Firmware minor version may change without notice, given full backwards compatibility.
MISO Data:
Example Frame:
Example Frames:
VDD Usage:
• I2C address: 0x69
Rp Rp • Max. speed: standard mode, 100 kbit/s
VDD (1) • Clock stretching: not used
SDA SDA (2)
SCL SCL (3)
SPS30
Connector Both SCL and SDA lines are open drain I/Os. They should
SEL (4) be connected to external pull-up resistors (e.g. Rp = 10 kΩ).
GND (5) Important notice: in order to correctly select I2C as
interface, the interface select (SEL) pin must be pulled to
GND before or at the same time the sensor is powered up.
Some considerations should be made about the use of the I2C interface. I2C was originally designed to connect two chips
on a PCB. When the sensor is connected to the main PCB via a cable, particular attention must be paid to
electromagnetic interference and crosstalk. Use as short as possible (< 10 cm) and/or well shielded connection cables.
We recommend using the UART interface instead, whenever possible: it is more robust against electromagnetic
interference, especially with long connection cables.
For detailed information on the I2C protocol, refer to NXP I2C-bus specification 18.
P P P P P P P P P P P P P P P P
Write
ACK
ACK
ACK
SDA A6 A5 A4 A3 A2 A1 A0
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
SCL
1 9 1 9 1 9
18 http://www.nxp.com/documents/user_manual/UM10204.pdf
P P P P P P P P P P P P P P P P D D D D D D D D ...
Write
Read
ACK
ACK
ACK
ACK
ACK
SDA A6 A5 A4 A3 A2 A1 A0
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
A6 A5 A4 A3 A2 A1 A0
7 6 5 4 3 2 1 0
SCL ...
1 9 1 9 1 9 1 9 1 9
Read Data 1 Checksum Read Data (n-2) Read Data (n-1) Checksum
... ...
NACK
D D D D D D D D C C C C C C C C D D D D D D D D D D D D D D D D C C C C C C C C
ACK
ACK
ACK
ACK
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
... ...
1 9 1 9 9 1 9 1 9
S I2C Address W A Pointer MSB A Pointer LSB A P S Slave Address R A Data 0 A ...
It is allowed to read several times in succession without setting the address pointer again. This reduces the protocol
overhead for periodical reading of the measured values.
P P P P P P P P P P P P P P P P D D D D D D D D D D D D D D D D C C C C C C C C ...
Write
ACK
ACK
ACK
ACK
ACK
ACK
SDA A6 A5 A4 A3 A2 A1 A0
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
SCL ...
1 9 1 9 1 9 1 9 1 9 1 9
... D D D D D D D D D D D D D D D D C C C C C C C C
ACK
ACK
ACK
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
...
1 9 1 9 1 9
S Slave Address W A Pointer MSB A Pointer LSB A Data 0 A Data 1 A Checksum A ...
Please note that the checksums are used only for the 2-byte data packets. The command code itself already contains a
3-bit CRC and therefore no checksum must be appended to it.
Write Data:
Byte # Description
0 Measurement Output Format
0x03: Big-endian IEEE754 float values
0x05: Big-endian unsigned 16-bit integer values
1 dummy byte, insert 0x00
2 Checksum for bytes 0, 1
Read Data:
Byte # Description
0 unused, always 0x00
1 Data-Ready Flag
0x00: no new measurements available
0x01: new measurements ready to read
2 Checksum for bytes 0, 1
The data format depends on the selected output format, see 4.3 Measurement Output Formats. Note that after every
two bytes, the checksum of the previous two bytes is transferred.
Byte # Description
0, 1 two bytes of measurement data
2 checksum for bytes 0, 1
3, 4 two bytes of measurement data
5 checksum for bytes 3, 4
… …
If then a Wake-up command follows within 100ms, the module will switch on again and is ready for further commands in
the Idle-Mode. If the low pulse is not followed by the Wake-up command, the microcontroller returns after 100ms to
Sleep-Mode and the interface is deactivated again.
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Write
ACK
ACK
ACK
SDA A6 A5 A4 A3 A2 A1 A0
0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1
SCL
1 9 1 9 1 9
Alternatively, if the software implementation does not allow to send a I2C-Start-Condition followed by a Stop-Condition,
the Wake-up command can be sent twice in succession. In this case the first Wake-up command is ignored, but causes
the interface to be activated.
Note for FW Version < 2.2: After writing a new interval, this will be activated immediately. However, if the interval register
is read out after setting the new value, the previous value is returned until the next start/reset of the sensor module.
Read/Write Data:
Byte # Description
0, 1 Most Significant Byte big-endian, unsigned 32-bit integer value:
2 Checksum for bytes 0, 1 Auto Cleaning Interval [s]
3, 4 Least Significant Byte
5 Checksum for bytes 3, 4
Read Data:
Byte # Description
0 ASCII Character 0
1 ASCII Character 1
2 Checksum for bytes 0, 1
… …
45 ASCII Character 30
46 ASCII Character 31
47 Checksum for bytes 45, 46
Read Data:
Byte # Description
0 Firmware major version
1 Firmware minor version 21
2 Checksum for bytes 0, 1
21 Firmware minor version may change without notice, given full backwards compatibility.
Read Data:
Byte # Description
0, 1 Most Significant Byte big-endian, unsigned 32-bit integer value:
2 Checksum for bytes 0, 1 Device Status Register
3, 4 Least Significant Byte
5 Checksum for bytes 3, 4
Note: To perform a reset when the sensor is in sleep mode, it is required to send first a wake-up sequence to activate
the interface.
Figure 7: Package outline dimensions of the SPS30 from different views. Tolerances included. All lengths are given in mm.
Dimensions in brackets include plastic fixation elements.
7.2 Label
The SPS30 has a label on one side of the sensor. The label contains information about
Sensirion product name
Production year
Production date (month - day)
Serial number (XXXX-XXXX-XXXX-XXXX)
QR-code containing the information above
The SPS30 is shipped in stackable trays with 56 pieces each. Non-packaged tray dimensions are given in
Figure 9. Packaged tray dimensions are 670 mm x 460 mm x 45 mm. The weight of each full packaged tray (including
sensors) is 2.4 kg.
457.00 22.50
(42.50) (15.00)
(42.50)
379.00
9 Ordering Information
The SPS30 and its evaluation kit can be ordered via the article numbers listed in Table 9.
10 Revision History
If the Buyer shall purchase or use SENSIRION products for any unintended or unauthorized application, Buyer shall defend, indemnify and hold
harmless SENSIRION and its officers, employees, subsidiaries, affiliates and distributors against all claims, costs, damages and expenses, and
reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized
use, even if SENSIRION shall be allegedly negligent with respect to the design or the manufacture of the product.
11.3 Warranty
SENSIRION warrants solely to the original purchaser of this product for a period of 12 months (one year) from the date of delivery that this product
shall be of the quality, material and workmanship defined in SENSIRION’s published specifications of the product. Within such period, if proven to
be defective, SENSIRION shall repair and/or replace this product, in SENSIRION’s discretion, free of charge to the Buyer, provided that:
▪ notice in writing describing the defects shall be given to SENSIRION within fourteen (14) days after their appearance;
▪ such defects shall be found, to SENSIRION’s reasonable satisfaction, to have arisen from SENSIRION’s faulty design, material, or workmanship;
▪ the defective product shall be returned to SENSIRION’s factory at the Buyer’s expense; and
▪ the warranty period for any repaired or replaced product shall be limited to the unexpired portion of the original period.
This warranty does not apply to any equipment which has not been installed and used within the specifications recommended by SENSIRION for
the intended and proper use of the equipment. EXCEPT FOR THE WARRANTIES EXPRESSLY SET FORTH HEREIN, SENSIRION MAKES NO
WARRANTIES, EITHER EXPRESS OR IMPLIED, WITH RESPECT TO THE PRODUCT. ANY AND ALL WARRANTIES, INCLUDING WITHOUT
LIMITATION, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, ARE EXPRESSLY EXCLUDED AND
DECLINED.
SENSIRION is only liable for defects of this product arising under the conditions of operation provided for in the data sheet and proper use of the
goods. SENSIRION explicitly disclaims all warranties, express or implied, for any period during which the goods are operated or stored not in
accordance with the technical specifications.
SENSIRION does not assume any liability arising out of any application or use of any product or circuit and specifically disclaims any and all liability,
including without limitation consequential or incidental damages. All operating parameters, including without limitation recommended parameters,
must be validated for each customer’s applications by customer’s technical experts. Recommended parameters can and do vary in different
applications.
SENSIRION reserves the right, without further notice, (i) to change the product specifications and/or the information in this document and (ii) to
improve reliability, functions and design of this product.
phone: +41 44 306 40 00 Sensirion Japan Co. Ltd. Sensirion China Co. Ltd.
fax: +41 44 306 40 30 phone: +81 3 3444 4940 phone: +86 755 8252 1501
[email protected] [email protected] [email protected]
www.sensirion.com www.sensirion.co.jp www.sensirion.com.cn