Unable to turn accessory on/off from the home screen of the Home app
Describe the bug
This issue happens for only 2 of the Xiaomi devices I normally use, namely for: yeelink.light.lamp1 and xiaomi.humidifier.3lite.
On the home screen of the Apple Home app, I clearly see the devices, and their status (let's say it's OFF to begin with). If I tap on the device's icon (in order to turn it on), nothing happens, and the status remains as is. If I tap on the device's card to open the device details, it shows me the details of the device:
yeelink.light.lamp1: I see a slider that I can use to control the brightness, I see the state of all the device's accessories (for example 8 Off), and I see buttons for selecting the lamp's color. If I move the brightness slider, or use any of the buttons for selecting a color, the lamp will turn on and the new state will be correctly reflected here, and on the home screen of the Home app.
If I go back to the home screen and try tapping on the device's icon to turn it OFF (since it's ON now), nothing happens. So basically the only way to manipulate a device is by opening the device details screen.
However, if I open the device settings screen, at the top I get the "This accessory is not responding." message. On this screen, I can also see the number of accessories for this device (in my case it's 8). If I the screen where all of them are listed, only the one that is responsible for toggling the device ON/OFF is working (if tapped), and all the remaining (7) ones show "No Response".
xiaomi.humidifier.3lite: I see a slider that I can use to control the humidity, and I see a picker wheel with 2 options (Humidify and Off). The only option to turn on the device is by selecting the "Humidify" option in the picker, after which the device will turn on, and the correct state will be reflected here, and on the home screen of the Home app.
If I go back to the home screen and try tapping on the device's icon to turn it OFF (since it's ON now), nothing happens. So basically the only way to manipulate a device is by opening the device details screen.
However, if I open the device settings screen, at the top I get the "This accessory is not responding." message. On this screen, I can also see the number of accessories for this device (in my case it's 3). If I the screen where all of them are listed, the one that is responsible for toggling the device ON/OFF is working (if tapped), and I can the one that shows the current humidity level works as expected, the remaining one (it's called Screen, and funny enough, it should not even be displayed as I have it set to false in my config), shows "No Response".
It might be worth mentioning that if any of the devices is turned on/off, or specific settings of the device are adjusted using the Mi Home app, the correct state will be reflected in the Apple Home app (on every screen - home, device details, etc.).
I would also like to add that I am aware that only yeelink.light.lamp1 is listed in the supported devices list, but I know for a fact that both devices (including xiaomi.humidifier.3lite) worked for me (occasionally this same thing would happen to me, but usually restarting the plugin would resolve the issue), until they recently (maybe a month ago) they stopped, and no matter what I try, I cannot get them to work - specifically from the home screen of the Home app.
Expected behavior It is expected that the device's state can be controlled by tapping their icon on the home screen of the Home app.
Your config.json
{
"devices": [
{
"name": "Desk Lamp",
"ip": "192.168.2.41",
"token": "", // redacted for security reasons
"deviceId": "", // redacted for security reasons
"model": "yeelink.light.lamp1",
"pollingInterval": 10,
"deepDebugLog": true,
"silentLog": false,
"deviceEnabled": true,
"micloud": {
"username": "", // redacted for security reasons
"password": "", // redacted for security reasons
"country": "", // redacted for security reasons
"forceMiCloud": true
},
"onlyMainService": true,
"buzzerControl": false,
"ledControl": false,
"childLockControl": false,
"modeControl": false
},
{
"name": "Humidifier",
"ip": "192.168.2.100",
"token": "", // redacted for security reasons
"deviceId": "", // redacted for security reasons
"model": "xiaomi.humidifier.3lite",
"pollingInterval": 10,
"deepDebugLog": true,
"silentLog": false,
"deviceEnabled": true,
"micloud": {
"username": "", // redacted for security reasons
"password": "", // redacted for security reasons
"country": "", // redacted for security reasons
"forceMiCloud": true
},
"customAccessory": false,
"onlyMainService": false,
"buzzerControl": false,
"ledControl": false,
"childLockControl": false,
"modeControl": false,
"suppressAutoServiceCreation": [
"illumination"
],
"screenControl": false
}
],
"_bridge": {
"username": "", // redacted for security reasons
"port": 34376
},
"platform": "miot"
}
Debug log
[6/21/2025, 3:44:17 PM] Registering platform 'homebridge-miot.miot'
[6/21/2025, 3:44:17 PM] [homebridge-miot] Loaded homebridge-miot v1.7.6 child bridge successfully
[6/21/2025, 3:44:17 PM] Loaded 4 cached accessories from cachedAccessories.0E874FEF8B35.
[6/21/2025, 3:44:17 PM] [homebridge-miot] Initializing devices
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Got device configuration, initializing device with name: Desk Lamp
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Air Purifier] Got device configuration, initializing device with name: Air Purifier
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Humidifier] Got device configuration, initializing device with name: Humidifier
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Humidifier] Got device configuration, initializing device with name: Humidifier
[6/21/2025, 3:44:17 PM] Homebridge v1.10.0 (HAP v0.13.1) (homebridge-miot) is running on port 34376.
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Model known: yeelink.light.lamp1!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Initializing device!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Air Purifier] Model known: zhimi.airp.mb5a!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Air Purifier] Initializing device!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Humidifier] Model known: deerma.humidifier.jsq2w!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Humidifier] Initializing device!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Humidifier] Model known: xiaomi.humidifier.3lite!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Humidifier] Initializing device!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Initializing device services
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Device services: [
"light",
"light-extension"
]
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Initializing device properties
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Device properties: [
"light:on",
"light:brightness",
"light:color-temperature",
"light:mode",
"light-extension:brightness-delta",
"light-extension:ct-delta",
"light-extension:ct-adjust-alexa"
]
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Initializing device actions
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Device actions: [
"light:toggle"
]
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Successfully created a Light device! It is a Xiaomi Mi Desk Lamp.
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Initializing accessory!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Accessory successfully initialized!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Registering 1 accessories!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Everything looks good! Initiating property polling!
[6/21/2025, 3:44:17 PM] [homebridge-miot] [Desk Lamp] Log in to MiCloud!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Using module class for device type AirPurifier, indentified by miot spec! Not all features might work!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Initializing device services
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Device services: [
"air-purifier",
"environment",
"filter",
"alarm",
"physical-controls-locked",
"screen",
"device-display-unit",
"custom-service",
"filter-time",
"aqi",
"rfid"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Initializing device properties
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Device properties: [
"air-purifier:on",
"air-purifier:fault",
"air-purifier:mode",
"air-purifier:fan-level",
"air-purifier:anion",
"environment:relative-humidity",
"environment:pm2.5-density",
"environment:temperature",
"filter:filter-life-level",
"filter:filter-used-time",
"filter:filter-left-time",
"alarm:alarm",
"physical-controls-locked:physical-controls-locked",
"screen:brightness",
"device-display-unit:temperature-display-unit",
"custom-service:moto-speed-rpm",
"custom-service:favorite-speed",
"custom-service:motor-set-speed",
"custom-service:favorite-level",
"custom-service:buttom-door",
"custom-service:reboot-cause",
"custom-service:manual-level",
"custom-service:country-code",
"custom-service:iic-error-count",
"filter-time:filter-used-debug",
"aqi:purify-volume",
"aqi:average-aqi",
"aqi:aqi-state",
"aqi:aqi-updata-heartbeat",
"rfid:rfid-tag",
"rfid:rfid-factory-id",
"rfid:rfid-product-id",
"rfid:rfid-time",
"rfid:rfid-serial-num"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Initializing device actions
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Device actions: [
"air-purifier:toggle",
"filter:reset-filter-life",
"custom-service:toggle-mode",
"custom-service:toggle-fan-leve"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Successfully created a AirPurifier device! It is a Unknown air purifier device.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Initializing accessory!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Accessory successfully initialized!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Registering 1 accessories!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Everything looks good! Initiating property polling!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Event with name custom:overwet-protect already exists. Not creating!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Event with name custom:overtop-humidity already exists. Not creating!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Using module class for device type Humidifier, indentified by miot spec! Not all features might work!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing device services
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Device services: [
"humidifier",
"environment",
"alarm",
"indicator-light",
"custom"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing device properties
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Device properties: [
"humidifier:on",
"humidifier:fault",
"humidifier:fan-level",
"humidifier:target-humidity",
"humidifier:status",
"humidifier:mode",
"environment:relative-humidity",
"environment:temperature",
"alarm:alarm",
"indicator-light:on",
"custom:the-tank-filed",
"custom:water-shortage-fault",
"custom:humi-sensor-fault",
"custom:temp-sensor-fault",
"custom:overwet-protect",
"custom:overwet-protect-on",
"custom:overtop-humidity"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing device actions
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Device actions: [
"humidifier:toggle"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Successfully created a Humidifier device! It is a Unknown humidifier device.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing accessory!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Accessory successfully initialized!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Registering 1 accessories!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Everything looks good! Initiating property polling!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Using module class for device type Humidifier, indentified by miot spec! Not all features might work!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing device services
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Device services: [
"humidifier",
"environment",
"filter",
"screen",
"alarm",
"physical-controls-locked",
"delay",
"dm-service"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing device properties
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Device properties: [
"humidifier:on",
"humidifier:mode",
"humidifier:target-humidity",
"humidifier:fault",
"humidifier:automatic-air-drying",
"humidifier:air-dry-remain-time",
"humidifier:overwet-protect",
"environment:relative-humidity",
"filter:filter-life-level",
"screen:on",
"screen:brightness",
"alarm:alarm",
"physical-controls-locked:physical-controls-locked",
"delay:delay",
"delay:delay-time",
"delay:delay-remain-time",
"dm-service:clean-time",
"dm-service:set-filter-level"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing device actions
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Device actions: [
"humidifier:toggle",
"filter:reset-filter-life",
"dm-service:loop-mode"
]
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Successfully created a Humidifier device! It is a Unknown humidifier device.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Initializing accessory!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Accessory successfully initialized!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Registering 1 accessories!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Everything looks good! Initiating property polling!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Log in to MiCloud!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Device found! Setting up miot device from local connection!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Connected to device: zhimi.airp.mb5a
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Doing initial property fetch.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Device found! Setting up miot device from local connection!
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Connected to device: deerma.humidifier.jsq2w
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Doing initial property fetch.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Humidifier] Starting property polling.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Filter life level: 29%.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Filter used time: 5032 hours.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Filter left time: 82 hours.
[6/21/2025, 3:44:18 PM] [homebridge-miot] [Air Purifier] Starting property polling.
[6/21/2025, 3:44:20 PM] [homebridge-miot] [Desk Lamp] Successfully connected to MiCloud! Setting up miot device from MiCloud connection!
[6/21/2025, 3:44:20 PM] [homebridge-miot] [Desk Lamp] Connected to device: yeelink.light.lamp1
[6/21/2025, 3:44:20 PM] [homebridge-miot] [Desk Lamp] Doing initial property fetch.
[6/21/2025, 3:44:20 PM] [homebridge-miot] [Desk Lamp] Starting property polling.
[6/21/2025, 3:44:20 PM] [homebridge-miot] [Humidifier] Successfully connected to MiCloud! Setting up miot device from MiCloud connection!
[6/21/2025, 3:44:20 PM] [homebridge-miot] [Humidifier] Connected to device: xiaomi.humidifier.3lite
[6/21/2025, 3:44:20 PM] [homebridge-miot] [Humidifier] Doing initial property fetch.
[6/21/2025, 3:44:21 PM] [homebridge-miot] [Humidifier] Starting property polling.
Screenshots
Additional context
Not sure if it might be relevant as other Xiaomi devices work without issues, but my Node.js version is v20.15.0.
Thank you @merdok for your awesome work on this plugin and for looking into this! Much appreciated!
In case you need more details, please let me know.
Best regards, Sasho
Can you please post a debug log from the point where you try to control the device and nothing happens or no response comes up?
@merdok nothing gets logged when I try controlling one of the devices by tapping its icon on the home screen of the Home app.
On the other hand, if I open the details screen for the device (for example for my Desk Lamp), and I set the color using one of the presets, this gets logged:
[Desk Lamp] Successfully set property light:color-temperature to value 3300! Response: [{"did":"119468700","iid":"0.2.3","siid":2,"piid":3,"code":0,"exe_time":0}]
[6/21/2025, 5:06:25 PM] [homebridge-miot] [Desk Lamp] Property light:color-temperature value changed to ---> 3300
Hmmm i just had a look and it seems for that it should work correctly, i am not sure where the problem exactly is. At least i do not see any obvious things which are broken....
I just updated my Node.js version to v22.16.0 and the issue still persists.
Is there anything else I could provide to help you debug this issue further? Please let me know! Thanks!
During my testing with mocked devices, everything seemed to be fine. Without the actual devices i can not do any further debugging...
@merdok Could this issue have something to do with the onlyMainService flag? It seems like when this one is set to true the issue appears. Now I've set it to false, making my config the following:
{
"name": "Desk Lamp",
"ip": "192.168.2.41",
"token": "", // redacted
"deviceId": "", // redacted
"model": "yeelink.light.lamp1",
"pollingInterval": 10,
"deepDebugLog": false,
"silentLog": false,
"deviceEnabled": true,
"micloud": {
"username": "", // redacted
"password": "", // redacted
"country": "de",
"forceMiCloud": false
},
"onlyMainService": false,
"buzzerControl": false,
"ledControl": false,
"childLockControl": false,
"modeControl": false
}
and it seems to be working as expected now.
I mean possibly. onlyMainService removes all other services and only tries to use the device's main service which in some cases might now work correctly due to the amount of devices currently in the wild and the various variations of controlling them...