{"id":13528157,"url":"https://github.com/syssi/xiaomi_airpurifier","last_synced_at":"2025-05-15T12:06:53.723Z","repository":{"id":40671793,"uuid":"101482973","full_name":"syssi/xiaomi_airpurifier","owner":"syssi","description":"Xiaomi Mi Air Purifier and Xiaomi Mi Air Humidifier integration for Home Assistant","archived":false,"fork":false,"pushed_at":"2025-04-26T07:06:57.000Z","size":494,"stargazers_count":473,"open_issues_count":90,"forks_count":117,"subscribers_count":24,"default_branch":"develop","last_synced_at":"2025-04-26T08:19:04.245Z","etag":null,"topics":["airfresh","airhumidifier","airpurifier","custom-component","fan","hacktoberfest","home-assistant","miio","miio-protocol","miot","xiaomi"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/syssi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-26T11:59:10.000Z","updated_at":"2025-04-26T07:05:48.000Z","dependencies_parsed_at":"2023-12-22T18:38:19.298Z","dependency_job_id":"a9ba58e3-9d7f-44ca-9be8-a3e0a7eed1a9","html_url":"https://github.com/syssi/xiaomi_airpurifier","commit_stats":null,"previous_names":[],"tags_count":43,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syssi%2Fxiaomi_airpurifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syssi%2Fxiaomi_airpurifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syssi%2Fxiaomi_airpurifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/syssi%2Fxiaomi_airpurifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/syssi","download_url":"https://codeload.github.com/syssi/xiaomi_airpurifier/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254337613,"owners_count":22054253,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["airfresh","airhumidifier","airpurifier","custom-component","fan","hacktoberfest","home-assistant","miio","miio-protocol","miot","xiaomi"],"created_at":"2024-08-01T06:02:15.389Z","updated_at":"2025-05-15T12:06:48.708Z","avatar_url":"https://github.com/syssi.png","language":"Python","funding_links":["https://www.buymeacoffee.com/syssi"],"categories":["Python"],"sub_categories":[],"readme":"# Xiaomi Mi Air Purifier \u0026 Xiaomi Mi Air Humidifier\n\n![GitHub actions](https://github.com/syssi/xiaomi_airpurifier/actions/workflows/ci.yaml/badge.svg)\n![GitHub stars](https://img.shields.io/github/stars/syssi/xiaomi_airpurifier)\n![GitHub forks](https://img.shields.io/github/forks/syssi/xiaomi_airpurifier)\n![GitHub watchers](https://img.shields.io/github/watchers/syssi/xiaomi_airpurifier)\n[![\"Buy Me A Coffee\"](https://img.shields.io/badge/buy%20me%20a%20coffee-donate-yellow.svg)](https://www.buymeacoffee.com/syssi)\n\nThis is a custom component for home assistant to integrate the Xiaomi Mi Air Purifier 2, Air Purifier 2S, Air Purifier Pro, Air Humidifier, Air Fresh and Pedestal Fan.\n\nPlease follow the instructions on [Retrieving the Access Token](https://www.home-assistant.io/integrations/xiaomi_miio/#xiaomi-cloud-tokens-extractor) to get the API token to use in the configuration.yaml file.\n\nCredits: Thanks to [Rytilahti](https://github.com/rytilahti/python-miio) for all the work.\n\n## What is the difference between this custom component and the one in Home Assistant Core?\n\nThis custom component is more or less the beta version of the [official component](https://www.home-assistant.io/integrations/xiaomi_miio/). Furthermore, this custom component supports a number of additional devices which cannot be merged into the official component at the moment. The handling/values of the `fan_speed` property need to be refactored first because this and the official component don't align with some new architecture decisions.\n\n## Supported devices\n\n| Name                   | Model                  | Model no. | Specs |\n| ---------------------- | ---------------------- | --------- | ----- |\n| Air Purifier           | zhimi.airpurifier.v1   | | |\n| Air Purifier 2         | zhimi.airpurifier.v2   | FJY4006CN, AC-M2-AA  | 37m\u003csup\u003e2\u003c/sup\u003e, 310m\u003csup\u003e3\u003c/sup\u003e/h CADR, 31W  |\n| Air Purifier V3        | zhimi.airpurifier.v3   | | |\n| Air Purifier V5        | zhimi.airpurifier.v5   | | |\n| Air Purifier Pro       | zhimi.airpurifier.v6   | | |\n| Air Purifier Pro V7    | zhimi.airpurifier.v7   | | |\n| Air Purifier 2 (mini)  | zhimi.airpurifier.m1   | | |\n| Air Purifier (mini)    | zhimi.airpurifier.m2   | | |\n| Air Purifier MA1       | zhimi.airpurifier.ma1  | | |\n| Air Purifier MA2       | zhimi.airpurifier.ma2  | | |\n| Air Purifier 2S        | zhimi.airpurifier.mc1  | XM200003\u003cstrong\u003e(?)\u003c/strong\u003e, AC-M4-AA  | 37m\u003csup\u003e2\u003c/sup\u003e, 310m\u003csup\u003e3\u003c/sup\u003e/h CADR, 66dB, 29W (max)  |\n| Air Purifier 2H        | zhimi.airpurifier.mc2  | FJY4026GL\u003cstrong\u003e(?)\u003c/strong\u003e, AC-M9-AA  | 31m\u003csup\u003e2\u003c/sup\u003e, 260m\u003csup\u003e3\u003c/sup\u003e/h CADR, 66dB, 31W (max)  |\n| Air Purifier Super     | zhimi.airpurifier.sa1  | | |\n| Air Purifier Super 2   | zhimi.airpurifier.sa2  | | |\n| Air Purifier 3 (2019)  | zhimi.airpurifier.ma4  | | |\n| Air Purifier 3H (2019) | zhimi.airpurifier.mb3  | FJY4031GL\u003cstrong\u003e(?)\u003c/strong\u003e, XM200017 | 45m\u003csup\u003e2\u003c/sup\u003e, 380m\u003csup\u003e3\u003c/sup\u003e/h CADR, 64dB, 38W (max) |\n| Air Purifier ZA1       | zhimi.airpurifier.za1   | | |\n| Air Dog X3             | airdog.airpurifier.x3  | | |\n| Air Dog X5             | airdog.airpurifier.x5  | | |\n| Air Dog X7SM           | airdog.airpurifier.x7sm | | |\n| Air Humidifier         | zhimi.humidifier.v1    | | |\n| Air Humidifier CA1     | [zhimi.humidifier.ca1](docs/zhimi.humidifier.ca1.yaml)   | CJXJSQ02ZM, SKV6001RT  | 8W, 240x240x363mm  |\n| Smartmi Humidifier Evaporator 2  | zhimi.humidifier.ca4   | CJXJSQ04ZM  | |\n| Smartmi Evaporative Humidifier   | zhimi.humidifier.cb1   | CJXJSQ02ZM, SKV6001EU  | 8W, 240x240x363mm  |\n| Smartmi Evaporative Humidifier (Korea Version)  | zhimi.humidifier.cb2   | CJXJSQ02ZM  | 8W, 240x240x363mm  |\n| Mijia Smart Sterilization Humidifier S  | deerma.humidifier.mjjsq  | MJJSQ03DY  | 4.5L, \u003c=39dB, 450mL/h, 40W  |\n| Mijia Intelligent Sterilization Humidifier (EU version?) | deerma.humidifier.jsq  | ZNJSQ01DEM  | 4.5L, \u003c=38dB, 300mL/h, 24W  |\n| Mijia Smart Humidifier 2 (EU version) | deerma.humidifier.jsq2w  | MJJSQ05DY  | 4.5L, \u003c=32dB, 300mL/h, 28  W  |\n| Mijia Humidifier 4L  | deerma.humidifier.jsq3  | MJJSQ04DY  | 4L, \u003c=38dB, 300mL/h, 25W  |\n| Mijia Intelligent Sterilization Humidifier (EU version?) | deerma.humidifier.jsq5  | ZNJSQ01DEM  | 4.5L, \u003c=38dB, 300mL/h, 24W  |\n| Mijia Smart Sterilization Humidifier S (EU version?) | deerma.humidifier.jsqs  | MJJSQ03DY  | 4.5L, \u003c=39dB, 450mL/h, 40W  |\n| Mijia Intelligent Sterilization Humidifier SCK0A45  | deerma.humidifier.jsq1  | SCKOA45, SCK0A45  | 4.5L, \u003c=38dB, 300mL/h, 25W |\n| Zero Fog Humidifier    | shuii.humidifier.jsq001   | | |\n| New Widetech Internet Dehumidifier  | nwt.derh.wdh318efw1  | WDH318EFW1  | 2.7L tank, 38dB, 18L/d, 240W |\n| Smartmi Fresh Air System XFXT01ZM        | zhimi.airfresh.va2  | XFXT01ZM     | |\n| Smartmi Fresh Air System XFXTDFR02ZM     | zhimi.airfresh.va4  | XFXTDFR02ZM  | PTC/Heater support |\n| Mi Fresh Air Ventilator  | [dmaker.airfresh.t2017](docs/dmaker-airfresh-t2017.md)  | MJXFJ-300-G1**?** | 300m3/h (Air volume), 35W, 36db(A), 16kg |\n| Mi Fresh Air Ventilator  | [dmaker.airfresh.a1](docs/dmaker.airfresh.a1.yaml)  | MJXFJ-150-A1  | 150m\u003csup\u003e3\u003c/sup\u003e/h (Air volume), 20W, 36db(A), 8kg |\n| Pedestal Fan Fan V2    | zhimi.fan.v2           | | |\n| Pedestal Fan Fan V3    | zhimi.fan.v3           | | |\n| Pedestal Fan Fan SA1   | zhimi.fan.sa1          | | |\n| Pedestal Fan Fan ZA1   | zhimi.fan.za1          | | |\n| Pedestal Fan Fan ZA3   | zhimi.fan.za3          | | |\n| Pedestal Fan Fan ZA4   | zhimi.fan.za4          | | |\n| Pedestal Fan Fan 1C    | dmaker.fan.1c          | | |\n| Pedestal Fan Fan P5    | dmaker.fan.p5          | | |\n| Pedestal Fan Fan P8     | dmaker.fan.p8         | | |\n| Pedestal Fan Fan P9     | dmaker.fan.p9         | | |\n| Pedestal Fan Fan P10    | dmaker.fan.p10        | | |\n| Mijia Pedestal Fan      | dmaker.fan.p11        | BPLDS03DM  | 2800mAh, 24W, \u003c=58dB  |\n| Rosou SS4 Ventilator    | leshow.fan.ss4        | | |\n\nUnsupported devices:\n- Mijia Humidifer 4L (MJJSQ02LX): This device isn't smart / has no WiFi support.\n\n## Features\n\n### Air Purifier 2 et al.\n\n- Power (on, off)\n- Preset modes (auto, silent, favorite, idle)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off), LED brightness (bright, dim, off)\n- Favorite Level (0...16)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `aqi`\n  - `mode`\n  - `filter_hours_used`\n  - `filter_life_remaining`\n  - `favorite_level`\n  - `child_lock`\n  - `led`\n  - `motor_speed`\n  - `average_aqi`\n  - `purify_volume`\n  - `learn_mode`\n  - `sleep_time`\n  - `sleep_mode_learn_count`\n  - `extra_features`\n  - `turbo_mode_supported`\n  - `auto_detect`\n  - `use_time`\n  - `button_pressed`\n  - `buzzer`\n  - `led_brightness`\n  - `sleep_mode`\n\n### Air Purifier 2H (zhimi.airpurifier.mc2)\n\n- Power (on, off)\n- Preset modes (auto, silent, favorite, idle)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off), LED brightness (bright, dim, off)\n- Favorite Level (0...16)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `aqi`\n  - `mode`\n  - `filter_hours_used`\n  - `filter_life_remaining`\n  - `favorite_level`\n  - `child_lock`\n  - `led`\n  - `motor_speed`\n  - `average_aqi`\n  - `learn_mode`\n  - `extra_features`\n  - `turbo_mode_supported`\n  - `buzzer`\n  - `led_brightness`\n\n### Air Purifier Pro (zhimi.airpurifier.v6)\n\n- Power (on, off)\n- Preset modes (auto, silent, favorite)\n- Child lock (on, off)\n- LED (on, off)\n- Favorite Level (0...16)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `aqi`\n  - `mode`\n  - `filter_hours_used`\n  - `filter_life_remaining`\n  - `favorite_level`\n  - `child_lock`\n  - `led`\n  - `motor_speed`\n  - `average_aqi`\n  - `purify_volume`\n  - `learn_mode`\n  - `sleep_time`\n  - `sleep_mode_learn_count`\n  - `extra_features`\n  - `turbo_mode_supported`\n  - `auto_detect`\n  - `use_time`\n  - `button_pressed`\n  - `filter_rfid_product_id`\n  - `filter_rfid_tag`\n  - `filter_type`\n  - `illuminance`\n  - `motor2_speed`\n  - `volume`\n\n### Air Purifier Pro V7 (zhimi.airpurifier.v7)\n\n- Power (on, off)\n- Preset modes (auto, silent, favorite)\n- Child lock (on, off)\n- LED (on, off)\n- Favorite Level (0...16)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `aqi`\n  - `mode`\n  - `filter_hours_used`\n  - `filter_life_remaining`\n  - `favorite_level`\n  - `child_lock`\n  - `led`\n  - `motor_speed`\n  - `average_aqi`\n  - `learn_mode`\n  - `extra_features`\n  - `turbo_mode_supported`\n  - `button_pressed`\n  - `filter_rfid_product_id`\n  - `filter_rfid_tag`\n  - `filter_type`\n  - `illuminance`\n  - `motor2_speed`\n  - `volume`\n\n### Air Purifier 2S (zhimi.airpurifier.mc1) and 2H (zhimi.airpurifier.mc2)\n\n- Power (on, off)\n- Preset modes (auto, silent, favorite)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off)\n- Favorite Level (0...16)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `aqi`\n  - `mode`\n  - `filter_hours_used`\n  - `filter_life_remaining`\n  - `favorite_level`\n  - `child_lock`\n  - `led`\n  - `motor_speed`\n  - `average_aqi`\n  - `learn_mode`\n  - `extra_features`\n  - `turbo_mode_supported`\n  - `button_pressed`\n  - `filter_rfid_product_id`\n  - `filter_rfid_tag`\n  - `filter_type`\n  - `illuminance`\n  - `buzzer`\n\n### Air Purifier 3/3H (2019) (zhimi.airpurifier.ma4/zhimi.airpurifier.mb3)\n\nThis model uses newer MiOT communication protocol.\n\n- Power (on, off)\n- Preset modes (auto, silent, favorite, fan)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off)\n- Favorite Level (0...16)\n- Fan Level (1...3)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `aqi`\n  - `mode`\n  - `filter_hours_used`\n  - `filter_life_remaining`\n  - `favorite_level`\n  - `child_lock`\n  - `led`\n  - `motor_speed`\n  - `average_aqi`\n  - `purify_volume`\n  - `use_time`\n  - `buzzer`\n  - `led_brightness`\n  - `filter_rfid_product_id`\n  - `filter_rfid_tag`\n  - `filter_type`\n  - `fan_level`\n\n### Air Purifier V3 (zhimi.airpurifier.v3)\n\n- Power (on, off)\n- Preset modes (auto, silent, favorite, idle, medium, high, strong)\n- Child lock (on, off)\n- LED (on, off)\n- Attributes\n  - `model`\n  - `aqi`\n  - `mode`\n  - `led`\n  - `buzzer`\n  - `child_lock`\n  - `illuminance`\n  - `filter_hours_used`\n  - `filter_life_remaining`\n  - `motor_speed`\n  - `average_aqi`\n  - `volume`\n  - `motor2_speed`\n  - `filter_rfid_product_id`\n  - `filter_rfid_tag`\n  - `filter_type`\n  - `purify_volume`\n  - `learn_mode`\n  - `sleep_time`\n  - `sleep_mode_learn_count`\n  - `extra_features`\n  - `auto_detect`\n  - `use_time`\n  - `button_pressed`\n\n### Air Humidifier (zhimi.humidifier.v1)\n\n- On, Off\n- Preset modes (silent, medium, high, strong)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off), LED brightness (bright, dim, off)\n- Target humidity (30, 40, 50, 60, 70, 80)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `mode`\n  - `buzzer`\n  - `child_lock`\n  - `trans_level`\n  - `target_humidity`\n  - `led_brightness`\n  - `button_pressed`\n  - `use_time`\n  - `hardware_version`\n\n### Air Humidifier CA (zhimi.humidifier.ca1)\n\n- On, Off\n- Preset modes (silent, medium, high, auto)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off), LED brightness (bright, dim, off)\n- Target humidity (30, 40, 50, 60, 70, 80)\n- Dry mode (on, off)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `mode`\n  - `buzzer`\n  - `child_lock`\n  - `trans_level`\n  - `target_humidity`\n  - `led_brightness`\n  - `button_pressed`\n  - `use_time`\n  - `hardware_version`\n  - `motor_speed`\n  - `depth`\n  - `dry`\n\n### Air Humidifier CA4 (zhimi.humidifier.ca4)\n\n- On, Off\n- Preset modes (auto, low, mid, high)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED brightness (off, dim, bright)\n- Target humidity (30 - 80)\n- Dry mode (on, off)\n- Clean mode (on, off)\n- Motor speed rpm (200 - 2000)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `mode`\n  - `buzzer`\n  - `child_lock`\n  - `target_humidity`\n  - `led_brightness`\n  - `use_time`\n  - `actual_speed`\n  - `button_pressed`\n  - `dry`\n  - `fahrenheit`\n  - `motor_speed`\n  - `power_time`\n  - `water_level`\n  - `use_time`\n  - `clean_mode`\n\n### Air Humidifier CB (zhimi.humidifier.cb1)\n\n- On, Off\n- Preset modes (silent, medium, high, auto)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off), LED brightness (bright, dim, off)\n- Target humidity (30, 40, 50, 60, 70, 80)\n- Dry mode (on, off)\n- Attributes\n  - `speed`\n  - `speed_list`\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `mode`\n  - `buzzer`\n  - `child_lock`\n  - `target_humidity`\n  - `led_brightness`\n  - `use_time`\n  - `hardware_version`\n  - `motor_speed`\n  - `depth`\n  - `dry`\n  - `supported_features`\n\n### Zero Fog Humidifier (shuii.humidifier.jsq001)\n\n- Power (on, off)\n- Preset modes (Intelligent, Level1, Level2, Level3, Level4)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off), LED brightness (high, low, off)\n- Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `mode`\n  - `buzzer`\n  - `child_lock`\n  - `led`\n  - `led_brightness`\n  - `no_water`\n  - `lid_opened`\n\n### Air Fresh VA2 and VA4 (zhimi.airfresh.va2, zhimi.airfresh.va4)\n\n- Power (on, off)\n- Preset modes (auto, silent, interval, low, middle, strong)\n- Buzzer (on, off)\n- Child lock (on, off)\n- LED (on, off), LED brightness (bright, dim, off)\n- PTC (on, off) (zhimi.airfresh.va4 only)\n- Attributes\n  - `model`\n  - `aqi`\n  - `average_aqi`\n  - `temperature`\n  - `humidity`\n  - `co2`\n  - `mode`\n  - `led`\n  - `led_brightness`\n  - `buzzer`\n  - `child_lock`\n  - `filter_life_remaining`\n  - `filter_hours_used`\n  - `use_time`\n  - `motor_speed`\n  - `extra_features`\n  - `ptc` (zhimi.airfresh.va4 only)\n  - `ntc_temperature` (zhimi.airfresh.va4 only)\n\n### Mi Fresh Air Ventilator (dmaker.airfresh.t2017, dmaker.airfresh.a1)\n\nThis paragraph was moved to [docs/dmaker-airfresh-t2017.md](docs/dmaker-airfresh-t2017.md).\n\n### Air Humidifier MJJSQ, JSQ1, JSQ5 and JSQS (deerma.humidifier.mjjsq, deerma.humidifier.jsq1, deerma.humidifier.jsq5, deerma.humidifier.jsqs)\n\n* Power (on, off)\n* Preset modes (low, medium, high, humidity)\n* Buzzer (on, off)\n* LED (on, off)\n* Target humidity (0...99)\n* Wet protection (on, off) (deerma.humidifier.jsq1 only)\n* Attributes\n  - `model`\n  - `temperature`\n  - `humidity`\n  - `mode`\n  - `buzzer`\n  - `target_humidity`\n  - `led`\n  - `no_water`\n  - `water_tank_detached`\n  - `wet_protection` (deerma.humidifier.jsq1 only)\n\n### Air Dehumidifier (nwt.derh.wdh318efw1)\n\n* HVAC mode (dry, off)\n* Preset modes (on, auto, dryCloth)\n* Target humidity (40, 50, 60)\n* Fan mode (sleep, low, medium, high, strong)\n* Buzzer (on, off)\n* Child lock (on, off)\n* LED (on, off)\n* Attributes\n  - `model`\n  - `_current_temperature`\n  - `humidity`\n  - `mode`\n  - `buzzer`\n  - `child_lock`\n  - `target_humidity`\n  - `led`\n  - `fan_speed`\n  - `tank_full`\n  - `compressor_status`\n  - `defrost_status`\n  - `fan_st`\n  - `alarm`\n\n\n### Pedestal Fan\n\n* Power (on, off)\n* Preset modes (Level 1, Level 2, Level 3, Level 4)\n* Speed percentage (0...100)\n* Oscillate (on, off)\n* Oscillation angle (30, 60, 90, 120, 140, 150)\n* Natural mode (on, off)\n* Rotate by 5 degrees (left, right)\n* Child lock (on, off)\n* LED brightness (bright, dim, off)\n* Attributes\n  - `model`\n  - `temperature` (zhimi.fan.v2 and v3 only)\n  - `humidity` (zhimi.fan.v2 and v3 only)\n  - `led_brightness`\n  - `buzzer`\n  - `child_lock`\n  - `natural_level`\n  - `oscillate`\n  - `delay_off_countdown`\n  - `speed`\n  - `direct_speed`\n  - `natural_speed`\n  - `angle`\n  - `use_time`\n  - `ac_power`\n  - `battery` (zhimi.fan.v2 and v3 only)\n  - `battery_charge` (zhimi.fan.v2 \u0026 v3 only)\n  - `button_pressed` (zhimi.fan.v2 \u0026 v3 only)\n  - `led` (zhimi.fan.v2 only)\n  - `battery_state` (zhimi.fan.v2 only)\n\n### Rosou SS4 Ventilator (leshow.fan.ss4)\n\n* Power (on, off)\n* Operation modes (manual, sleep, strong, natural)\n* Preset modes (Level 1, Level 2, Level 3, Level 4)\n* Speed percentage (0...100)\n* Oscillate (on, off)\n* Buzzer (on, off)\n* Delayed turn off (minutes)\n\n* Attributes\n  - `model`\n  - `mode`\n  - `speed`\n  - `buzzer`\n  - `oscillate`\n  - `delay_off_countdown`\n  - `error_detected`\n\n\n## Install\n\nYou can install this custom component via [HACS](https://hacs.xyz/). Search for for 'Xiaomi Mi Air Purifier and Xiaomi Mi Air Humidifier Integration' at the integration page of HACS. Alternatively, you can install it manually by copying the custom_compon\nent folder to your Home Assistant configuration folder.\n\nAs next step you have to setup the custom component at your `configuration.yaml`. This custom component doesn't provide a `config-flow` right now. A restart of Home Assistant is required afterwards.\n\n\n## Setup\n\n```yaml\n# configuration.yaml\n\nfan:\n  - platform: xiaomi_miio_airpurifier\n    name: Xiaomi Air Purifier 2\n    host: 192.168.130.71\n    token: b7c4a758c251955d2c24b1d9e41ce47d\n    model: zhimi.airpurifier.m1\n\n  - platform: xiaomi_miio_airpurifier\n    name: Xiaomi Air Purifier Pro\n    host: 192.168.130.73\n    token: 70924d6fa4b2d745185fa4660703a5c0\n    model: zhimi.airpurifier.v6\n\n  - platform: xiaomi_miio_airpurifier\n    name: Xiaomi Air Humidifier\n    host: 192.168.130.72\n    token: 2b00042f7481c7b056c4b410d28f33cf\n    model: zhimi.humidifier.v1\n\n  - platform: xiaomi_miio_airpurifier\n    name: Xiaomi Air Fresh\n    host: 192.168.130.74\n    token: 91d89cf53c4090f4c653174f6737102f\n    model: zhimi.airfresh.va2\n\n  - platform: xiaomi_miio_airpurifier\n    name: Xiaomi Smart Fan\n    host: 192.168.130.75\n    token: b7c4a758c251955d2c24b1d9e41ce4ff\n\nclimate:\n  - platform: xiaomi_miio_airpurifier\n    name: Xiaomi Air Dehumidifier\n    host: 192.168.130.76\n    token: 86c4c41dc7af0e0520e170c8a1f92f62\n```\n\nConfiguration variables:\n- **host** (*Required*): The IP of your light.\n- **token** (*Required*): The API token of your light.\n- **name** (*Optional*): The name of your light.\n- **model** (*Optional*): The model of your device. This setting can be used to bypass the device model detection and is recommended if your device isn't always available.\n\n![Fan device](fan-device.png \"fan device\")\n\n## Template sensor example\n\nIf your entity has another name the value `xiaomi_air_purifier` and `xiaomi_air_humidifier` must be updated.\n\n```\n# configuration.yaml\n\nsensor:\n  - platform: template\n    sensors:\n      airpurifier_aqi:\n        friendly_name: Air Purifier Air Quality Index\n        value_template: '{{ states.fan.xiaomi_air_purifier.attributes.aqi }}'\n        icon_template: mdi:weather-windy\n      airpurifier_temperature:\n        friendly_name: Air Purifier Temperature\n        value_template: '{{ states.fan.xiaomi_air_purifier.attributes.temperature }}'\n        unit_of_measurement: '°C'\n      airpurifier_humidity:\n        friendly_name: Air Purifier Humidity\n        value_template: '{{ states.fan.xiaomi_air_purifier.attributes.humidity }}'\n        unit_of_measurement: '%'\n        icon_template: mdi:water-percent\n\n      airhumidifier_temperature:\n        friendly_name: Air Humidifier Temperature\n        value_template: '{{ states.fan.xiaomi_air_humidifier.attributes.temperature }}'\n        unit_of_measurement: '°C'\n      airhumidifier_humidity:\n        friendly_name: Air Humidifier Humidity\n        value_template: '{{ states.fan.xiaomi_air_humidifier.attributes.humidity }}'\n        unit_of_measurement: '%'\n        icon_template: mdi:water-percent\n```\n\n## Template switch example\n\n```\nswitch:\n  - platform: template\n    switches:\n      xiaomi_airpurifier_child_lock:\n        friendly_name: \"Child lock\"\n        value_template: \"{{ is_state_attr('fan.xiaomi_air_purifier', 'child_lock', True) }}\"\n        turn_on:\n          service: xiaomi_miio_airpurifier.fan_set_child_lock_on\n          data:\n            entity_id: fan.xiaomi_air_purifier\n        turn_off:\n          service: xiaomi_miio_airpurifier.fan_set_child_lock_off\n          data:\n            entity_id: fan.xiaomi_air_purifier\n        icon_template: \"mdi:lock-outline\"\n\n      xiaomi_airpurifier_buzzer:\n        friendly_name: \"Buzzer\"\n        value_template: \"{{ is_state_attr('fan.xiaomi_air_purifier', 'buzzer', True) }}\"\n        turn_on:\n          service: xiaomi_miio_airpurifier.fan_set_buzzer_on\n          data:\n            entity_id: fan.xiaomi_air_purifier\n        turn_off:\n          service: xiaomi_miio_airpurifier.fan_set_buzzer_off\n          data:\n            entity_id: fan.xiaomi_air_purifier\n        icon_template: \"mdi:volume-off\"\n\n      xiaomi_airpurifier_led:\n        friendly_name: \"LED\"\n        value_template: \"{{ is_state_attr('fan.xiaomi_air_purifier', 'led', True) }}\"\n        turn_on:\n          service: xiaomi_miio_airpurifier.fan_set_led_on\n          data:\n            entity_id: fan.xiaomi_air_purifier\n        turn_off:\n          service: xiaomi_miio_airpurifier.fan_set_led_off\n          data:\n            entity_id: fan.xiaomi_air_purifier\n        icon_template: \"mdi:lightbulb-outline\"\n```\n\n![Lovelace entities card](lovelace-entities-card.png \"lovelace entities card\")\n\n## Input select example\n\n```\ninput_select:\n  airpurifier_mode:\n    name: Operation mode\n    options:\n     - Low\n     - Medium\n     - High\n     - Humidity\n\nautomation:\n  - alias: Select operation mode by input select\n    trigger:\n      entity_id: input_select.airpurifier_mode\n      platform: state\n    action:\n      service: fan.set_speed\n      data_template:\n        entity_id: fan.xiaomi_air_purifier\n        speed: '{{ states.input_select.airpurifier_mode.state }}'\n\n  - alias: Monitor operation mode and update input select\n    trigger:\n      platform: state\n      entity_id: fan.xiaomi_air_purifier\n    action:\n      service: input_select.select_option\n      entity_id: input_select.airpurifier_mode\n      data_template:\n        option: '{{ states.fan.xiaomi_air_purifier.attributes.speed }}'\n```\n\n## Input number example\n\n```\nsensor:\n  - platform: template\n    sensors:\n      airpurifier_favorite_level:\n        friendly_name: Favorite level\n        value_template: '{{ states.fan.xiaomi_air_purifier.attributes.favorite_level }}'\n\ninput_number:\n  airpurifier_favorite_level:\n    name: Favorite Level\n    initial: 1\n    min: 0\n    max: 16\n    step: 1\n\nautomation:\n  - alias: Select favorite level by slider\n    trigger:\n      platform: state\n      entity_id: input_number.airpurifier_favorite_level\n    action:\n      - service: xiaomi_miio_airpurifier.fan_set_favorite_level\n        data_template:\n          entity_id: fan.xiaomi_air_purifier\n          level: '{{ states.input_number.airpurifier_favorite_level.state|int }}'\n\n  - alias: Monitor favorite level and update slider\n    trigger:\n      platform: state\n      entity_id: sensor.airpurifier_favorite_level\n    action:\n      service: input_number.set_value\n      entity_id: input_number.airpurifier_favorite_level\n      data_template:\n        value: '{{ states.fan.xiaomi_air_purifier.attributes.favorite_level }}'\n```\n\n![Input number example](input_number.png \"input number example\")\n\nThe following example can be used to setup a `input_numer` entity to control the target humidity of an Air Humidifier. Make sure to replace all occurrences of `fan.xiaomi_air_humidifier` with the `entity_id` of your device.\n\n```\nsensor:\n  - platform: template\n    sensors:\n      airhumidifier_target_humidity:\n        friendly_name: Target humidity\n        value_template: '{{ states.fan.xiaomi_air_humidifier.attributes.target_humidity }}'\n        unit_of_measurement: '%'\n        icon_template: mdi:water-percent\n\ninput_number:\n  airhumidifier_target_humidity:\n    name: Target humidity\n    min: 1\n    max: 99\n    step: 1\n\nautomation:\n  - alias: Select target humidity by slider\n    trigger:\n      platform: state\n      entity_id: input_number.airhumidifier_target_humidity\n    action:\n      - service: xiaomi_miio_airpurifier.fan_set_target_humidity\n        data_template:\n          entity_id: fan.xiaomi_air_humidifier\n          humidity: '{{ states.input_number.airhumidifier_target_humidity.state|int }}'\n\n  - alias: Monitor target humidity and update slider\n    trigger:\n      platform: state\n      entity_id: sensor.airhumidifier_target_humidity\n    action:\n      service: input_number.set_value\n      entity_id: input_number.airhumidifier_target_humidity\n      data_template:\n        value: '{{ states.fan.xiaomi_air_humidifier.attributes.target_humidity }}'\n```\n\n## Debugging\n\nIf the custom component doesn't work out of the box for your device please update your configuration to increase the log level:\n\n```\nlogger:\n  default: warn\n  logs:\n    custom_components.xiaomi_miio_airpurifier: debug\n    miio: debug\n```\n\n## Platform services\n\n#### Service `fan.set_preset_mode`\n\nSet the fan operation/preset mode.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `preset_mode`             |       no | Preset mode. Valid values are `Auto`, `Silent`, `Favorite` and `Idle`. Valid values of the Pedestal Fan are `Level 1`, `Level 2`, `Level 3` and `Level 4`. |\n\n#### Service `fan.set_percentage` (Pedestal Fan only)\n\nSet the fan speed percentage.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `percentage`              |       no | Percentage speed setting. Valid values are between 0 and 100. |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_buzzer_on` (Air Purifier Pro excluded)\n\nTurn the buzzer on.\n\n| Service data attribute    | Optional | Description                                           |\n|---------------------------|----------|-------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.        |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_buzzer_off` (Air Purifier Pro excluded)\n\nTurn the buzzer off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_led_on` (Air Purifier only)\n\nTurn the led on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_led_off` (Air Purifier only)\n\nTurn the led off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_child_lock_on`\n\nTurn the child lock on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_child_lock_off`\n\nTurn the child lock off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier._fan_set_delay_off`\n\nSet the scheduled turn off time. Supported values are 0, 60, 120, 180, 240, 300, 360, 420, 480 minutes. When 0 is passed, delay_off is disabled.\n\n| Service data attribute    | Optional | Description                                                                                                          |\n|---------------------------|----------|----------------------------------------------------------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                                                                       |\n| `delay_off_countdown`     |       no | Time in minutes. Valid values are `0`, `60`, `120`, `180`, `240`, `300`, `240`, `300`, `360`, `420`, `480` minutes.  |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_led_brightness` (Air Purifier Pro excluded)\n\nSet the led brightness. Supported values are 0 (Bright), 1 (Dim), 2 (Off).\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n| `brightness`              |       no | Brightness, between 0 and 2.                            |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_favorite_level` (Air Purifier only)\n\nSet the favorite level of the operation mode \"favorite\".\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n| `level`                   |       no | Level, between 0 and 16.                                |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_auto_detect_on` (Air Purifier Pro only)\n\nTurn the auto detect on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_auto_detect_off` (Air Purifier Pro only)\n\nTurn the auto detect off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_learn_mode_on` (Air Purifier 2 only)\n\nTurn the learn mode on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_learn_mode_off` (Air Purifier 2 only)\n\nTurn the learn mode off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_volume` (Air Purifier Pro only)\n\nSet the sound volume.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n| `volume`                  |       no | Volume, between 0 and 100.                              |\n\n#### Service `xiaomi_miio_airpurifier.fan_reset_filter` (Air Purifier 2 and Air Fresh only)\n\nReset the filter lifetime and usage.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_extra_features` (Air Purifier and Air Fresh only)\n\nSet the extra features.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n| `features`                |       no | Integer, known values are 0 and 1.                      |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_target_humidity` (Air Humidifier only)\n\nSet the target humidity.\n\n| Service data attribute    | Optional | Description                                                     |\n|---------------------------|----------|-----------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                  |\n| `humidity`                |       no | Target humidity. The allowed values varies by model.            |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_dry_on` (Air Humidifier CA only)\n\nTurn the dry mode on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_dry_off` (Air Humidifier CA only)\n\nTurn the dry mode off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `fan.oscillate` (Pedestal Fan only)\n\nOscillates the fan.\n\n| Service data attribute    | Optional | Description                                                           |\n|---------------------------|----------|-----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                        |\n| `oscillating`             |       no | Flag to turn on/off oscillation. Valid values are `True` and `False`. |\n\n#### Service `fan.set_direction` (Pedestal Fan only)\n\nRotates the fan 5 degrees to the left/right.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `direction`               |       no | Rotate the fan 5 degrees. Valid values are `left` and `right`.       |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_oscillation_angle` (Pedestal Fan only)\n\nSet the oscillation angle. Supported values are 30, 60, 90 and 120 degrees.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `angle`                   |       no | Angle in degrees. Valid values are `30`, `60`, `90` and `120`.       |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_natural_mode_on` (Pedestal Fan only)\n\nTurn the natural mode on.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_natural_mode_off` (Pedestal Fan only)\n\nTurn the natural mode off.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n\n### Service `xiaomi_miio_airpurifier.fan_set_motor_speed` (Air Humidifier CA4)\n\nSet motor speed RPM.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `motor_speed`             |       no | Motor speed RPM. Allowed values are between 200 and 2000             |\n\n### Service `xiaomi_miio_airpurifier.fan_set_clean_mode_on` (Air Humidifier CA4)\n\nTurn the clean mode on.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n\n### Service `xiaomi_miio_airpurifier.fan_set_clean_mode_off` (Air Humidifier CA4)\n\nTurn the clean mode off.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_fan_level` (Air Purifier 3H only)\n\nSet the level when on fan mode.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `level`                   |       no | Valid values are `1`, `2` and `3`.                                   |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_ptc_on` (Air Fresh VA4 and T2017 only)\n\nTurn the ptc on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_ptc_off` (Air Fresh VA4 and T2017 only)\n\nTurn the ptc off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_favorite_speed` (Air Fresh T2017 only)\n\nSet the favorite speed.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `speed`                   |       no | Volume, between 60 and 300.                                          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_ptc_level` (Air Fresh T2017 only)\n\nSet the ptc level.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `level`                   |       no | PTC level. Valid values are `Low`, `Medium`, `High`.                 |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_display_orientation` (Air Fresh T2017 only)\n\nSet the display orientation.\n\n| Service data attribute    | Optional | Description                                                          |\n|---------------------------|----------|----------------------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.                       |\n| `display_orientation`             |       no | Display orientation. Valid values are `Portrait`, `LandscapeLeft` and `LandscapeRight`.  |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_display_on` (Air Fresh T2017 only)\n\nTurn the display on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_display_off` (Air Fresh T2017 only)\n\nTurn the display off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_wet_protection_on` (deerma.humidifier.jsq1 only)\n\nTurn the wet protection on.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n\n#### Service `xiaomi_miio_airpurifier.fan_set_wet_protection_on` (deerma.humidifier.jsq1 only)\n\nTurn the wet protection off.\n\n| Service data attribute    | Optional | Description                                             |\n|---------------------------|----------|---------------------------------------------------------|\n| `entity_id`               |       no | Only act on a specific Xiaomi miIO fan entity.          |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyssi%2Fxiaomi_airpurifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsyssi%2Fxiaomi_airpurifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsyssi%2Fxiaomi_airpurifier/lists"}