Implementation of new Sensirion SEN-5X sensors

I can try to rebuild one sensor this week end.

Hoi ricki-z,
May I can help you.

this ID: SEN55_BQ_7114404 registered as a SEN5x pin16.
communication way:

Sending to - SEN55, PIN: 16

Succeeded -

and for temp, registered as SHT35:

Sending to - SEN5X TH, PIN: 7

Succeeded -

I’m in the process of doing tests with DNMS, SPS30 and SEN55.

When I tried to register a test ESP8266’s Chip-ID with 2 sensors, it wouldn’t let me add a third and/or fourth sensor in a second edition of the configuration. This is a problem in it’s own, as it prevents adding sensors to an existing configuration.

So I tried to register a second test ESP8266’s Chip-ID with 4 sensors, SPS30, BME280, DNMS, and SEN5x, in that order. It returned with the “already registered” message, while still receiving normally on Madavi, with no other sensor with the same ID in sight, which may have given the “already registered” error. This last Chip-ID is 16138893.
I’m afraid that the 4 sensors interfere with each other while registering on the same Chip-ID, and so generate the “already registered” message ???


  • The chipID must be unique (and the one the system is using when sensing data)
  • each X-pin must be unique per device (i.e. SDS011 and SPS30 use both x-pin 1, but SEN5X is using x-pin 16)
    If this is fulfilled you can register the device without getting an “already registered” message.
    So your combination should work:
    SPS30 → x-pin 1
    BME280 → x-pin 11
    DNMS → x-pin 15
    SEN5X → x-pin 16

@pjg I’ve changed the defaults at so that the SEN5X sensor will get the x-pin 16

1 Like

I was pretty sure my Chip-ID was unique, as Madavi showed no other data than mine on the Chip ID.

So I’ve got it. The X-pin’s must be unique, otherwise the message “already registered” appears. But is that message (“already configured”) appropriate for this use ? Wouldn’t it be better to call it “conflict in sensors” in this case ? As this would make the registerer think twice, and maybe solve the problem without asking stupid questions?

B.t.w. I got the configuration registered with your tip, so your tip works.

But the first problem I mentioned remains: you cannot add to a previously defined configuration with less sensors than you need afterwards. This can be temporarily resolved by defining more sensors than you need at first config. Better make this public in the doc… (and solve the issue afterwards …)

I am in the situation: I’m offering PM sensors (SP30-BME280-with Airrohr PCB), which afterwards can be equipped with DNMS … So at first registering DNMS has to be defined, or else it cannot be added !

So: Can you modify the registration of Chip-ID 7480886, Chip-ID 1171362 and Chip-ID 7406778, which are already registered for only PM (SPS30-BME280), but must be equipped with DNMS afterwards ? Or will adding a sensor to an existing configuration be possible in the near future (say a couple of days, or weeks) ? Or is erasing the existing configuration, and reregistering from zero (with more sensors) the better option ?
In any case, thanks for the good work …

1 Like

Adding components after the initial registration is work in progress. But it’s not done in the next days or weeks.
I’ve added the DNMS to the three mentioned chipIDs.

@gbaalderink thanks for the chipID. Our server is receiving the data:
At the moment the firmware seems to send only the PM values.
But now I can include these PM values in the map…

1 Like

@ricki-z It’s correct firmware send only the PM values. Temperature and humidity and Nox (use “Co2_ppm” ID) values, your server is receiving the data:

If you want I can made a modification in the firmware that PM, Temperature, Humidity and Nox also send to sensor ID 83567 (pin 16)

Let me know.

I have two more SEN5x sensors on test(outdoor). If you need more sensor ID’s for your test then I can give you the ID’s

Hi I have successfully managed to flash the Helmut Bitters DNMS software, selected the SEN5x and sensor reads the values in the backend. But sending the values to Sensor.Community fails:

[17:18:44]http POST to destination: Sensor.Community
[17:18:44]Request failed with HTTP error: 400
[17:18:44]Details:{“sensordatavalues”:[{“value_type”:[“"SEN5X_P0" is not a valid choice.”]},{“value_type”:[“"SEN5X_P2" is not a valid choice.”]},{“value_type”:[“"SEN5X_P4" is not a valid choice.”]},{“value_type”:[“"SEN5X_P1" is not a valid choice.”]},{“value_type”:[“"SEN5X_N05" is not a valid choice.”]},{“value_type”:[“"SEN5X_N1" is not a valid choice.”]},{“value_type”:[“"SEN5X_N25" is not a valid choice.”]},{“value_type”:[“"SEN5X_N4" is not a valid choice.”]},{“value_type”:[“"SEN5X_N10" is not a valid choice.”]},{“value_type”:[“"SEN5X_TS" is not a valid choice.”]},{“value_type”:[“"SEN5X_temperature" is not a valid choice.”]},{“value_type”:[“"SEN5X_humidity" is not a valid choice.”]},{“value_type”:[“"SEN5X_voc" is not a valid choice.”]},{“value_type”:[“"SEN5X_nox" is not a valid choice.”]}]}

the chip ID is 12586491
sensor ID 86606
the SEN5x sensor type and pin 16 is selected in devices

Am I doing something wrong? Thank you!

This seems to be a “bug” in this firmware. The value types shouldn’t have the sensor name as a prefix, this is only used for the API. So i.e. “SEN5X_humidity” should be “humidity”.
(voc and nox aren’t implemented in the Sensor.Community API at the moment, so these shouldn’t be sent at all).

1 Like

Thanks for the reply. In the meanwhile I share great case for SEN5x sensor from my colleague in Czech maker community. Printables

1 Like

@ricki-z, firmware send now temperature and humidity values to sensor ID:

voc and nox aren’t implemented in the Sensor.Community API at the moment, have you any idea when it will be implemented?

1 Like

VOC and NOx are indexes no concentrations.

I am testing my SEN55 sensor (Id 84088)
All data is visible at

I am missing the csv file in
Any news on showing sensor on the map

@ricki-z the PM values of the SEN5X are not displayed on the map ?

@fredvduin the SEN5x should now be available in our archive.
Now we are working on the map.

@fredvduin the SEN5x are shown now on the map (PM, temperature, humidity).

As I want to see the differences in measurements between the SDS and the Sensiron I want to install the SENS55 besides the SDS. The SPS30 showed up in the Airrohr Flasher. But the SEN-5x didn’t.
How to flash my ESP with the latest including the settings for the SENS5x?

We had to remove the SEN5x support from the actual beta firmware as it caused instabilities in the latest versions.
But you can pull the beta-sen5x branch and compile this firmware version by yourself.

In which beta versions was the SENS5x still present (before removing )?