Back to

PM Sensor always reading 0.0

I also have just received a new SCK 2.1 a few days ago and am suffering from a similar issue. I tried checking via the shell and found the following behavior:

  • If reading the data at an interval of 15 seconds (note this means you also have to change the interval for the particle sensor to 15 seconds), then data is read from the sensor. But after 30 minutes, the 0 values resume. Pressing on/off button will then result in resumption of reading data for another 30 minutes
  • Setting higher values for the read interval (e.g. 30 seconds) will stay stuck at the 0 value always

I’ve been reaching out to seeed on this, let’s see what they say.

1 Like

Hello everyone,

So we have just received ourselves a lot of kits and we are seeing similar issues. So far, we have seen flat PM=0ug/m3 values with the new batch, whereas old batches of PM sensor with similar firmware revisions show non-null values. We are thinking it might be something related to the way we interact with the PM sensor, so before handling complaints with SEEED, we would encourage to post here the following:

  1. Purchase date
  2. Device URL
  3. Is it always reading 0ug/m3?
  4. Picture of the PM sensor label that is on the side. This information is valuable to understand batches.

We would thank you for this info. We are checking this on our side to see if it can be solved with a firmware update or if we need to reach out to SEEED / Plantower.


1 Like

Just fyi.
The two PM sensors included with my SCS V3 do not exhibit this problem. But then they are likely an earlier batch and of course SCS operates 2x PM alternately so it’s different; but may be a clue to what happening on the data board.


We have been checking this issue on the last days. We have found that something has changed on the PM sensor behavior since the last batch. Now the first two readings delivered by the sensor after startup are zero, the third one and up seem to be correct.

For now there is a firmware branch that fixes the issue here: If someone want’s to use this patched firmware version for now the binary is here. You can update the SAM firmware as usual.

We are not merging this in to the master branch until we do some more tests and we are sure that this is the only thing that has changed.


1 Like

Any updates here?

Many, we are finalising the testing stage, but summarising what’s coming up soon:

  1. There are two modes of operation of the PMS5003 - active and passive. Active mode gives data anytime the sensor is powered, whereas passive only when we ask for it. We were using PMS5003 in active mode, shutting it down every time, and turning it on for 15s to measure. Passive mode also accepts the sensor to be sent to sleep after the reading is requested. We used active mode because it’s the default one, and because information on the PMS5003 is not very well documented unless you really insist to plantower
  2. Changes on the behaviour are seen after an update on the PMS5003 and made the active mode unusable as we were using it, which seems to be linked to the sensor being shut down abruptly. This basically provokes that the 15s where not enough anymore, and that not even 30 or 35s seems to provide good data (there is always correlation but the slope of the calibration is off)
  3. For these reasons, passive mode is now being evaluated, with measurements at 15s and sensor sleep in the meantime to keep the battery saving, and adding a control shell command to improve how the sensors is interacted with (adding stabilisation period in seconds, or none (continuous mode)). This is what you would test in the PMfix branch. It is not merged yet because it will take more testing on our side to make a release. Results though, seem promising, correlating to the previous PMS5003 batches and also to continuous mode

If you want to test it (experimental yet) you can use the PMfix branch on the firmware repository


Hi all,

Finally, we have a complete assessment of this issue and a release is coming in very few days (0.9.9). The PMfix branch has already the fix, as mentioned in the post above. You can find a complete evaluation of the changes is this note

Note that we not only saw there was an issue with the new batch of sensors, but also on how the old batch sensor readings were taken. The explanation is in the first part of the note and a dedicated forum post is here. Please, leave this thread for the issue with the sensor always reading 0.


Hello, I’ve just received 3x SCK 2.1 kits and no PM Sensor is showing meaningful readings, all show the 0. Used to flash SAM 098-PM.uf2.
All your links to either PMfix branch or 0.9.9 are going to fail. Seems 0.9.9 is not available on Github.
How can I now use the very expensive PM Sensors with the kits?
Thank you

Hi @wolfgang

Thanks for posting!

The PMfix branch was already merge into master and I believe the links no longer points to it as it is stale. 0.9.9 is on the works, but the one to go should be this: Release 0.9.8-PM · fablabbcn/smartcitizen-kit-21 · GitHub

With this, can you post here the output of the version and the sensor commands using the Shell?

Since you have already tested the device with that branch, can you please also post a photo of the PM sensors? Specially the sticker on the side with the barcode. We need to see the batch number to determine whether or not there is a newer batch that could be giving us issues.


Last label

The answers to the reply below this one, as I am a new user and only allowed to reply 3 times…

here is the output of version:

