I've created devices and a script to help set the parameters for a Dome Siren (https://www.aartech.ca/dome-dms01). The devices represent the parameters and values available for it. The parameters can be found in the manual (https://s3.amazonaws.com/shopify-cus...d%20Manual.pdf), but there are some errors in it and there are two additional parameters available to control the LEDs (Parameter 8 for Siren and Parameter 9 for Chime with a value of 0 for off and 1 for on). I manually created the devices based on what was in the manual and from info found elsewhere. See below for a screenshot of the devices. I grouped them using Jon00's grouping utility. There's one device for each parameter, along with the root device. The Status Graphics tab for each device then has entries for each of the possible parameter values for that parameter using the same values. You can add icons for the different values, but that is not needed.

Here's an example of the device that toggles it between siren and chime mode. It has two values (1 and 2) that correspond to what is shown for parameter 7 in the manual (page 14). The rest of the devices are shown in this post: https://forums.homeseer.com/forum/de...54#post1329654

To trigger the chime/siren, first set the devices to the values you want and then trigger the script. Pass the z-wave Node ID to the script. The script then sets the z-wave parameters for the chime/siren and then activates it. The reference IDs for the devices that control the siren must be set in an ini file called "domesirenchime.ini" that must be stored in the Settings folder.

Below is the script, save it into your scripts folder as "domesiren.vb" or whatever name you want to give it.
Here's a sample of an INI file. Create a file in the settings folder called domesirenchime.ini with a section for each siren that you have. The section heading is the z-wave Node ID for the siren. See below for an explanation of the other parameters. Note that the script does not do a lot of error checking so if you enter the wrong values, you may get strange results.
HomeID=Home ID for your z-wave controller that controls the siren. It can be found in the controller Management page of the z-wave plugin or in the z-wave.ini file
SirenChimeControl=Device Reference ID of the device that turns the Siren on/off
SirenChimeToggle=Device Reference ID of the manually created device that sets it to chime or siren mode
SirenDuration=Device Reference ID of the manually created device that sets the siren duration
SirenLED=Device Reference ID of the manually created device that sets whether the LED is on or off in siren mode
SirenSound=Device Reference ID of the manually created device that sets the siren mode sound
SirenVolume=Device Reference ID of the manually created device that sets the siren volume
ChimeDuration=Device Reference ID of the manually created device that sets the chime duration
ChimeLED=Device Reference ID of the manually created device that sets whether the LED is on or off in chime mode
ChimeSound=Device Reference ID of the manually created device that sets the chime mode sound
ChimeVolume=Device Reference ID of the manually created device that sets the chime volume
Here's an example of the device that toggles it between siren and chime mode. It has two values (1 and 2) that correspond to what is shown for parameter 7 in the manual (page 14). The rest of the devices are shown in this post: https://forums.homeseer.com/forum/de...54#post1329654
To trigger the chime/siren, first set the devices to the values you want and then trigger the script. Pass the z-wave Node ID to the script. The script then sets the z-wave parameters for the chime/siren and then activates it. The reference IDs for the devices that control the siren must be set in an ini file called "domesirenchime.ini" that must be stored in the Settings folder.
Below is the script, save it into your scripts folder as "domesiren.vb" or whatever name you want to give it.
Code:
'Version 1.1 - Moved hard-coded devices to an INI file Sub Main(ByVal NodeIDStr As String) Dim NodeID As Integer = CInt(NodeIDStr) Dim Debug As Boolean = False Dim logName As String = "Dome Siren Control" Dim Mode As Integer = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "SirenChimeToggle", "", "domesirenchime.ini"))) Dim HomeID As String = hs.GetINISetting(NodeIDStr, "HomeID", "", "domesirenchime.ini") Dim DomeSirenID As Integer = CInt(hs.GetINISetting(NodeIDStr, "SirenChimeControl", "", "domesirenchime.ini")) Dim ModeParam As Integer = 7 Dim Duration As Integer Dim DurationParam As Integer Dim LED As Integer Dim LEDParam As Integer Dim Sound As Integer Dim SoundParam As Integer Dim Volume As Integer Dim VolumeParam As Integer If Mode = 1 Then 'Siren Mode Duration = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "SirenDuration", "", "domesirenchime.ini"))) LED = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "SirenLED", "", "domesirenchime.ini"))) Sound = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "SirenSound", "", "domesirenchime.ini"))) Volume = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "SirenVolume", "", "domesirenchime.ini"))) DurationParam = 2 LEDParam = 8 SoundParam = 5 VolumeParam = 1 Else 'Chime Mode Duration = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "ChimeDuration", "", "domesirenchime.ini"))) LED = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "ChimeLED", "", "domesirenchime.ini"))) Sound = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "ChimeSound", "", "domesirenchime.ini"))) Volume = hs.DeviceValue(CInt(hs.GetINISetting(NodeIDStr, "ChimeVolume", "", "domesirenchime.ini"))) DurationParam = 3 LEDParam = 9 SoundParam = 6 VolumeParam = 4 End If If Debug Then hs.WriteLog(logName, "Duration Param " & CStr(DurationParam)) hs.WriteLog(logName, "Duration " & Duration) hs.WriteLog(logName, "LED Param " & CStr(LEDParam)) hs.WriteLog(logName, "LED " & LED) hs.WriteLog(logName, "Sound Param " & CStr(SoundParam)) hs.WriteLog(logName, "Sound " & Sound) hs.WriteLog(logName, "Volume Param " & CStr(VolumeParam)) hs.WriteLog(logName, "Volume " & Volume) End If Try Dim ConfigResult As Integer = 0 ConfigResult = ZWaveParam(ModeParam,Mode,HomeID,NodeID) If ConfigResult = 1 Then ConfigResult = ZWaveParam(DurationParam,Duration,HomeID,NodeID) ConfigResult = ZWaveParam(LEDParam,LED,HomeID,NodeID) ConfigResult = ZWaveParam(SoundParam,Sound,HomeID,NodeID) ConfigResult = ZWaveParam(VolumeParam,Volume,HomeID,NodeID) Else hs.writelog(logName,"Unable to change the parameters for Node " & NodeID) End If hs.CAPIControlHandler(hs.CAPIGetSingleControl(DomeSirenID,True ,"on",False,True)) Catch ex As Exception hs.WriteLog(logName, "Exception " & ex.ToString) End Try End Sub Function ZWaveParam(ParamNumber As Integer, ParamValue As Integer, HomeID As String, NodeID As Integer) As Integer Dim logName As String = "Z-Wave Config Set" Dim Debug As Boolean = False Dim ConfigResult As Integer = 0 Dim ConfigResultVal() As String = {" is Unknown"," is Successful"," has been Queued"," has Failed"} Try ConfigResult = hs.PluginFunction("Z-Wave", "", "Configuration_Set", New Object(){HomeID, Convert.ToByte(NodeID), Convert.ToByte(ParamNumber), Convert.ToByte(1), Convert.ToInt32(ParamValue)}) If Debug Then hs.WriteLog(logName, "Result of Parameter " & ParamNumber & " change to " & ParamValue & " on Node " & NodeID & ConfigResultVal(ConfigResult)) Catch ex As Exception hs.writelog(logName, "Error: " & ex.Message.ToString) End Try Return ConfigResult End Function
Code:
[123] HomeID=00002200 SirenChimeControl=8090 SirenChimeToggle=8092 SirenDuration=8097 SirenLED=8102 SirenSound=8103 SirenVolume=8096 ChimeDuration=8099 ChimeLED=8093 ChimeSound=8095 ChimeVolume=8101 [124] HomeID=00002200 SirenChimeControl=9090 SirenChimeToggle=9092 SirenDuration=9097 SirenLED=9102 SirenSound=9103 SirenVolume=9096 ChimeDuration=9099 ChimeLED=9093 ChimeSound=9095 ChimeVolume=9101
SirenChimeControl=Device Reference ID of the device that turns the Siren on/off
SirenChimeToggle=Device Reference ID of the manually created device that sets it to chime or siren mode
SirenDuration=Device Reference ID of the manually created device that sets the siren duration
SirenLED=Device Reference ID of the manually created device that sets whether the LED is on or off in siren mode
SirenSound=Device Reference ID of the manually created device that sets the siren mode sound
SirenVolume=Device Reference ID of the manually created device that sets the siren volume
ChimeDuration=Device Reference ID of the manually created device that sets the chime duration
ChimeLED=Device Reference ID of the manually created device that sets whether the LED is on or off in chime mode
ChimeSound=Device Reference ID of the manually created device that sets the chime mode sound
ChimeVolume=Device Reference ID of the manually created device that sets the chime volume
Comment