Today BeaglePlay has gained a new Super Power, The ability to act as a Zigbee Coordinator for Home Assistant!
This $99 board packs all the performance needed to act as your HomeAssistant instance on it's on-board highly reliable eMMC memory and the Zigbee capable CC1352P7 2.4Ghz and Sub-Ghz radio while staying cool and sipping power.
What is Zigbee?Zigbee is a wireless mesh technology used for connecting smart devices that's separate from Wifi. Many existing devices use the technology, such as Phillips Hue, Ikea Tradfri, Aquara, and more.
This BeaglePlay + HomeAssistant implementation allows you to bypass the usual manufacturer bridge needed to get your Zigbee devices connected to the internet, while allowing you to stay in control of your data.
Let's Get Started:Materials Needed:
- BeaglePlay
- Micro-SD Card + USB Reader (Only need this once to flash HomeAssistant)
- USB-C Cable for Power & Data
- Ethernet Cable (Optional)
Download the HomeAssistant Flasher Image from HERE.
In the future, images will be available directly from Beagleboard.org
2. Write the Image to an SD CardUse Balena Etcher to flash the image to your SD Card - Link
3. Flash the BoardWithout applying power, insert your SD card and hold down the "USR" button, then Apply power.
Keep holding the USR button until the LEDs start cycling as shown below:
When the LEDs are done flashing, first remove power to the board, then remove the SD card and re-apply power to boot from the on-board eMMC memory.
You have multiple options to access the BeaglePlayLinuxterminal:
1. Once booted, the Beagle shows up as a USB-Serial Adapter!
2. Find it's IP addresss on your router and use an "SSH" client to connect
3. Connect a monitor, keyboard and mouse
4. Change your password!The defaults are:
Username: debian
Password: temppwd
You will want to change this immediately as keeping a device with it's default password on the network is dangerous.
Run the following command once logged in to change your password:
passwd
5. Let's Setup Zigbee- First, we need to disable bfserial:
This is documented in the BeagleDocs Here
echo " fdtoverlays /overlays/k3-am625-beagleplay-bcfserial-no-firmware.dtbo" | sudo tee -a /boot/firmware/extlinux/extlinux.conf
sudo reboot now
The board will now reboot. Once booted, re-connect.
- Grab the CC1352 Python Flasher Script:
wget https://git.beagleboard.org/beagleconnect/cc1352-firmware/-/raw/main/0.2.2/play/cc1352-flasher.py
- Get the Zigbee Coordinator Firmware:
wget https://github.com/Koenkk/Z-Stack-firmware/raw/3096170e03f36a90e91648a7e703379ca386d6c6/coordinator/Z-Stack_3.x.0/bin/CC1352P7_coordinator_20230507.zip
- Unzip the Firmware
unzip CC1352P7_coordinator_20230507.zip
- Get the IntelHex Python Extension
sudo pip install IntelHex
- Finally - Flash the CC1352:
sudo python cc1352-flasher.py CC1352P7_coordinator_20230507.hex
6. Let's find our IP Address:ifconfig eth0
7. Now let's login to HomeAssistant:On your computer, navigate to your IP address and add ":8123" at the end of your URL to indicate the HomeAssistant port number
Example: http://10.0.0.85:8123 or http://192.168.1.12:8123
You will be presented with the HomeAssistant setup screen.
On the bottom left, select Settings
Then Devices & Services
And finally "Add Service" at the bottom right and select Zigbee Home Automation from the list.
For Radio Type, select ZNP
Make sure to set Serial device path to /dev/ttyS4
And now you can create a new Zigbee network.
If all goes to plan, it should show up successfully and you can assign the coordinator to a room.
Now, simply click "add devices" under the Zigbee integration!
Different Zigbee devices enter pairing mode in different ways.
Most have a "Sync" button that you need to hold for a few seconds. Others, like my Ikea FYRTUR blinds have you hold the two buttons to pair. Lights will usually have you cycle them on-off several times (5 in the case of my Ikea ones)
But once in pairing mode, you will see devices start to populate the list.
You can even configure multiple devices at once! Here we have 2 blinds and 3 lights all configuring and initializing at once! How neat!
After a little bit, you should see all your devices are ready to use and reporting various data to HomeAssistant. You are now in full control!
Congratulations! You are now the master of your own Zigbee infused destiny using nothing but your wits and the superpowers of a powerful little BeaglePlay.
This has just been a small subset of devices, there are remotes, MMWave presence detection, Passive Infrared, Cameras, Lights, Garage Door Openers and more out there, you're only limited by your imagination and your wallet.
There is a whole world of IoT and smart devices ahead of you. Perhaps you'll want to add more Zigbee devices, perhaps it's Wifi ones. Maybe you want to integrate HomeAssistant to Alexa or Apple HomeKit and create routines/automations, all of these things are just a few clicks away and the Beagle is ready to remain by your side as your trusty Home Automation hub.
Best of luck and I hope you found this little tutorial useful.
Comments