Closed Frank-D-HB closed 2 years ago
@robertsLando I might need you for the HA -> MQTT part once we've figured out what to send here.
@Frank-D-HB both devices identify the same, so I'm not sure why there are different descriptions in their manuals. Nonetheless, this should allow you to send the notification reports mentioned in the MT02758 manual.
For example, the payload for the Door chime would be (remove the //
s and everything after it in each line)
{
"args": [
{
"nodeId": 23, // <- your node ID here
"commandClass": 113
},
"sendReport",
[
{
"notificationType": 6, // <- notification type from the first column, converted from hexadecimal (0x06) to decimal (6)
"notificationEvent": 22 // <- notification event from the second column, converted from hexadecimal (0x16) to decimal (22)
}
]
]
}
Notification type and event are taken from
Note that they are in hexadecimal and have to be converted to decimal here. There are plently of calculators that can do that if you're not able to.
You're not seeing specific controls for this in the UI because the devices are using Z-Wave features in a non-standard way. There is a specific CC for Sirens/Sound but for some reason they are not using them.
Thank you for all the support - i will try to implement the workaround as described. I contacted the origin device designer (in Taiwan) of that siren and ask him "Why did you realised that device in a such "complicated" manner?" Now i understand the idea/clue behind that siren device design. The designer of that siren expect a) in the case of burglar activities, that their first step of "work" will be disconnecting the building from electric power b) that the most fires are motivated by defect electric devices, which will also lead to the loss of elektric power, and c) that the loss of electric power will shutdown the most of the zwave-controlers. The clue of that siren device design is, that it is able to "act" independendly of electric power (battery backup) and of a controler, by "listening" to that "notification reports", which will/should send out by battery powered devices like smoke detectors, door/window detectors, despite of the absence of an acting controler.
The clue of that siren device design is, that it is able to "act" independendly of electric power (battery backup) and of a controler, by "listening" to that "notification reports", which will/should send out by battery powered devices like smoke detectors, door/window detectors, despite of the absence of an acting controler.
Ok, I get that. But implementing the Sound Switch CC for easily using the device in non-emergency situations, which should be more common, seems like a no-brainer to me. 🤷🏻♂️
@AlCalzone : After contacting the origin device designer again, and submitting him your hint about "Sound Switch CC", he replies to me (suprise!): He totaly agrees with your statement, but the design of that device begun in 2014 and the "Sound Switch CC" was (stable) specified in 2016. On my question "There is the ability of "firmware update". Is that functionality not exactly for such changes designed?" He replies: devlopement is stopped on that device, may be some oems do. And he isnt still working for that company". :-( So it seems that i bought old rubbish?!? :-( Means "seems like a no-brainer to you", that you are able to implement the "Sound Switch CC" to that device(s)? ;-)
that you are able to implement the "Sound Switch CC" to that device(s)?
That's not possible without having the firmware sources etc... With no-brainer I meant using Sound Switch CC
from the get-go, but if it was only standardized 2 years after the development, that makes sense that they don't have it.
So it seems that i bought old rubbish?
Seems so :(
The workaround solution is implemented and tested :-): MT02758_PH-PSE02_playsound_scripts.zip see 0_README.txt in the zip-file. Now it is possible to trigger each individual sound by executing one of the scripts.
@robertsLando , @AlCalzone : What comes next? (keep in mind, that was my first issue and my first published peace of code). Closing the issue? Where to place the the scripts? (may be at device-related docs or HA-templates...?)
There has been an idea of collecting such device-specific scripts somewhere, but it hasn't been fleshed out really. I'd still like to have a place to link users to, like "your problem has been solved there: ...".
I think the best we can do is to leave it there or move to discussions. What do you think @AlCalzone ?
Maybe moving this to discussions and mark @Frank-D-HB answer would be ggod
I'm thinking about a more general collection of such solutions and examples. Maybe a wiki in the repo is easiest actually.
Checklist
Deploy method
Docker
Zwavejs2Mqtt version
6.4.1
ZwaveJS version
8.11.1
Describe the bug
Missing the ability to play different sounds.
zwave_js_dump.zip
Device documentaion:
devolo MT02758 (see chapter "play sound", page 3): MT02758_manual.pdf
Zipato PH-PSE02 (front page, right lower corner): Zipato_Siren-UserManual.pdf
device config in zwave2jsmqtt:
device config in HA:
To Reproduce
static, permanent
Expected behavior
ability to select the different tones, as described in the device description
Additional context
yesterday i discussed the problem in HA discord, and a user (AlCalzone) give me the advise to open here an issue. What i researched about that problem until now: 1.) In a forum of another software (domoticz) a user seems to got a "workaround" for it: sending a raw message to the siren node. He mentioned: MQTT.publish and "zwaveJS2mqtt api/service "sendCommand" for each different sound. 2.) the devolo device and the zipato device are integrated in zwavejf(2mqtt) as the "same" device. But are they really equal? See the device descriptions: in Zipato is mentioned "SWITCH_MULTILEVEL SET" for playing differnt tones, in the devolo documentation not. See chapter "Z-WAVE COMMAND CLASSES" in both documentations - they differ. I don't now if thats importent for integration in zwaveJS(2mqtt) or HA.
Sorry i am a absolut beginer, amateur (created my github account today) - no computer expert and with limited abilities in the english language (using g... translate). So i am not able to implement the mentioned "workaround".