Project: Home Automation
Time: 2 hours
Many home appliances include wireless light bulbs that support ZigBee Home Automation (HA), a wireless standard that enables smart objects to work together in the home. This project uses a GE Link light bulb, which is a ZigBee HA-compatible device and can be controlled from anywhere via a mobile app. The sample application will perform ZigBee Service Discovery, find the light bulb within the network, and control lighting remotely.
If you get stuck along the way, try getting help from the Kinoma Create Forum.
We need to connect a ZigBee radio module to Kinoma Create. For this example, we have selected Digi's XBee radio. We can use any kind of antenna with XBee.
A less expensive XBee module--such as the XBee DigiMesh, sometimes referred to as Series 2--will suffice for this project; there is no need to go with an XBee "Pro" module. Modules designated as Series 2B are also acceptable; however, the XBee 802.15.4, or Series 1, is not.
GE Link light bulbs are an easy and affordable option, especially if you live in the United States, where they are sold at Home Depot stores.
When you buy an XBee module, the default firmware is typically in Router mode. We need Coordinator mode, so we have to rewrite the firmware. It is also good to keep XBee firmware updated to the most recent version.
Using the X-CTU tool, write the latest ZigBee Coordinator API firmware onto the XBee module. To do this, we need the SparkFun XBee Explorer Dongle with a Windows or Mac environment.
After successfully rewriting the firmware, change the baud rate to 115200 from the default value of 9600.
Connect the XBee module to serial pins on back of your Kinoma Create device, using a breakout board. Be sure to first solder the sockets and headers.
Here is the connection between the breakout board and the back pins of Kinoma Create:
Using ZigBee devices requires performing commissioning on each device. Kinoma Create, which has the Coordinator role in the ZigBee network, will first need to perform network forming. To do this, run the ZigBee HA sample application from Kinoma Studio and tap the Establish/Join Network button in the UI.
Once the network is formed, XBee will store the network information in its internal memory, so this needs to be done only once.
Next, the light bulbs need to join the current network. We are using the GE Link light bulb as an example, but you can use any ZigBee HA-standard light bulb. Just keep in mind that the commissioning method varies for each device; there is no standard method to do commissioning.
For a GE Link light bulb, follow these steps to do commissioning:
When the light bulb flashes, you know the device has successfully completed commissioning. Repeat the steps above if you want to add multiple light bulbs to your system. Once devices join the network, each device will store the network information in its internal memory.
Service Discovery is the core process for communicating with each ZigBee device within the ZigBee standard application profile network. In this example, all non-Coordinator devices are HA light bulbs; in a typical ZigBee network, however, you might not know what kind of devices are in the current network, making Service Discovery necessary for finding ZigBee devices.
When you tap Discovery in the UI, the application will broadcast the discovery message to all devices within the network. If the recipient has the On/Off Cluster and the ZigBee HA profile, it will respond to the message "Discovered" in the application. (You will notice the trace log on the Kinoma Studio console.)
Now you can toggle your GE Link light bulbs on and off. Tap the Toggle All button in the Kinoma Create UI. It will send a "Toggle" command message to all discovered devices within the network.
You now have wireless and remote control of the lighting in your home!Tweet