FAQ
TL;DR: Use ESPEasy Rules (SendToHTTP) to push PM2.5 and PM10 into two Domoticz devices (e.g., idx 157 and 158); “I finally managed to upload both measurements to Domoticz.” [Elektroda, Maciek1008, post #19184228]
Why it matters: For ESP8266/NodeMCU + SDS011 users who need both PM readings in Domoticz without losing one value, this fixes one-idx-only issues.
Quick Facts
- Working pattern: ESPEasy Rules send SDS011 PM2.5/PM10 via /json.htm?type=command¶m=udevice to two idx; nvalue=0, svalue=[reading]. [Elektroda, Maciek1008, post #19184228]
- Offset ESPEasy task intervals (e.g., 60 s vs 55 s) to prevent alternating sends; avoid frequent polling to extend life. [Elektroda, Slawek K., #19160863]
- Domoticz Air Quality expects JSON with nvalue and svalue like "90;2975.00" for updates. [Elektroda, xury, post #19163010]
- SDS011 typical lifetime ≈8000 hours; resolution 0.1 µg/m³, range 0–999.9 µg/m³. [SDS011 Laser Dust Sensor Datasheet]
- Alternatives: use MQTT with Node‑RED transform, or switch firmware to Tasmota if Rules misbehave. [Elektroda, xury, post #19161646]
How do I send both PM2.5 and PM10 from SDS011 via ESP8266 to Domoticz?
Use ESPEasy Rules to push each value to its own Domoticz Custom Sensor. How‑To:
- Create two Custom Sensor devices in Domoticz and note their IDX values.
- In ESPEasy Rules, send PM10 with: SendToHTTP ,,/json.htm?type=command¶m=udevice&idx=&nvalue=0&svalue=[SDS011#PM10].
- Add a second rule for PM2.5 with its IDX and [SDS011#PM25]. Use your Domoticz IP and port. [Elektroda, Maciek1008, post #19184228]
Why do I only see PM2.5 in Domoticz when ESPEasy has one controller IDX?
One controller IDX maps to one Domoticz device. SDS011 exposes two readings, so the second value is not delivered. Create the sensor a second time with a different IDX, or use Rules to send each reading to its own device. [Elektroda, Slawek K., #19159950]
Which Domoticz device type should I use: Custom Sensor or Air Quality?
Use Custom Sensor if you want one device per reading; send a single numeric svalue. Use Air Quality if you want both readings in one device; it expects payload like nvalue:0 and svalue:"90;2975.00". Choose based on your dashboard preference. [Elektroda, xury, post #19163010]
What ESPEasy Rule syntax works to push values to Domoticz?
Use SendToHTTP with the udevice command. Example: SendToHTTP 192.168.1.3,8082,/json.htm?type=command¶m=udevice&idx=158&nvalue=0&svalue=[SDS011#PM10]. Repeat for PM2.5 with its IDX. Ensure Rules are enabled and your IP/port are correct. [Elektroda, Maciek1008, post #19184228]
Changing the "Values" label in ESPEasy doesn’t affect what’s sent—why?
The label change is cosmetic. The SDS011 plugin still treats Value1 and Value2 as fixed PM2.5 and PM10 slots. Renaming fields does not remap which measurement is transmitted. Use Rules or separate devices to control routing. [Elektroda, Maciek1008, post #19161074]
Why do my readings alternate between devices or get dropped?
Identical intervals can cause collisions, so only one task reports. Offset task intervals, for example 60 seconds for one and 55 seconds for the other. Also limit polling because particle sensors have finite lifespans. [Elektroda, Slawek K., #19160863]
Can I use MQTT and Node‑RED instead of HTTP?
Yes. Publish SDS011 values over MQTT, then use Node‑RED to reshape and forward to Domoticz. This avoids controller constraints and adds flexibility. “Once you have mastered nodered, the world seems more beautiful :)”. [Elektroda, xury, post #19162023]
Is Tasmota a good alternative firmware for SDS011 + Domoticz?
Yes. Tasmota supports SDS011 and MQTT telemetry out of the box. It can simplify publishing both readings, especially if ESPEasy Rules feel brittle on your setup. Consider it if you prefer GUI configuration over scripting. [Elektroda, xury, post #19161646]
What is the SDS011’s resolution and expected lifespan?
SDS011 provides 0.1 µg/m³ resolution across roughly 0–999.9 µg/m³. The typical service life is about 8000 hours. Plan your sampling interval and duty cycle to fit that lifetime budget, especially for always‑on deployments. [SDS011 Laser Dust Sensor Datasheet]
Why won’t my Domoticz Air Quality device update with a single number?
Air Quality expects a structured payload. Send nvalue (often 0) and svalue as a semicolon‑separated string, for example "90;2975.00". If you send only a single numeric svalue, Domoticz may ignore the update. [Elektroda, xury, post #19163010]
Where do I find the idx numbers to use in Rules?
In Domoticz, open the Devices tab. The IDX column lists each device’s identifier. Use those exact IDX values in your ESPEasy SendToHTTP commands. Verify that devices are added and active. [Elektroda, Slawek K., #19162210]
Which IP and port should I use in SendToHTTP?
Use your Domoticz server’s IP and its HTTP port. For example, 192.168.1.3 with port 8082 in the working setup. Replace both with your actual host and port from your Domoticz configuration. [Elektroda, Maciek1008, post #19184228]