Skip to main content

PMS5003 Particulate Sensor

Project description

PMS5003 Particulate Sensor

Build Status Coverage Status PyPi Package Python Versions


Stable library from PyPi:

  • Just run sudo pip install pms5003

Latest/development library from GitHub:

  • git clone

  • cd pms5003-python

  • sudo ./


The serial port on your Raspberry Pi must be enabled:

# Disable serial terminal over /dev/ttyAMA0
sudo raspi-config nonint do_serial 1

# Enable serial port
raspi-config nonint set_config_var enable_uart 1 /boot/config.txt

And additionally be using a full UART (versus the default miniUART):

Add the line dtoverlay=pi3-miniuart-bt to your /boot/config.txt

This will switch Bluetooth over to miniUART, see for more details.


  • BugFix: Read start-of-frame a byte at a time to avoid misalignment issues, potential fix for #2, #3 and #4

  • Enhancement: Clarified error message when length packet cannot be read

  • Enhancement: Clarified error message when start of frame cannot be read

  • Enhancement: Added new error message where raw data length is less than expected (frame length)


  • Packaging improvements/bugfix from boilerplate


  • Added pyserial dependency


  • Added reset function


  • Initial Release

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pms5003-0.0.5.tar.gz (4.5 kB view hashes)

Uploaded source

Built Distributions

pms5003-0.0.5-py3-none-any.whl (4.4 kB view hashes)

Uploaded py3

pms5003-0.0.5-py2-none-any.whl (5.4 kB view hashes)

Uploaded py2

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page