HEIMAN HS2WD Smart Siren

Hi guys,

I’m trying to get the ’ HEIMAN HS2WD-E Smart Siren’ to work with SmartThings, I managed to pair it using the ‘Zigbee Siren’ DTH and pressed the button, the siren started, but it won’t stop :smiley:
Good thing I had a pillow nearby and covered it up 'cause it has a battery as well and it kept squaking for a good 20 minutes before the battery ran out.

I’m getting all sorts of error messages in the Log, like:
> java.lang.IllegalArgumentException: Needs to be string or int, received null value: null @line 227 (ping)
or
error java.lang.NullPointerException: Cannot get property 'Class' on null object @line 93 (configure) parse results: null Parse returned [:] Parsing 'read attr - raw: B9BF0100000A0100002048, dni: B9BF, endpoint: 01, cluster: 0000, size: 10, attrId: 0001, result: success, encoding: 20, value: 48'

But I can’t seem to find the code for the DTH. It’s not on the github code base.
Any idea where to get it so I can start hacking away at it ?

ProTip: put the siren facing the pillow for maximal sound dampening :rofl:

Cheers,
Sebastian

Is this the same siren?

Mine should be here on Monday, so I’m curious to see if I run into the same issue.

The fingerprint of the Heiman is in the DTH for the ozom-smart-siren code, so you might want to switch to that handler.

Tagging @BroderickCarlin

Hi John,

Could be, I tried the ozom DTH but with no luck, the only one that did something was the Zigbee Siren one (can’t find the code).

I’ll experiment with ozom (tomorrow, earlier in the day, now I might anger my neighbors as the sound is pretty loud pillow and all) and get back to you all with results.

Cheers,
Sebastian

1 Like

@SebyM The Ozom Smart Siren DTH should work with the HS2WD-E. Could you post the live logs when you join the device, start the siren and then try to stop it?

2 Likes

Hi @tpmanley,

Got mine to join. It turns on/off just fine. No strobe/flash. The DTH doesn’t have the capability defined, but the device supports strobe/flash (I believe). Here’s the live log info:

81fdd4e8-3530-426b-a420-289ab1346a17 4:15:33 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:15:33 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:15:33 PM: debug Parsing ‘zone report :: type: 19 value: 0010’

81fdd4e8-3530-426b-a420-289ab1346a17 4:12:32 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:12:32 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:12:32 PM: debug Parsing ‘zone report :: type: 19 value: 0010’

81fdd4e8-3530-426b-a420-289ab1346a17 4:12:08 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:12:08 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:12:08 PM: debug Parsing ‘read attr - raw: A6A6010001082100208D, dni: A6A6, endpoint: 01, cluster: 0001, size: 8, attrId: 0021, result: success, encoding: 20, value: 8d’

81fdd4e8-3530-426b-a420-289ab1346a17 4:09:31 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:09:31 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:09:31 PM: debug Parsing ‘zone report :: type: 19 value: 0010’

81fdd4e8-3530-426b-a420-289ab1346a17 4:06:31 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:06:31 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:06:31 PM: debug Parsing ‘zone report :: type: 19 value: 0010’

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:27 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:27 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:27 PM: debug Parsing ‘catchall: 0104 0502 01 01 0000 00 A6A6 00 00 0000 0B 01 0000’

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:27 PM: debug Parsing ‘catchall: 0104 0502 01 01 0000 00 A6A6 00 00 0000 0B 01 0000’

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:26 PM: debug off()

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:23 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:23 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:23 PM: debug Parsing ‘catchall: 0104 0502 01 01 0000 00 A6A6 00 00 0000 0B 01 0000’

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:23 PM: debug on()

81fdd4e8-3530-426b-a420-289ab1346a17 4:04:23 PM: debug siren()

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:30 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:30 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:30 PM: debug Parsing ‘zone report :: type: 19 value: 0010’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:30 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:30 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:30 PM: debug Parsing ‘zone status 0x0010 – extended status 0x00’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:13 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:13 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:13 PM: debug Parsing ‘catchall: 0104 0500 01 01 0000 00 A6A6 00 00 0000 07 01 00’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:11 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:11 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:11 PM: debug Parsing ‘catchall: 0000 8021 00 00 0000 00 A6A6 00 00 0000 00 00 1F00’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:09 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:09 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:09 PM: debug Parsing ‘catchall: 0104 0502 01 01 0000 00 A6A6 00 00 0000 04 01 00’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parsing ‘catchall: 0104 0500 01 01 0000 00 A6A6 00 00 0000 0B 01 0000’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parsing ‘catchall: 0104 0001 01 01 0000 00 A6A6 00 00 0000 0B 01 0700’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parsing ‘catchall: 0104 0500 01 01 0000 00 A6A6 01 00 0000 01 01 25020B12’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:07 PM: debug Parsing ‘catchall: 0104 0001 01 01 0000 00 A6A6 00 00 0000 06 01 0121005802’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:05 PM: debug parse results: null

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:05 PM: debug Parse returned [:]

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:05 PM: debug Parsing ‘catchall: 0104 0500 01 01 0000 00 A6A6 00 00 0000 04 01 00’

81fdd4e8-3530-426b-a420-289ab1346a17 4:03:05 PM: debug configure: [st wattr 0xA6A6 0x01 0x0500 0x0010 0x00F0 {D052A826601D0001}, delay 2000, raw 1280 {01 23 00 00 00}, delay 200, send 0xA6A6 0x1 0x1, delay 2000, st wattr 0xA6A6 0x01 0x0502 0x0000 0x0021 {FFFE}, delay 2000, zdo bind 0xA6A6 0x01 0x01 0x0500 {000D6F0013C7B008} {}, delay 2000, st cr 0xA6A6 0x01 0x0500 0x0002 0x19 0x0000 0x00B4 {}, delay 2000]

Hey @tpmanley (cc @BroderickCarlin and @SebyM)

Got this working exactly as I want, including the strobe/flash. I created my own DTH, with the only change being in the on() section:

zigbee.command(IAS_WD_CLUSTER, COMMAND_IAS_WD_START_WARNING, "17", DataType.pack(warningDuration, DataType.UINT16), "00", "00")

I changed “13” to “17”, which is the binary to hex conversion needed for the strobe/flash.

1 Like