Home Automation with xBee

561 views
Skip to first unread message

Stavros Tsardounis

unread,
Apr 14, 2016, 1:00:55 AM4/14/16
to xbee-api
I am trying to figure out a way to connect an xBee S2C module + Arduino to an HA network. It would even be "cool" to connect external sensors that are HA certified to an xBee coordinator. 

For connecting xBee to an HA hub like Securifi Almond+/ Samsung SmartThings I am able to connect to the HA network but fail at the provisioning portion. Here are the settings needed to connect to the HA network:



KY5A6967426565416C6C69616E63653039
EE01
AO03
ZS02


From my understanding I need to respond to a ZDO request with the proper sensor type and frame using the ZCL. At this point I am lost. If anyone understands this and maybe can help decipher a little bit more on it, that would be GREAT! Thanks!!


Some research I did that has more info on the subject:

Here is a link I found of someone do this with an XBee Pro module with the SmartThings hub. 
http://forums.parallax.com/discussion/157233/propeller-to-smartthings-communicating-with-the-zigbee-ha-public-profile


Here is the most important part:

"When a ZigBee device joins a network (this is how SmartThings works) an identification process occurs. The ZigBee Home Automation spec defines several ways devices can discover each other and figure out how to talk to one another using ZigBee Device Objects (ZDO). SmartThings uses three sets of ZDO clusters to identify devices when they join a network. The first thing that happens after a device has been allowed to join a network is it should send out a device announce packet (ZDO Cluster 0x0013) this is received by the SmartThings hub. Next the hub will send out a request for active end points supported by this new device by sending a ZDO Cluster 0x0005 packet to the new device. The device is expected to respond back with a list of its end points in a ZDO cluster 0x8005 formatted packet. Now each end point is queried for a profile ID, Device ID, and a set of supported clusters on that end point (ZDO 0x0004 & 0x8004 are used for this). At this point SmartThings knows what your device is and what it can do so it starts to look for a device driver to match it with (they call this the foot printing process)."
Reply all
Reply to author
Forward
0 new messages