Trước đây tôi đã có Hướng dẫn cài đặt Home Assistant trên Orange Pi One / Lite, nhưng đó là phiên bản core chạy trên python env. Nhưng phiên bản đó cũng từ khá lâu từ tận năm 2018, giờ Home Assistant cũng đã thay đổi khá nhiều. Ngoài ra phiên bản Home Assistant supervised thường được cài sẵn trên Home Assistant OS, mà HassOS lại không có phiên bản cho Orange Pi. Vì vậy tôi viết lại tut này để hướng dẫn các bạn cài Home Assistant phiên bản supervised trên Orange Pi Zero2 (hoặc các phiên bản Orange Pi sử dụng chip 64bit mới như H6, RK3399 …)
Đặc biệt của Home Assistant phiên bản supervised là bạn cần cài 1 bản Linux Debian chứ không phải Ubuntu. Vì thế trên trang tải hệ diều hành của hãng, bạn chọn bản Debian hoặc trên Armbian thì bạn chọn các bản codename của Debian để tải về, ví dụ như tôi tải về bản Bulleyes để cài đặt lần này. Bạn cũng không cần chọn bản giao diện desktop mà chỉ cần chọn bản server với giao diện cli là đủ.
Sau khi đã flash hệ điều hành vào thẻ nhớ, khởi động, thay đổi password root … và cập nhật bằng câu lệnh apt update && apt upgrade -y
. Chúng ta sẽ bắt đầu cài đặt Home Assistant phiên bản supervised. Vì tôi sẽ sử dụng luôn account root để thực thi câu lệnh nên không cần sudo phía trước, nếu bạn sử dụng account khác, bạn thêm sudo.
1. Cài các app cần thiết
apt-get install \
apparmor \
jq \
wget \
curl \
udisks2 \
libglib2.0-bin \
network-manager \
dbus \
lsb-release \
systemd-journal-remote -y
2. Cài docker-ce
curl -fsSL get.docker.com | sh
3. Cài đặt OS-Agent
OS Agent để Home Assistant Supervisor kết nối với D-Bus, đây là yêu cầu bắt buộc. Bạn cần tải về file cài đặt os-agent tại đây
https://github.com/home-assistant/os-agent/tree/main#using-home-assistant-supervised-on-debian
có rất nhiều phiên bản, bạn cần tìm phiên bản arm64, đuôi deb, ví dụ
https://github.com/home-assistant/os-agent/releases/download/1.4.1/os-agent_1.4.1_linux_aarch64.deb
sau đó tải về và cài bằng cụm câu lệnh
wget https://github.com/home-assistant/os-agent/releases/download/1.4.1/os-agent_1.4.1_linux_aarch64.deb && dpkg -i os-agent_1.4.1_linux_aarch64.deb
4. Cài Home Assistant phiên bản supervised
wget https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb && dpkg -i homeassistant-supervised.deb
Khi được yêu cầu chọn phiên bản, hãy chọn quemu-arm64 như hình dưới đây
Sau khi cài xong, hệ thống có thể sẽ yêu cầu khởi động lại. Bạn khởi động lại và đợi khoảng từ 10-15p để docker tải về các container. Bạn có thể sử dụng lệnh docker ps
hoặc journalctl -f
để kiểm tra tiến trình hoặc xem đã có container nào chạy chưa. Nếu đã thấy, thì truy cập vào http://IP_Của_OrangePI:8123 để bắt đầu khởi động những bước đầu tiên của Home Assistant.
Vậy là bạn đã cài xong Home Assistant, như vậy hơi ít cho bài hướng dẫn này, vì thế tôi viết thêm các bước cài Zigbee2MQTT để sử dụng USB Zigbee làm hub Zigbee trên Home Assistant như bên dưới sau:
1. Cài các gói hỗ trợ python
apt install python3-venv python3-pip python3-dev
2. Clone github zigbee2mqtt
git clone https://github.com/Koenkk/zigbee2mqtt.git
cd zigbee2mqtt
python3 -m venv .
source ~/zigbee2mqtt/bin/activate
pip install --upgrade pip wheel setuptools
pip install nodeenv
nodeenv -p -n 16.19.0
Đến đoạn này là bạn đã cài xong nodejs và npm trên môi trường python. Giờ bạn cần cài đặt Zigbee2MQTT bằng npm như sau:
npm ci
(quá trình npm install này rất lâu, bạn cần kiên nhẫn đợi)
npm start
(quá trình start lần đầu sẽ lâu, lần sau nhanh hơn)
Nếu có có bất cứ lỗi nào khi khởi động usb zigbee, bạn có thể vào link sau để kiểm tra các lỗi https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start.html. Sau đó làm lại cho đến khi thành công.
Khi đã thành công, hãy thử kết nối với 1 thiết bị zigbee bất kỳ, nếu mọi việc ok. Bạn bấm Cltr + C để thoát và tạo một service tên là zigbee2mqtt để chạy mỗi khi khởi động
nano /etc/systemd/system/zigbee2mqtt.service
Past đoạn code sau vào file zigbee2mqtt.service rồi bấm Cltr + X và Y để lưu lại
[Unit] Description=zigbee2mqtt
After=network.target [Service] ExecStart=/bin/bash -c ‘source /root/zigbee2mqtt/bin/activate; /root/zigbee2mqtt/bin/npm start’
WorkingDirectory=/root/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root [Install] WantedBy=multi-user.target
Ngoài ra, Zigbee2MQTT cũng có giao diện web để quản trị, để dùng nó bạn sửa file configuration.yaml trong thư mục data của Zigbee2MQTT
nano ~/zigbee2mqtt/data/configuration.yaml
Thêm 2 dòng sau rồi bấm Cltr + X và Y để lưu lại
frontend:
port: 8081
3. Thêm Zigbee2MQTT vào Home Assistant
Ở giao diện cài các add-ons, bạn cần thêm repo sau vào: https://github.com/zigbee2mqtt/hassio-zigbee2mqtt
Sau đó F5 tải lại và bạn sẽ thấy Zigbee2MQTT sẵn để cài như 1 add-on trên Home Assistant
Chúc các bạn thành công!
Pingback: Giới thiệu về Theengs Gateway, 1 cổng kết nối giữa các thiết bị bluetooth với MQTT - Orange Pi Viet Nam