I am trying to create a zigbee HA device. So far I have used https://nzfalco.jimdofree.com/electronic-projects/xbee-to-smartthings/ as well as the zigbee ZCL spec to get me to the point where I am sending commands on the HA Basic cluster. I am using the Digi XBee3 along with their xbee-java-library-1.3.0 library.
After sending the response to the SimpleDescriptor, my SmartThings hub sends me, what I think is a HA Read request for the version:
[Thread-2] DEBUG com.digi.xbee.api.DataReader - [COM6 - 9600/8/N/1/N] Packet received:
Packet: 7E001791286D97000206071B0000010800000104110017000100E1
Start delimiter: 7E
Length: 00 17 (23)
Frame type: 91 (Explicit RX Indicator)
64-bit source address: 28 6D 97 00 02 06 07 1B
16-bit source address: 00 00
Source endpoint: 01
Dest. endpoint: 08
Cluster ID: 00 00
Profile ID: 01 04
Receive options: 11
RF data: 00 17 00 01 00
Checksum: E1
I interpret this to be:
Profile 260 (HA), Cluster 0, frameControl=0, seq=97, command=0, attributes={1}
I am responding with version 0x20:
[Thread-0] DEBUG com.digi.xbee.api.ZigBeeDevice - [COM6 - 9600/8/N/1/N] 0013A20041B76396 (Fred) - Sending XBee packet:
Packet: 7E001C1110286D97000206071B000001088000010400000017010100002020A1
Start delimiter: 7E
Length: 00 1C (28)
Frame type: 11 (Explicit Addressing Command Frame)
Frame ID: 10 (16)
64-bit dest. address: 28 6D 97 00 02 06 07 1B
16-bit dest. address: 00 00
Source endpoint: 01
Dest. endpoint: 08
Cluster ID: 80 00
Profile ID: 01 04
Broadcast radius: 00 (0)
Transmit options: 00
RF data: 00 17 01 01 00 00 20 20
Checksum: A1
The spec is a bit confusing at this point. What should be in the ZCL Payload to respond with? The hub just ignores my response and tries the read again.