Xiaomi Smoke Detector one activates all: how?

I am using some Xiaomi gadgets and they work fine after setting it up.

What I want to do now, is to use the Smoke Alarm (the sound that comes directly from the detector) for other events. For example if one detector detects smoke, then all the other smoke detectors shall also tripp off. Other exampe, if the water alarm is triggered, then all smoke detectors shall send alarm sound.

I thought I can do so by switching the “item smoke detetcor” to on. I tried by switching one detector on in basic UI but nothing happened. I got the following failure message in the log though:

2020-01-30 13:46:36.880 [WARN ] [rnal.handler.XiaomiSensorBaseHandler] - Cannot execute command - Sensors by definition only have read only channels

Any Ideas? Possible to change the channel into read and write? Maybe @pboos? Thank you

If it’s read only then create a proxy item and have it as a switch that can be used in a rule.
Maybe a profile, check the docs here https://www.openhab.org/docs/configuration/items.html#profiles

Given that message the answer is “cannot be done.” This is a limitation for how Xiaomi built the smoke detector. You can’t trigger the alarm from OH, or if you can, you can’t do it through that Channel. I don’t know how these devices work, but there may be something you can set to cause the alarms to talk to each other so when one goes off the rest go off. With Zwave this would be a command group parameter set on the device itself.

Thank you. That´s a pitty. That was one of the main reasons to make my home smart. I´ll consider devices from a different brand. Otherwise I´ll share the solution, if any.

You can look at getting a separate alarm siren that works on whatever voltage you have and use a relay that OH connects to for making a noise.

The alarm above is cheap (I have a few of these) and you can use something like a sonoff basic or ESP8266 with mqtt to trigger it with OH.

Thank you for the input. I´ll consider it and the maybe hide it on top of the wardrobe or something.

Meanwhile I flashed my second gateway and while it is still connected with UART I connected a smoke detector. Thereafter I send a “Test Alert” from the Xiaomi App to the Detector which then creates a “beep” on the detector. So the gateway is able to send commands to the detector. It´s a question of how, I guess. Here is what I tracked with putty. Maybe someone has more expertise and can use it and in future solve the problem. I replaced my device ID with “MYDEVICEID”


01-31 22:59:50.431
01-31 22:59:50.441




##SmokeGas write,time=1444263
=eSL_WriteMessage= t=0110,l=19,data= 07 1d 56 01 01 05 00 00 01 11 5f 01 23 ff f1 03 01 00 00

LOG:write u8Status=0
=recv zigbee message:Free=167624 ,t=9f96;l=5;data= 00 21 01 10 05
=eSL_WriteMessage= t=0010,l=0,data=
=eSL_WriteMessage= t=9f0a,l=0,data=
=recv zigbee message:Free=167872 ,t=8010;l=6;data= 56 31 2e 35 38 00
=recv zigbee message:Free=167872 ,t=8000;l=5;data= 00 00 00 10 00
=recv zigbee message:Free=167872 ,t=9f8a;l=1;data= 1f
zigbee temperature is:31
=recv zigbee message:Free=167872 ,t=8000;l=5;data= 00 00 9f 0a 00


##SmokeGas write,time=1450284
=eSL_WriteMessage= t=0110,l=19,data= 07 1d 56 01 01 05 00 00 01 11 5f 01 23 ff f1 03 01 00 00

LOG:write u8Status=0
=recv zigbee message:Free=168120 ,t=9f96;l=5;data= 00 22 01 10 06
=recv zigbee message:Free=168120 ,t=8702;l=7;data= f0 21 01 01 02 1d 56
=recv zigbee message:Free=168120 ,t=8110;l=8;data= 06 22 1d 56 05 00 01 00
01-31 23:00:07.070


01-31 23:00:13.621
01-31 23:00:13.630

##SmokeGas write,time=1463304
=eSL_WriteMessage= t=0110,l=19,data= 07 1d 56 01 01 05 00 00 01 11 5f 01 23 ff f1 03 01 00 00

LOG:write u8Status=0
=recv zigbee message:Free=167352 ,t=9f96;l=5;data= 00 23 01 10 07