Hardware Version: 2.1
SAM Hardware ID: 4F42180B5154305146202020FF17051A
SAM version: 0.9.8-e0ddae7
SAM build date: 2022-06-01T15:57:12Z
ESP MAC address: 42:22:D8:83:27:BB
ESP version: 0.9.8-e283e58
ESP build date: 2021-08-26T16:39:05Z
SCK > Connecting to Wifi...
ESP finished booting
Connecting to Wifi...
Connected to wifi!!

and the output of sensor:

ADS1x15 ADC 0x4B Ch2
ADS1x15 ADC 0x4B Ch3
SCD30 Temperature
SCD30 Humidity
Ext PM_A 1.0
Ext PM_A 2.5
Ext PM_A 10.0
Ext PN_A 0.3
Ext PN_A 0.5
Ext PN_A 1.0
Ext PN_A 2.5
Ext PN_A 5.0
Ext PN_A 10.0
Ext PM_B 1.0
Ext PM_B 2.5
Ext PM_B 10.0
Ext PN_B 0.3
Ext PN_B 0.5
Ext PN_B 1.0
Ext PN_B 2.5
Ext PN_B 5.0
Ext PN_B 10.0
PN 0.3
PN 0.5
PN 1.0
PN 2.5
PN 5.0
PN 10.0
Groove OLED

Temperature -> every 1 int (60 sec) 
Humidity -> every 1 int (60 sec) 
Battery -> every 1 int (60 sec) 
Light -> every 1 int (60 sec) 
Noise dBA -> every 1 int (60 sec) 
Barometric pressure -> every 1 int (60 sec) 
VOC Gas CCS811 -> every 1 int (60 sec) 
eCO2 Gas CCS811 -> every 1 int (60 sec) 
PM 1.0 -> every 5 int (300 sec) 
PM 2.5 -> every 5 int (300 sec) 
PM 10.0 -> every 5 int (300 sec)

Temperature: 25.05 C
Humidity: 41.61 %
Battery: 99 %
Light: 0 Lux
Noise dBA: 45.32 dBA
Barometric pressure: 97.37 kPa
VOC Gas CCS811: 25.00 ppb
eCO2 Gas CCS811: 566.00 ppm

(2023-03-16T17:54:21Z) Readings saved to flash memory.
(2023-03-16T17:54:21Z) 8 readings saved to sdcard.
Connecting to Wifi…
ESP finished booting
Connecting to Wifi…
Connected to wifi!!
(2023-03-16T17:52:21Z) Sent readings to platform.
Network publish OK!! (8 readings)
(2023-03-16T17:53:21Z) Sent readings to platform.
Network publish OK!! (8 readings)
(2023-03-16T17:54:21Z) Sent readings to platform.
Network publish OK!! (8 readings)

Temperature: 25.11 C
Humidity: 41.50 %
Battery: 98 %
Light: 0 Lux
Noise dBA: 41.05 dBA
Barometric pressure: 97.37 kPa
VOC Gas CCS811: 21.00 ppb
eCO2 Gas CCS811: 542.00 ppm
PM 1.0: 0 ug/m3
PM 10.0: 0 ug/m3
PM 2.5: 0 ug/m3

The link to the platform:

I have a sck 2.1 from around the beginning of this version and this is working fine. If I connect any of the 3 new PM Sensors to this kit, it has the same 0 readings.
When starting the sck the sensor runs for about 10 sec and then stops.


In principle this batch is similar to ours, let’s put that aside for now. Using the Shell is very simple, you can use this guide: Using the Shell - Smart Citizen Docs

In terms of behaviour, when you configure the kit, does the PMS turn on? You should be able to hear it if you put it close to your ear. Also, can you place a PM source near it, maybe a candle or similar and see if there is any impact?

Finally, can you put here the links to the platform in case they are online?


1 Like

As I was not able to reply with my low trust level to your question directly, I tried to do answering in the post above your question. Hope you can work with the info from the PMS and kit?
Thank you
PS: the PMS just start to post different measurements than 0.0

Sorry about the low trust… seems like it’s a spam prevention from the forum itself…

Coming back to the PM issue, this seems to be maybe an issue with the PMS. Were did you get these from? Maybe we can get a hold of one or two and see if we can reproduce the issue, or maybe even get them from you and send you some that work from Barcelona. Where are you based?

now they show measurements unequal 0.0 and it looks feasable what they show. Is there a time after setting up a new one, until it shows real values?

That’s highly unusual, but good news!
I am afraid there isn’t a warm-up time, at least in the versions we have used, they just give data… Has anything changed at all on the sensor itself?

Let’s keep an eye on them then.

1 Like

No, there did nothing change with the sensors themself, only that they now show real life values after about 48 hours after first installment.

1 Like

OK… keep us posted! I hope it’s not a fluke!