From e9d2dc913b6c93044da2efa6680427a72c8c1995 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Wed, 4 Feb 2026 21:55:21 +0100 Subject: [PATCH 01/22] initial version --- content/components/sensor/pm1003.md | 41 +++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 content/components/sensor/pm1003.md diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md new file mode 100644 index 0000000000..dc7f92f613 --- /dev/null +++ b/content/components/sensor/pm1003.md @@ -0,0 +1,41 @@ +# PM1003 Particulate Matter Sensor + +The `pm1003` sensor platform integrates the PM1003 particulate matter sensor with ESPHome over UART. It provides: + +- **PM2.5** concentration (µg/m³) + +## Wiring and UART + +PM1003 communicates via UART at 9600 baud. Connect the PM1003 TX to your ESP RX. If you want ESPHome to actively request measurements, also connect ESP TX to PM1003 RX and set `update_interval`. + +## Example configuration + +```yaml +uart: + rx_pin: GPIO22 + tx_pin: GPIO21 + baud_rate: 9600 + +sensor: + - platform: pm1003 + update_interval: 15s + pm_2_5: + name: "PM2.5" + +``` + +## Configuration variables + +- **pm_2_5** (*Optional*): PM2.5 concentration in µg/m³. All options from Sensor. +- **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. +- **update_interval** (*Optional*): If you need to actively request measurements, set a sensible interval. Defaults to never. + +## Notes + +- When `update_interval` is set, the component sends the PM1003 request command automatically. +- The first request is delayed by 60 seconds after boot to match sensor warm-up behavior. + +## See also + +- Sensor Filters: https://esphome.io/components/sensor#sensor-filters +- UART Component: https://esphome.io/components/uart From cad6abd07a80fbc009b9b8329d3a3f6f274f4a62 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Wed, 4 Feb 2026 22:19:34 +0100 Subject: [PATCH 02/22] Added images --- content/components/_index.md | 1 + content/components/sensor/images/pm1003.png | Bin 0 -> 71367 bytes .../sensor/images/pm1003_connector.png | Bin 0 -> 39021 bytes content/components/sensor/pm1003.md | 27 +++++++++++++++--- 4 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 content/components/sensor/images/pm1003.png create mode 100644 content/components/sensor/images/pm1003_connector.png diff --git a/content/components/_index.md b/content/components/_index.md index 9fd26c3ecd..8ac1a3bcb8 100644 --- a/content/components/_index.md +++ b/content/components/_index.md @@ -249,6 +249,7 @@ Sensors are organized into categories; if a given sensor fits into more than one "iAQ-Core","components/sensor/iaqcore","iaqcore.jpg","eCO₂ & Volatile organics","","" "MH-Z19","components/sensor/mhz19","mhz19.jpg","CO₂ & Temperature","","" "MiCS-4514","components/sensor/mics_4514","mics_4514.jpg","NO₂ & CO & H₂ & Ethanol & Methane & Ammonia","","" +"PM1003 Sensor","components/sensor/pm1003","pm1003.jpg","Particulate","","" "PM1006 Sensor","components/sensor/pm1006","pm1006.jpg","Particulate","","" "PM2005 Sensor","components/sensor/pm2005","pm2005.png","Particulate","","" "PMSA003I","components/sensor/pmsa003i","pmsa003i.jpg","Particulate","","" diff --git a/content/components/sensor/images/pm1003.png b/content/components/sensor/images/pm1003.png new file mode 100644 index 0000000000000000000000000000000000000000..5a0b12d391302d5007ca6aa3c9a2cab3bd4e6921 GIT binary patch literal 71367 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 z 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 R)OGlenzFW1p`z7|{|5`;PTBwf literal 0 HcmV?d00001 diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md index dc7f92f613..24658494af 100644 --- a/content/components/sensor/pm1003.md +++ b/content/components/sensor/pm1003.md @@ -1,12 +1,29 @@ # PM1003 Particulate Matter Sensor +![connector](./images/pm1003.png) -The `pm1003` sensor platform integrates the PM1003 particulate matter sensor with ESPHome over UART. It provides: +The `pm1003` sensor platform integrates the PM1003 particulate matter sensor with ESPHome over UART. + +You can find this sensor in devices such as Levoit air purifiers (for example, the Vital100s and LV-131PUR). +The measurement range is 0–500 µg/m³. + +It provides: - **PM2.5** concentration (µg/m³) ## Wiring and UART -PM1003 communicates via UART at 9600 baud. Connect the PM1003 TX to your ESP RX. If you want ESPHome to actively request measurements, also connect ESP TX to PM1003 RX and set `update_interval`. +PM1003 communicates via UART at 9600 baud. Connect both RX and TX and set `update_interval`. +![connector](./images/pm1003_connector.png) +| PM1003 pin | ESP pin | Notes | +| --- | --- | --- | +| 1 GND | GND | Ground. | +| 2 TX | GPIO21 | UART data from PM1003 to ESP. | +| 3 VDD | 5V | Power input. | +| 4 P1 | NC | PWM out +| 5 RX | GPIO22 | UART data from ESP to PM1003 (required for active requests). | + + +RX/TX and PWM are 4.5V TTL. Use a level shifter or voltage divider for 3.3V ESP32 boards, it might work without but also might fry your esp32. ## Example configuration @@ -37,5 +54,7 @@ sensor: ## See also -- Sensor Filters: https://esphome.io/components/sensor#sensor-filters -- UART Component: https://esphome.io/components/uart +- [Sensor Filters](/components/sensor#sensor-filters) +- [UART Component](/components/uart) +- {{< apiref "pm1003/pm1003.h" "pm1003/pm1003.h" >}} +- [Esphome Levoit Air Purifiers- Project](https://github.com/tuct/esphome-projects/tree/main/projects/free-levoit) From 3dd5d5e3377c0587251bce3218019bedd70d2394 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Wed, 4 Feb 2026 22:22:45 +0100 Subject: [PATCH 03/22] Fix formatting and spacing in PM1003 sensor documentation --- content/components/sensor/pm1003.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md index 24658494af..a2a9aada3d 100644 --- a/content/components/sensor/pm1003.md +++ b/content/components/sensor/pm1003.md @@ -1,4 +1,5 @@ # PM1003 Particulate Matter Sensor + ![connector](./images/pm1003.png) The `pm1003` sensor platform integrates the PM1003 particulate matter sensor with ESPHome over UART. @@ -14,6 +15,7 @@ It provides: PM1003 communicates via UART at 9600 baud. Connect both RX and TX and set `update_interval`. ![connector](./images/pm1003_connector.png) + | PM1003 pin | ESP pin | Notes | | --- | --- | --- | | 1 GND | GND | Ground. | @@ -22,7 +24,6 @@ PM1003 communicates via UART at 9600 baud. Connect both RX and TX and set `updat | 4 P1 | NC | PWM out | 5 RX | GPIO22 | UART data from ESP to PM1003 (required for active requests). | - RX/TX and PWM are 4.5V TTL. Use a level shifter or voltage divider for 3.3V ESP32 boards, it might work without but also might fry your esp32. ## Example configuration From 6b66386679d5d0b844e2ff48b8d0034265784351 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 14:05:28 +0100 Subject: [PATCH 04/22] Enhance PM1003 sensor documentation to include PWM support and update wiring details --- content/components/sensor/pm1003.md | 55 ++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 12 deletions(-) diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md index a2a9aada3d..9aa54d18ed 100644 --- a/content/components/sensor/pm1003.md +++ b/content/components/sensor/pm1003.md @@ -2,32 +2,46 @@ ![connector](./images/pm1003.png) -The `pm1003` sensor platform integrates the PM1003 particulate matter sensor with ESPHome over UART. +The `pm1003` sensor platform integrates the PM1003 particulate matter sensor with ESPHome over UART or PWM duty-cycle output. You can find this sensor in devices such as Levoit air purifiers (for example, the Vital100s and LV-131PUR). The measurement range is 0–500 µg/m³. +It support UART or PWM as interface. + It provides: - **PM2.5** concentration (µg/m³) -## Wiring and UART +## Wiring -PM1003 communicates via UART at 9600 baud. Connect both RX and TX and set `update_interval`. +PM1003 communicates via UART at 9600 baud or exposes a PWM duty-cycle output on P1. Choose one method (UART or PWM). ![connector](./images/pm1003_connector.png) | PM1003 pin | ESP pin | Notes | | --- | --- | --- | | 1 GND | GND | Ground. | -| 2 TX | GPIO21 | UART data from PM1003 to ESP. | +| 2 TX | RX | UART data from PM1003 to ESP. | | 3 VDD | 5V | Power input. | -| 4 P1 | NC | PWM out -| 5 RX | GPIO22 | UART data from ESP to PM1003 (required for active requests). | - -RX/TX and PWM are 4.5V TTL. Use a level shifter or voltage divider for 3.3V ESP32 boards, it might work without but also might fry your esp32. +| 4 P1 | Any GPIO input | PWM duty-cycle output for PM2.5. | +| 5 RX | TX | UART data from ESP to PM1003 (required when using `update_interval`). | + +RX/TX and PWM are 4.5V TTL. +Use a level shifter for UART for 3.3V ESP boards. +For PWM, a 10k/20k resistor divider to GND is required to bring the signal to 3.3V. + +```text +PM1003 P1 (4.5V TTL) ----[10k]----+----> ESP GPIO (3.3V) + | + [20k] + | + GND +``` ## Example configuration +### UART (active requests) + ```yaml uart: rx_pin: GPIO22 @@ -42,16 +56,33 @@ sensor: ``` +### PWM only + +```yaml +sensor: + - platform: pm1003 + pm_2_5: + name: "PM2.5" + pwm: + pin: + number: GPIO27 + inverted: true +``` + ## Configuration variables -- **pm_2_5** (*Optional*): PM2.5 concentration in µg/m³. All options from Sensor. +- **pm_2_5** (*Optional*): PM2.5 concentration in µg/m³. All options from Sensor. Required when `pwm` is configured. +- **pwm** (*Optional*): PWM duty-cycle input for PM2.5. When set, UART is not used. + - **pin** (**Required**, GPIO input): Pin connected to PM1003 P1. Uses the ESPHome GPIO input pin schema. + - **name** (*Optional*, string): Name for the PWM duty sensor. Defaults to empty. + - **internal** (*Optional*, boolean): Whether to hide the PWM duty sensor. Defaults to `true`. - **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. -- **update_interval** (*Optional*): If you need to actively request measurements, set a sensible interval. Defaults to never. +- **startup_delay** (*Optional*): Time to wait after boot before publishing measurements. Defaults to `15s`. +- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. ## Notes -- When `update_interval` is set, the component sends the PM1003 request command automatically. -- The first request is delayed by 60 seconds after boot to match sensor warm-up behavior. +- When `pwm` is configured, UART is not used. ## See also From 42e4b3fb8e9dbcc87377adf4a4fdc6980fdd6f22 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 14:06:44 +0100 Subject: [PATCH 05/22] Clarify level shifter example for UART connection in PM1003 documentation --- content/components/sensor/pm1003.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md index 9aa54d18ed..dc58ef3b2a 100644 --- a/content/components/sensor/pm1003.md +++ b/content/components/sensor/pm1003.md @@ -27,7 +27,7 @@ PM1003 communicates via UART at 9600 baud or exposes a PWM duty-cycle output on | 5 RX | TX | UART data from ESP to PM1003 (required when using `update_interval`). | RX/TX and PWM are 4.5V TTL. -Use a level shifter for UART for 3.3V ESP boards. +Use a level shifter (e.g: BSS138) for UART for 3.3V ESP boards. For PWM, a 10k/20k resistor divider to GND is required to bring the signal to 3.3V. ```text From e8b62ead04eb17866f7d4c3195c3d35511c33b8b Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 16:09:51 +0100 Subject: [PATCH 06/22] Add PM1006 and PM1006K support to PM1003 documentation with updated wiring and configuration examples --- content/components/sensor/images/pm1006.png | Bin 0 -> 88183 bytes .../sensor/images/pm1006_connector.png | Bin 0 -> 14711 bytes content/components/sensor/pm1003.md | 112 +++++++++++++----- 3 files changed, 84 insertions(+), 28 deletions(-) create mode 100644 content/components/sensor/images/pm1006.png create mode 100644 content/components/sensor/images/pm1006_connector.png diff --git a/content/components/sensor/images/pm1006.png b/content/components/sensor/images/pm1006.png new file mode 100644 index 0000000000000000000000000000000000000000..fb2ec59cdfbdb50e2d4035998578434717dc699f GIT binary patch literal 88183 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�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 literal 0 HcmV?d00001 diff --git a/content/components/sensor/images/pm1006_connector.png b/content/components/sensor/images/pm1006_connector.png new file mode 100644 index 0000000000000000000000000000000000000000..ba927ab509b52dd26a42dbea810a809046f7302f GIT binary patch literal 14711 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 R;ATk#1zA;@GN}(i{{vqbBhLT; literal 0 HcmV?d00001 diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md index dc58ef3b2a..7f12658312 100644 --- a/content/components/sensor/pm1003.md +++ b/content/components/sensor/pm1003.md @@ -1,21 +1,39 @@ -# PM1003 Particulate Matter Sensor +# PM100X Particulate Matter Sensors -![connector](./images/pm1003.png) +The `pm100x` sensor platform integrates the PM1003, PM1006, and PM1006K particulate matter sensors with ESPHome over UART or PWM duty-cycle output. -The `pm1003` sensor platform integrates the PM1003 particulate matter sensor with ESPHome over UART or PWM duty-cycle output. +| ![PM1003](./images/pm1003.png) | ![PM1006(K)](./images/pm1006.png) | +| --- | --- | +| PM1003 | PM1006(K) | -You can find this sensor in devices such as Levoit air purifiers (for example, the Vital100s and LV-131PUR). -The measurement range is 0–500 µg/m³. +## Model information -It support UART or PWM as interface. +| Model | Example devices | Measurement range | Interfaces | Measures | +| --- | --- | --- | --- | --- | +| PM1003 | Levoit air purifiers (Vital100s, LV-131PUR) | 0–500 µg/m³ | UART, PWM | PM2.5 | +| PM1006 | IKEA VINDSTYRKA | 0–1000 µg/m³ | UART | PM2.5 | +| PM1006K | — | 0–1000 µg/m³ | UART, PWM | PM1.0, PM2.5, PM10.0 | -It provides: - -- **PM2.5** concentration (µg/m³) +- **Supply voltage**: 5V +- **Signal level**: 4.5V TTL (UART and PWM) ## Wiring -PM1003 communicates via UART at 9600 baud or exposes a PWM duty-cycle output on P1. Choose one method (UART or PWM). +PM100x devices communicate via UART at 9600 baud or expose a PWM duty-cycle output on P1. Choose one method (UART or PWM). + +RX/TX and PWM are 4.5V TTL. +Use a level shifter (e.g: BSS138) for UART for 3.3V ESP boards. +For PWM, a 10k/20k resistor divider to GND is required to bring the signal to 3.3V. + +```text +PM100X P1----[10k]----+----> ESP GPIO (3.3V) + | + [20k] + | + GND +``` + +### PM1003 ![connector](./images/pm1003_connector.png) | PM1003 pin | ESP pin | Notes | @@ -24,23 +42,24 @@ PM1003 communicates via UART at 9600 baud or exposes a PWM duty-cycle output on | 2 TX | RX | UART data from PM1003 to ESP. | | 3 VDD | 5V | Power input. | | 4 P1 | Any GPIO input | PWM duty-cycle output for PM2.5. | -| 5 RX | TX | UART data from ESP to PM1003 (required when using `update_interval`). | +| 5 RX | TX | UART data from ESP to PM1003 | -RX/TX and PWM are 4.5V TTL. -Use a level shifter (e.g: BSS138) for UART for 3.3V ESP boards. -For PWM, a 10k/20k resistor divider to GND is required to bring the signal to 3.3V. -```text -PM1003 P1 (4.5V TTL) ----[10k]----+----> ESP GPIO (3.3V) - | - [20k] - | - GND -``` +### PM1006 / PM1006K +![connector](./images/pm1006_connector.png) + +| PM1003 pin | ESP pin | Notes | +| --- | --- | --- | +| 1 GND | GND | Ground. | +| 2 VDD | 5V | Power input. | +| 3 RX | TX | UART data from ESP to PM1006/K | +| 4 TX | RX | UART data from PM1006/K to ESP. | + +Info: Pin 4 on the PM1006K outputs pwm if no uart cmds are are received after startup. Maybe also the PM1006 (not verified!) ## Example configuration -### UART (active requests) +### UART (active requests, PM1003 default) ```yaml uart: @@ -49,18 +68,18 @@ uart: baud_rate: 9600 sensor: - - platform: pm1003 + - platform: pm100x update_interval: 15s pm_2_5: name: "PM2.5" ``` -### PWM only +### PWM only (PM1003 or PM1006K) ```yaml sensor: - - platform: pm1003 + - platform: pm100x pm_2_5: name: "PM2.5" pwm: @@ -69,13 +88,48 @@ sensor: inverted: true ``` +### UART (PM1006) + +```yaml +uart: + rx_pin: GPIO22 + tx_pin: GPIO21 + baud_rate: 9600 + +sensor: + - platform: pm100x + model: pm1006 + pm_2_5: + name: "PM2.5" +``` + +### UART (PM1006K with PM1.0/PM10.0) + +```yaml +uart: + rx_pin: GPIO22 + tx_pin: GPIO21 + baud_rate: 9600 + +sensor: + - platform: pm100x + model: pm1006k + pm_1_0: + name: "PM1.0" + pm_2_5: + name: "PM2.5" + pm_10_0: + name: "PM10.0" +``` + ## Configuration variables +- **model** (*Optional*): PM100x model selection. One of `pm1003`, `pm1006`, `pm1006k`. Defaults to `pm1003`. - **pm_2_5** (*Optional*): PM2.5 concentration in µg/m³. All options from Sensor. Required when `pwm` is configured. +- **pm_1_0** (*Optional*): PM1.0 concentration in µg/m³. Only supported on `pm1006k` and requires UART. +- **pm_10_0** (*Optional*): PM10.0 concentration in µg/m³. Only supported on `pm1006k` and requires UART. - **pwm** (*Optional*): PWM duty-cycle input for PM2.5. When set, UART is not used. - **pin** (**Required**, GPIO input): Pin connected to PM1003 P1. Uses the ESPHome GPIO input pin schema. - - **name** (*Optional*, string): Name for the PWM duty sensor. Defaults to empty. - - **internal** (*Optional*, boolean): Whether to hide the PWM duty sensor. Defaults to `true`. - **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. - **startup_delay** (*Optional*): Time to wait after boot before publishing measurements. Defaults to `15s`. - **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. @@ -83,10 +137,12 @@ sensor: ## Notes - When `pwm` is configured, UART is not used. +- `pm1006` does not support PWM. +- `pm_1_0` and `pm_10_0` are only available on `pm1006k` and require UART. ## See also - [Sensor Filters](/components/sensor#sensor-filters) - [UART Component](/components/uart) -- {{< apiref "pm1003/pm1003.h" "pm1003/pm1003.h" >}} +- {{< apiref "pm100x/pm100x.h" "pm100x/pm100x.h" >}} - [Esphome Levoit Air Purifiers- Project](https://github.com/tuct/esphome-projects/tree/main/projects/free-levoit) From 3cbc7230f03b11dc04039032f11a7865b4a73799 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 16:41:18 +0100 Subject: [PATCH 07/22] Update PM1003 sensor entry to PM100X in documentation index --- content/components/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/components/_index.md b/content/components/_index.md index 8ac1a3bcb8..ae51e8ada6 100644 --- a/content/components/_index.md +++ b/content/components/_index.md @@ -249,8 +249,8 @@ Sensors are organized into categories; if a given sensor fits into more than one "iAQ-Core","components/sensor/iaqcore","iaqcore.jpg","eCO₂ & Volatile organics","","" "MH-Z19","components/sensor/mhz19","mhz19.jpg","CO₂ & Temperature","","" "MiCS-4514","components/sensor/mics_4514","mics_4514.jpg","NO₂ & CO & H₂ & Ethanol & Methane & Ammonia","","" -"PM1003 Sensor","components/sensor/pm1003","pm1003.jpg","Particulate","","" "PM1006 Sensor","components/sensor/pm1006","pm1006.jpg","Particulate","","" +"PM100X","components/sensor/pm100x","pm100x.jpg","Particulate","","" "PM2005 Sensor","components/sensor/pm2005","pm2005.png","Particulate","","" "PMSA003I","components/sensor/pmsa003i","pmsa003i.jpg","Particulate","","" "PMSX003","components/sensor/pmsx003","pmsx003.svg","Particulate","","" From 5bc88aa3852b6b61293f779c4e7fcb4c43800195 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 16:42:41 +0100 Subject: [PATCH 08/22] Correct capitalization in project link for ESPhome Levoit Air Purifiers --- content/components/sensor/pm1003.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md index 7f12658312..e2e49f8f1e 100644 --- a/content/components/sensor/pm1003.md +++ b/content/components/sensor/pm1003.md @@ -145,4 +145,4 @@ sensor: - [Sensor Filters](/components/sensor#sensor-filters) - [UART Component](/components/uart) - {{< apiref "pm100x/pm100x.h" "pm100x/pm100x.h" >}} -- [Esphome Levoit Air Purifiers- Project](https://github.com/tuct/esphome-projects/tree/main/projects/free-levoit) +- [ESPhome Levoit Air Purifiers- Project](https://github.com/tuct/esphome-projects/tree/main/projects/free-levoit) From 4db52dc4b48d8c02a5ae40d38daea77ae93b1ee6 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 16:43:13 +0100 Subject: [PATCH 09/22] Fix formatting issues and improve clarity in PM1003 documentation --- content/components/sensor/pm1003.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm1003.md index e2e49f8f1e..28e842fd78 100644 --- a/content/components/sensor/pm1003.md +++ b/content/components/sensor/pm1003.md @@ -21,7 +21,7 @@ The `pm100x` sensor platform integrates the PM1003, PM1006, and PM1006K particul PM100x devices communicate via UART at 9600 baud or expose a PWM duty-cycle output on P1. Choose one method (UART or PWM). -RX/TX and PWM are 4.5V TTL. +RX/TX and PWM are 4.5V TTL. Use a level shifter (e.g: BSS138) for UART for 3.3V ESP boards. For PWM, a 10k/20k resistor divider to GND is required to bring the signal to 3.3V. @@ -34,6 +34,7 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) ``` ### PM1003 + ![connector](./images/pm1003_connector.png) | PM1003 pin | ESP pin | Notes | @@ -44,8 +45,8 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) | 4 P1 | Any GPIO input | PWM duty-cycle output for PM2.5. | | 5 RX | TX | UART data from ESP to PM1003 | +### PM1006/PM1006K -### PM1006 / PM1006K ![connector](./images/pm1006_connector.png) | PM1003 pin | ESP pin | Notes | @@ -55,7 +56,7 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) | 3 RX | TX | UART data from ESP to PM1006/K | | 4 TX | RX | UART data from PM1006/K to ESP. | -Info: Pin 4 on the PM1006K outputs pwm if no uart cmds are are received after startup. Maybe also the PM1006 (not verified!) +Info: Pin 4 on the PM1006K outputs pwm if no uart cmds are are received after startup. Maybe also the PM1006 (not verified!) ## Example configuration @@ -83,7 +84,7 @@ sensor: pm_2_5: name: "PM2.5" pwm: - pin: + pin: number: GPIO27 inverted: true ``` @@ -132,7 +133,7 @@ sensor: - **pin** (**Required**, GPIO input): Pin connected to PM1003 P1. Uses the ESPHome GPIO input pin schema. - **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. - **startup_delay** (*Optional*): Time to wait after boot before publishing measurements. Defaults to `15s`. -- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. +- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. ## Notes From 5b1cd0ad04e61b7f27db33c2bb2ffd67714e563e Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 16:48:51 +0100 Subject: [PATCH 10/22] Update PM100X sensor image file extension from .jpg to .png in documentation --- content/components/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/components/_index.md b/content/components/_index.md index ae51e8ada6..cc9c05e8ab 100644 --- a/content/components/_index.md +++ b/content/components/_index.md @@ -250,7 +250,7 @@ Sensors are organized into categories; if a given sensor fits into more than one "MH-Z19","components/sensor/mhz19","mhz19.jpg","CO₂ & Temperature","","" "MiCS-4514","components/sensor/mics_4514","mics_4514.jpg","NO₂ & CO & H₂ & Ethanol & Methane & Ammonia","","" "PM1006 Sensor","components/sensor/pm1006","pm1006.jpg","Particulate","","" -"PM100X","components/sensor/pm100x","pm100x.jpg","Particulate","","" +"PM100X","components/sensor/pm100x","pm100x.png","Particulate","","" "PM2005 Sensor","components/sensor/pm2005","pm2005.png","Particulate","","" "PMSA003I","components/sensor/pmsa003i","pmsa003i.jpg","Particulate","","" "PMSX003","components/sensor/pmsx003","pmsx003.svg","Particulate","","" From 373e21195e584a195a26d2ed6af4e148eddd3f66 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 16:56:06 +0100 Subject: [PATCH 11/22] Fix PM100X sensor image reference in documentation to use correct file --- content/components/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/components/_index.md b/content/components/_index.md index cc9c05e8ab..fe43400e44 100644 --- a/content/components/_index.md +++ b/content/components/_index.md @@ -250,7 +250,7 @@ Sensors are organized into categories; if a given sensor fits into more than one "MH-Z19","components/sensor/mhz19","mhz19.jpg","CO₂ & Temperature","","" "MiCS-4514","components/sensor/mics_4514","mics_4514.jpg","NO₂ & CO & H₂ & Ethanol & Methane & Ammonia","","" "PM1006 Sensor","components/sensor/pm1006","pm1006.jpg","Particulate","","" -"PM100X","components/sensor/pm100x","pm100x.png","Particulate","","" +"PM100X","components/sensor/pm100x","pm1003.png","Particulate","","" "PM2005 Sensor","components/sensor/pm2005","pm2005.png","Particulate","","" "PMSA003I","components/sensor/pmsa003i","pmsa003i.jpg","Particulate","","" "PMSX003","components/sensor/pmsx003","pmsx003.svg","Particulate","","" From 6f41bd5d1e0b3f3a9bb155a2009eb400f4eb002c Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 17:02:02 +0100 Subject: [PATCH 12/22] Fix PM100X sensor image reference to use correct file --- content/components/_index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/components/_index.md b/content/components/_index.md index fe43400e44..3380b4136e 100644 --- a/content/components/_index.md +++ b/content/components/_index.md @@ -250,7 +250,7 @@ Sensors are organized into categories; if a given sensor fits into more than one "MH-Z19","components/sensor/mhz19","mhz19.jpg","CO₂ & Temperature","","" "MiCS-4514","components/sensor/mics_4514","mics_4514.jpg","NO₂ & CO & H₂ & Ethanol & Methane & Ammonia","","" "PM1006 Sensor","components/sensor/pm1006","pm1006.jpg","Particulate","","" -"PM100X","components/sensor/pm100x","pm1003.png","Particulate","","" +"PM100X","components/sensor/pm100x","pm1006.jpg","Particulate","","" "PM2005 Sensor","components/sensor/pm2005","pm2005.png","Particulate","","" "PMSA003I","components/sensor/pmsa003i","pmsa003i.jpg","Particulate","","" "PMSX003","components/sensor/pmsx003","pmsx003.svg","Particulate","","" From adc0341c9972b82460539a544cc8c9ffec2bb7fe Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Fri, 6 Feb 2026 17:09:03 +0100 Subject: [PATCH 13/22] Add documentation for PM100X particulate matter sensors --- content/components/sensor/{pm1003.md => pm100x.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename content/components/sensor/{pm1003.md => pm100x.md} (100%) diff --git a/content/components/sensor/pm1003.md b/content/components/sensor/pm100x.md similarity index 100% rename from content/components/sensor/pm1003.md rename to content/components/sensor/pm100x.md From cf71287a131539ddd4af2a1d4b374c871101e905 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 12:36:11 +0100 Subject: [PATCH 14/22] Add passive UART configuration for IKEA VINDRIKTNING and update image references --- content/components/sensor/pm100x.md | 33 +++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index 28e842fd78..fb2e8a2215 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -2,7 +2,7 @@ The `pm100x` sensor platform integrates the PM1003, PM1006, and PM1006K particulate matter sensors with ESPHome over UART or PWM duty-cycle output. -| ![PM1003](./images/pm1003.png) | ![PM1006(K)](./images/pm1006.png) | +| ![PM1003](pm1003.png) | ![PM1006(K)](pm1006.png) | | --- | --- | | PM1003 | PM1006(K) | @@ -123,6 +123,35 @@ sensor: name: "PM10.0" ``` + +### UART - passive IKEA VINDRIKTNING + +In common usage, with the IKEA VINDRIKTNING still controlling the pm1006 sensor, there is no update interval, and this implementation will passively pick up whatever the VINDRIKTNING MCU has requested from the sensor. + +In this case you only need the rx_pin configured in UART. + +The implementation was inspired by ; you can also see the pinout there. +However, we recommend mounting your ESP below the fan (which blows out the front) so you do not obstruct the airflow. +[This discussion thread on the HA forum](https://community.home-assistant.io/t/ikea-vindriktning-air-quality-sensor/324599) has several examples of how people have connected their ESP device to the IKEA sensor. + +```yaml +uart: + rx_pin: GPIO22 + tx_pin: GPIO21 + baud_rate: 9600 + +sensor: + - platform: pm100x + model: pm1006 + update_interval: 0s # do not request + pm_1_0: + name: "PM1.0" + pm_2_5: + name: "PM2.5" + pm_10_0: + name: "PM10.0" +``` + ## Configuration variables - **model** (*Optional*): PM100x model selection. One of `pm1003`, `pm1006`, `pm1006k`. Defaults to `pm1003`. @@ -133,7 +162,7 @@ sensor: - **pin** (**Required**, GPIO input): Pin connected to PM1003 P1. Uses the ESPHome GPIO input pin schema. - **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. - **startup_delay** (*Optional*): Time to wait after boot before publishing measurements. Defaults to `15s`. -- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. +- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. Setting this to 0s in UART mode will dissable sending measurement requests. ## Notes From 77021eaef3eac261128e949c9fe1e0e6dab4acbb Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 12:46:22 +0100 Subject: [PATCH 15/22] Remove unnecessary blank line before passive UART section for PM1006 sensor --- content/components/sensor/pm100x.md | 1 - 1 file changed, 1 deletion(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index fb2e8a2215..783050432d 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -123,7 +123,6 @@ sensor: name: "PM10.0" ``` - ### UART - passive IKEA VINDRIKTNING In common usage, with the IKEA VINDRIKTNING still controlling the pm1006 sensor, there is no update interval, and this implementation will passively pick up whatever the VINDRIKTNING MCU has requested from the sensor. From 14818a4a6e72eabe47caf7d2341ac7bf92c2ea44 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 13:03:52 +0100 Subject: [PATCH 16/22] Add metadata and improve image references for PM100X sensor documentation --- content/components/sensor/pm100x.md | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index 783050432d..d2fc934fbe 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -1,8 +1,15 @@ -# PM100X Particulate Matter Sensors +--- +description: "Instructions for setting up PM1003, PM1006 and PM1006K Particulate matter sensors, such as in the IKEA VINDRIKTNING or Levoit Air Purifiers" +title: "PM100X Particulate Matter Sensors" +params: + seo: + description: Instructions for setting up PM1003, PM1006 and PM1006K Particulate matter sensors, such as in the IKEA VINDRIKTNING or Levoit Air Purifiers + image: pm1006.jpg +--- The `pm100x` sensor platform integrates the PM1003, PM1006, and PM1006K particulate matter sensors with ESPHome over UART or PWM duty-cycle output. -| ![PM1003](pm1003.png) | ![PM1006(K)](pm1006.png) | +| {{< img src="pm1003.png" alt="Image" caption="PM1003 Sensor" class="align-center" >}}| {{< img src="pm1006.png" alt="Image" caption="PM1006(K) Sensor" class="align-center" >}} | | --- | --- | | PM1003 | PM1006(K) | @@ -35,7 +42,7 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) ### PM1003 -![connector](./images/pm1003_connector.png) +{{< img src="pm1003_connector.png" alt="Image" caption="PM1003 Connector" class="align-center" >}} | PM1003 pin | ESP pin | Notes | | --- | --- | --- | @@ -47,7 +54,7 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) ### PM1006/PM1006K -![connector](./images/pm1006_connector.png) +{{< img src="pm1006_connector.png" alt="Image" caption="PM1006(K) Connector" class="align-center" >}} | PM1003 pin | ESP pin | Notes | | --- | --- | --- | From 7cc9fbcef901b76a8b81a3c519c18bbba7175ae8 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 13:05:37 +0100 Subject: [PATCH 17/22] Fix formatting and alignment issues in PM1003 and PM1006 connector sections --- content/components/sensor/pm100x.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index d2fc934fbe..dea524ffc6 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -35,14 +35,14 @@ For PWM, a 10k/20k resistor divider to GND is required to bring the signal to 3. ```text PM100X P1----[10k]----+----> ESP GPIO (3.3V) | - [20k] + [20k] | GND ``` ### PM1003 -{{< img src="pm1003_connector.png" alt="Image" caption="PM1003 Connector" class="align-center" >}} +{{< img src="pm1003_connector.png" alt="Image" caption="PM1003 Connector" class="align-center" >}} | PM1003 pin | ESP pin | Notes | | --- | --- | --- | @@ -54,7 +54,7 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) ### PM1006/PM1006K -{{< img src="pm1006_connector.png" alt="Image" caption="PM1006(K) Connector" class="align-center" >}} +{{< img src="pm1006_connector.png" alt="Image" caption="PM1006(K) Connector" class="align-center" >}} | PM1003 pin | ESP pin | Notes | | --- | --- | --- | From ef41270ad1756225ee08cc30b470118fd88dd20d Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 13:10:30 +0100 Subject: [PATCH 18/22] Rearrange PM1003 and PM1006 sensor images for improved formatting --- content/components/sensor/pm100x.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index dea524ffc6..555cdbee03 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -9,9 +9,10 @@ params: The `pm100x` sensor platform integrates the PM1003, PM1006, and PM1006K particulate matter sensors with ESPHome over UART or PWM duty-cycle output. -| {{< img src="pm1003.png" alt="Image" caption="PM1003 Sensor" class="align-center" >}}| {{< img src="pm1006.png" alt="Image" caption="PM1006(K) Sensor" class="align-center" >}} | +| PM1003 | PM1006 and PM1006K | | --- | --- | -| PM1003 | PM1006(K) | +| {{< img src="pm1003.png" alt="Image" caption="PM1003 Sensor" class="align-center" >}}| {{< img src="pm1006.png" alt="Image" caption="PM1006(K) Sensor" class="align-center" >}} | + ## Model information From 20a112e251dd44eac6a387147d729d49cc32dd84 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 13:12:09 +0100 Subject: [PATCH 19/22] Remove unnecessary blank line before model information in PM100X sensor documentation --- content/components/sensor/pm100x.md | 1 - 1 file changed, 1 deletion(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index 555cdbee03..89cdd0f0b8 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -13,7 +13,6 @@ The `pm100x` sensor platform integrates the PM1003, PM1006, and PM1006K particul | --- | --- | | {{< img src="pm1003.png" alt="Image" caption="PM1003 Sensor" class="align-center" >}}| {{< img src="pm1006.png" alt="Image" caption="PM1006(K) Sensor" class="align-center" >}} | - ## Model information | Model | Example devices | Measurement range | Interfaces | Measures | From ecb806dc4d5c69b450f3e0520b79c5c80d8824f3 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 13:26:09 +0100 Subject: [PATCH 20/22] Rearranged PM100X sensor documentation --- content/components/sensor/pm100x.md | 95 +++++++++++++++-------------- 1 file changed, 48 insertions(+), 47 deletions(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index 89cdd0f0b8..c8cc5351f0 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -13,6 +13,48 @@ The `pm100x` sensor platform integrates the PM1003, PM1006, and PM1006K particul | --- | --- | | {{< img src="pm1003.png" alt="Image" caption="PM1003 Sensor" class="align-center" >}}| {{< img src="pm1006.png" alt="Image" caption="PM1006(K) Sensor" class="align-center" >}} | +**Example configuration:** + +UART (active requests, PM1003 default) + +```yaml +uart: + rx_pin: GPIO22 + tx_pin: GPIO21 + baud_rate: 9600 + +sensor: + - platform: pm100x + update_interval: 15s + pm_2_5: + name: "PM2.5" + +``` + +PWM only (PM1003 or PM1006K) + +```yaml +sensor: + - platform: pm100x + pm_2_5: + name: "PM2.5" + pwm: + pin: + number: GPIO27 + inverted: true +``` +## Configuration variables + +- **model** (*Optional*): PM100x model selection. One of `pm1003`, `pm1006`, `pm1006k`. Defaults to `pm1003`. +- **pm_2_5** (*Optional*): PM2.5 concentration in µg/m³. All options from Sensor. Required when `pwm` is configured. +- **pm_1_0** (*Optional*): PM1.0 concentration in µg/m³. Only supported on `pm1006k` and requires UART. +- **pm_10_0** (*Optional*): PM10.0 concentration in µg/m³. Only supported on `pm1006k` and requires UART. +- **pwm** (*Optional*): PWM duty-cycle input for PM2.5. When set, UART is not used. + - **pin** (**Required**, GPIO input): Pin connected to PM1003 P1. Uses the ESPHome GPIO input pin schema. +- **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. +- **startup_delay** (*Optional*): Time to wait after boot before publishing measurements. Defaults to `15s`. +- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. Setting this to 0s in UART mode will dissable sending measurement requests. + ## Model information | Model | Example devices | Measurement range | Interfaces | Measures | @@ -40,7 +82,7 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) GND ``` -### PM1003 +## PM1003 Pinout {{< img src="pm1003_connector.png" alt="Image" caption="PM1003 Connector" class="align-center" >}} @@ -52,7 +94,7 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) | 4 P1 | Any GPIO input | PWM duty-cycle output for PM2.5. | | 5 RX | TX | UART data from ESP to PM1003 | -### PM1006/PM1006K +## PM1006/PM1006K Pinout {{< img src="pm1006_connector.png" alt="Image" caption="PM1006(K) Connector" class="align-center" >}} @@ -65,38 +107,9 @@ PM100X P1----[10k]----+----> ESP GPIO (3.3V) Info: Pin 4 on the PM1006K outputs pwm if no uart cmds are are received after startup. Maybe also the PM1006 (not verified!) -## Example configuration +**Example Configuration:** -### UART (active requests, PM1003 default) - -```yaml -uart: - rx_pin: GPIO22 - tx_pin: GPIO21 - baud_rate: 9600 - -sensor: - - platform: pm100x - update_interval: 15s - pm_2_5: - name: "PM2.5" - -``` - -### PWM only (PM1003 or PM1006K) - -```yaml -sensor: - - platform: pm100x - pm_2_5: - name: "PM2.5" - pwm: - pin: - number: GPIO27 - inverted: true -``` - -### UART (PM1006) +UART (PM1006) ```yaml uart: @@ -111,7 +124,7 @@ sensor: name: "PM2.5" ``` -### UART (PM1006K with PM1.0/PM10.0) +UART (PM1006K with PM1.0/PM10.0) ```yaml uart: @@ -130,7 +143,7 @@ sensor: name: "PM10.0" ``` -### UART - passive IKEA VINDRIKTNING +UART - passive IKEA VINDRIKTNING In common usage, with the IKEA VINDRIKTNING still controlling the pm1006 sensor, there is no update interval, and this implementation will passively pick up whatever the VINDRIKTNING MCU has requested from the sensor. @@ -158,18 +171,6 @@ sensor: name: "PM10.0" ``` -## Configuration variables - -- **model** (*Optional*): PM100x model selection. One of `pm1003`, `pm1006`, `pm1006k`. Defaults to `pm1003`. -- **pm_2_5** (*Optional*): PM2.5 concentration in µg/m³. All options from Sensor. Required when `pwm` is configured. -- **pm_1_0** (*Optional*): PM1.0 concentration in µg/m³. Only supported on `pm1006k` and requires UART. -- **pm_10_0** (*Optional*): PM10.0 concentration in µg/m³. Only supported on `pm1006k` and requires UART. -- **pwm** (*Optional*): PWM duty-cycle input for PM2.5. When set, UART is not used. - - **pin** (**Required**, GPIO input): Pin connected to PM1003 P1. Uses the ESPHome GPIO input pin schema. -- **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. -- **startup_delay** (*Optional*): Time to wait after boot before publishing measurements. Defaults to `15s`. -- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. Setting this to 0s in UART mode will dissable sending measurement requests. - ## Notes - When `pwm` is configured, UART is not used. From 784122b3b5d16855c027cc420059cfc9f5ea3470 Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Sat, 7 Feb 2026 13:27:33 +0100 Subject: [PATCH 21/22] Add missing newline before configuration variables in PM100X sensor documentation --- content/components/sensor/pm100x.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index c8cc5351f0..3c5c328f90 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -43,6 +43,7 @@ sensor: number: GPIO27 inverted: true ``` + ## Configuration variables - **model** (*Optional*): PM100x model selection. One of `pm1003`, `pm1006`, `pm1006k`. Defaults to `pm1003`. From b09d87086b817b96036a58474df275258071514b Mon Sep 17 00:00:00 2001 From: Tobias Stanzel Date: Tue, 10 Feb 2026 21:31:39 +0100 Subject: [PATCH 22/22] Fix typo in update_interval description in PM100X sensor documentation --- content/components/sensor/pm100x.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/content/components/sensor/pm100x.md b/content/components/sensor/pm100x.md index 3c5c328f90..83abe3704f 100644 --- a/content/components/sensor/pm100x.md +++ b/content/components/sensor/pm100x.md @@ -54,7 +54,7 @@ sensor: - **pin** (**Required**, GPIO input): Pin connected to PM1003 P1. Uses the ESPHome GPIO input pin schema. - **uart_id** (*Optional*): ID of the UART bus to use when multiple UARTs are configured. - **startup_delay** (*Optional*): Time to wait after boot before publishing measurements. Defaults to `15s`. -- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. Setting this to 0s in UART mode will dissable sending measurement requests. +- **update_interval** (*Optional*): When using UART, this sets the measurement request interval. When using PWM, this sets the duty-cycle polling interval. Setting this to 0s in UART mode will disable sending measurement requests. ## Model information @@ -163,13 +163,9 @@ uart: sensor: - platform: pm100x model: pm1006 - update_interval: 0s # do not request - pm_1_0: - name: "PM1.0" + update_interval: 0s # do not request pm_2_5: name: "PM2.5" - pm_10_0: - name: "PM10.0" ``` ## Notes