gitextract_j6yld1qx/ ├── .github/ │ ├── FUNDING.yml │ └── ISSUE_TEMPLATE/ │ └── new-device.md ├── .gitignore ├── .homeychangelog.json ├── .homeycompose/ │ ├── app.json │ ├── capabilities/ │ │ ├── airfryer_careli_food_quantity.json │ │ ├── airfryer_careli_mode.json │ │ ├── airfryer_careli_target_temperature.json │ │ ├── airfryer_careli_target_time.json │ │ ├── airpurifier_heater_mode.json │ │ ├── airpurifier_mode.json │ │ ├── airpurifier_xiaomi_fanlevel.json │ │ ├── airpurifier_zhimi_airfresh_mode.json │ │ ├── airpurifier_zhimi_airpurifier_mb3_mode.json │ │ ├── airpurifier_zhimi_fanlevel.json │ │ ├── airpurifier_zhimi_mode.json │ │ ├── alarm_desiccant_low.json │ │ ├── alarm_filter_work_time.json │ │ ├── alarm_main_brush_work_time.json │ │ ├── alarm_sensor_dirty_time.json │ │ ├── alarm_side_brush_work_time.json │ │ ├── alarm_water_shortage.json │ │ ├── dehumidifier_dmaker_mode.json │ │ ├── diffuser_xwhzp_fragrance_out_time.json │ │ ├── diffuser_xwhzp_mode.json │ │ ├── fan_dmaker_mode.json │ │ ├── fan_zhimi_angle.json │ │ ├── fan_zhimi_mode.json │ │ ├── heater_zhimi_heater_target_temperature.json │ │ ├── heater_zhimi_heatlevel.json │ │ ├── heater_zhimi_oscillation.json │ │ ├── humidifier2_mode.json │ │ ├── humidifier_deerma_jsq_mode.json │ │ ├── humidifier_leshow_jsq1_mode.json │ │ ├── humidifier_water_level_state.json │ │ ├── humidifier_xiaomi_mode.json │ │ ├── humidifier_zhimi_mode.json │ │ ├── humidifier_zhimi_mode_miot.json │ │ ├── measure_desiccant.json │ │ ├── measure_desiccant_time.json │ │ ├── measure_filter_days_left.json │ │ ├── measure_filter_life.json │ │ ├── measure_gas_density.json │ │ ├── measure_smoke_density.json │ │ ├── measure_target_humidity.json │ │ ├── measure_tvoc.json │ │ ├── measure_waterlevel.json │ │ ├── petfeeder_busy.json │ │ ├── petfeeder_eaten_food_today.json │ │ ├── petfeeder_eaten_food_total.json │ │ ├── petfeeder_food_in_bowl.json │ │ ├── petfeeder_food_out_progress.json │ │ ├── petfeeder_food_out_status.json │ │ ├── petfeeder_foodlevel.json │ │ ├── petfeeder_heap_status.json │ │ ├── petfeeder_schedule_progress.json │ │ ├── petfeeder_status_mode.json │ │ ├── petwaterdispenser_mmgg_mode.json │ │ ├── petwaterdispenser_mmgg_mode_3.json │ │ ├── vacuum_dreame_fanspeed.json │ │ ├── vacuum_dreame_mop_intensity.json │ │ ├── vacuum_roborock_fanspeed.json │ │ ├── vacuum_roborock_mop_intensity.json │ │ ├── vacuum_roidmi_fanspeed.json │ │ ├── vacuum_roidmi_mop_mode.json │ │ ├── vacuum_roidmi_waterlevel.json │ │ ├── vacuum_viomi_mop_mode.json │ │ ├── vacuum_xiaomi_carpet_mode_max.json │ │ ├── vacuum_xiaomi_cleaning_mode_max.json │ │ ├── vacuum_xiaomi_detergent_left_level.json │ │ ├── vacuum_xiaomi_dust_bag_left_level.json │ │ ├── vacuum_xiaomi_mop_mode.json │ │ ├── vacuum_xiaomi_mop_mode_max.json │ │ ├── vacuum_xiaomi_path_mode_max.json │ │ ├── vacuum_xiaomi_status.json │ │ ├── vacuum_xiaomi_water_level_max.json │ │ └── yeelight_ceil43_mode.json │ ├── drivers/ │ │ ├── pair/ │ │ │ ├── add_device/ │ │ │ │ └── index.html │ │ │ ├── pair/ │ │ │ │ └── index.html │ │ │ └── start/ │ │ │ └── index.html │ │ ├── settings/ │ │ │ ├── address.json │ │ │ ├── deviceSid.json │ │ │ ├── gatewaySid.json │ │ │ ├── model.json │ │ │ ├── modelCode.json │ │ │ ├── polling.json │ │ │ └── token.json │ │ └── templates/ │ │ ├── defaults.json │ │ └── defaults_subdevice.json │ └── flow/ │ ├── actions/ │ │ ├── airpurifierSetFavorite.json │ │ ├── airpurifierXiaomiFanlevel.json │ │ ├── airpurifierZhimiFanlevel.json │ │ ├── airpurifierZhimiMode.json │ │ ├── changeSpeed.json │ │ ├── cleanZoneVacuum.json │ │ ├── enableAngle.json │ │ ├── enableBuzzer.json │ │ ├── enableChildLock.json │ │ ├── enableEyecare.json │ │ ├── enableLED.json │ │ ├── fanDmakerMode.json │ │ ├── fanPowerVacuum.json │ │ ├── fanZhimiMode.json │ │ ├── findVacuum.json │ │ ├── gateway_custom_radio.json │ │ ├── gateway_play_effect.json │ │ ├── gateway_play_radio.json │ │ ├── gateway_set_volume.json │ │ ├── goToTargetVacuum.json │ │ ├── heaterZhimiHeatlevel.json │ │ ├── heaterZhimiOscillation.json │ │ ├── heaterZhimiTargetTemperature.json │ │ ├── humidifierXiaomiMode.json │ │ ├── humidifierZhimiMode.json │ │ ├── humidifierZhimiModeMIoT.json │ │ ├── ledAirpurifierHumidifier.json │ │ ├── leftSwitchOff.json │ │ ├── leftSwitchOn.json │ │ ├── leftSwitchToggle.json │ │ ├── modeAirpurifier.json │ │ ├── modeAirpurifierV7.json │ │ ├── modeDehumidifierDmaker.json │ │ ├── modeDiffuserXwhzp.json │ │ ├── modeDmakerFan.json │ │ ├── modeEyecare.json │ │ ├── modeHumidifierDeerma.json │ │ ├── modeHumidifierLeshowJSQ1.json │ │ ├── modeVacuumMop.json │ │ ├── modeZhimiAirfresh.json │ │ ├── petfeederCalibrate.json │ │ ├── petfeederDisplaySchedule.json │ │ ├── petfeederServeFood.json │ │ ├── petwaterdispenserMmggMode.json │ │ ├── petwaterdispenserMmggMode_Xiaomi.json │ │ ├── remote_send_ir_code.json │ │ ├── rightSwitchOff.json │ │ ├── rightSwitchOn.json │ │ ├── rightSwitchToggle.json │ │ ├── rotateLeftStep.json │ │ ├── rotateRightStep.json │ │ ├── setAngle.json │ │ ├── vacuumDreameFanspeed.json │ │ ├── vacuumDreameMopIntensity.json │ │ ├── vacuumRoborockFanspeed.json │ │ ├── vacuumRoborockMopIntensity.json │ │ ├── vacuumRoborockMopVacuumMode.json │ │ ├── vacuumRoborockPause.json │ │ ├── vacuumRoidmiFanspeed.json │ │ ├── vacuumRoidmiMopMode.json │ │ ├── vacuumRoomCleaning.json │ │ ├── vacuumRoomCleaningRepeats.json │ │ └── vacuumXiaomiMopMode.json │ ├── conditions/ │ │ ├── leftSwitch.json │ │ ├── measure_humidity_between.json │ │ ├── measure_temperature_between.json │ │ └── rightSwitch.json │ └── triggers/ │ ├── alertVacuum.json │ ├── alert_cube.json │ ├── click_double.json │ ├── click_double_left.json │ ├── click_double_right.json │ ├── click_long.json │ ├── click_long_left.json │ ├── click_long_release.json │ ├── click_long_right.json │ ├── click_single.json │ ├── click_single_left.json │ ├── click_single_left_right.json │ ├── click_single_right.json │ ├── cubeRotated.json │ ├── desiccant_low.json │ ├── eaten_food_changed.json │ ├── feeder_status_changed.json │ ├── flip180_cube.json │ ├── flip90_cube.json │ ├── free_fall_cube.json │ ├── gatewayLuminance.json │ ├── humidifier2Waterlevel.json │ ├── leftSwitchOff.json │ ├── leftSwitchOn.json │ ├── lockEvent.json │ ├── motionSensorNoMotion120.json │ ├── motionSensorNoMotion1200.json │ ├── motionSensorNoMotion180.json │ ├── motionSensorNoMotion1800.json │ ├── motionSensorNoMotion300.json │ ├── motionSensorNoMotion600.json │ ├── move_cube.json │ ├── rightSwitchOff.json │ ├── rightSwitchOn.json │ ├── rotate_negative_cube.json │ ├── rotate_positive_cube.json │ ├── shake.json │ ├── shake_air_cube.json │ ├── statusVacuum.json │ ├── tap_twice_cube.json │ ├── triggerModeChanged.json │ ├── triggerPlugInUse.json │ ├── triggerVacuumRoomSegments.json │ ├── triggerVibrationFreeFallAlarm.json │ └── triggerVibrationTiltAlarm.json ├── .homeyignore ├── .prettierrc ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.da.txt ├── README.de.txt ├── README.es.txt ├── README.fr.txt ├── README.it.txt ├── README.ko.txt ├── README.md ├── README.nl.txt ├── README.no.txt ├── README.pl.txt ├── README.ru.txt ├── README.sv.txt ├── README.txt ├── api.js ├── app.js ├── app.json ├── docs/ │ ├── mirobot_zonecleanup.md │ └── obtain_token.md ├── drivers/ │ ├── airfresh_zhimi_airfresh/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── airfresh_zhimi_airfresh_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── airfryer_careli_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── airmonitor_cgllc_zhimi_airmonitor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── airpurifier_dmaker_airfresh_t2017/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── airpurifier_zhimi_advanced/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── airpurifier_zhimi_advanced_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── aqara-86sw1-advanced/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-86sw2-advanced/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-button/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-button-advanced/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-ctrl-ln1/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-ctrl-ln2/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-ctrl-neutral1/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-ctrl-neutral2/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-curtain/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-curtain-aq2/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-magnet-sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-motion-sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-temperature-humidity-sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara-wleak-sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara_86sw1_switch/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── aqara_86sw2_switch/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── clothesdryer_hyd_airer_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── ctrl_86plug_aq1/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── dehumidifier_dmaker_derh_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── diffuser_xwhzp_diffuser_xwxfj/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── dmaker-fan/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── fan_dmaker_advanced/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── fan_zhimi_advanced/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── fan_zhimi_fan_za5/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── gateway/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── heater_zhimi_heater_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── humidifier_deerma_humidifier_jsq/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── humidifier_deerma_humidifier_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── humidifier_leshow_humidifier_jsq1/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── humidifier_xiaomi_humidifier/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── humidifier_zhimi_humidifier/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── humidifier_zhimi_humidifier_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── lock_aq1/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── mi-airpurifier/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── mi-aqara-cube/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── mi-button/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── mi-humidifier/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── mi-humidifier2/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── mi-magnet-sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── mi-motion-sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── mi-plug/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── mi-power-plug/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── mi-power-strip/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── mi-robot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── mi-temperature-humidity-sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── natgas_sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── pet_waterer_xiaomi/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── petfeeder_mmgg_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── petwaterdispenser_mmgg_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── philips-bulb/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── philips-eyecare/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── philips_light_cbulb/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── philips_light_moonlight/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── philips_light_strip/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── plug_chuangmi_plug_m1/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── plug_chuangmi_plug_v1_v3/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── plug_cuco_plug/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── powerstrip_qmi_powerstrip_v1/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── relay_c2acn01/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── remote_chuangmi_remote_v2/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── capabilities.js │ │ ├── deviceCharacteristics.html │ │ ├── deviceTypes.html │ │ ├── devices.html │ │ ├── done.html │ │ └── keys.html │ ├── smoke_sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── subdevice_device.js │ ├── subdevice_driver.js │ ├── vacuum_dreame_vacuum/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── vacuum_mi_rockrobo_vacuum_advanced/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── vacuum_mija_vacuum_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── vacuum_roidmi_vacuum_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── vacuum_viomi_vacuum_v7/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── vacuum_xiaomi_vacuum_max/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.flow.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── vacuum_xiaomi_vacuum_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ ├── vibration_sensor/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ └── driver.settings.compose.json │ ├── wifi_device.js │ ├── wifi_driver.js │ ├── yeelink_light_ceil43_miot/ │ │ ├── device.js │ │ ├── driver.compose.json │ │ ├── driver.js │ │ ├── driver.settings.compose.json │ │ └── pair/ │ │ ├── add_device.html │ │ ├── pair.html │ │ └── start.html │ └── zhimi-fan/ │ ├── device.js │ ├── driver.compose.json │ ├── driver.js │ ├── driver.settings.compose.json │ └── pair/ │ ├── add_device.html │ ├── pair.html │ └── start.html ├── lib/ │ ├── MiHub.js │ └── util.js ├── locales/ │ ├── da.json │ ├── de.json │ ├── en.json │ ├── es.json │ ├── fr.json │ ├── it.json │ ├── ko.json │ ├── nl.json │ ├── no.json │ ├── pl.json │ ├── ru.json │ └── sv.json ├── package.json ├── settings/ │ └── index.html └── tsconfig.json