JetHome — различия между версиями

Материал из pNp Wiki
Перейти к: навигация, поиск
(Установка и настройка Home Assistant (HA))
(Установка и настройка Home Assistant (HA))
Строка 18: Строка 18:
 
* Добавляем его в группу dialout для возможности работы с RS-485 или zigbee
 
* Добавляем его в группу dialout для возможности работы с RS-485 или zigbee
 
  usermod -a -G dialout homeassistant  
 
  usermod -a -G dialout homeassistant  
 +
* Производим установку
 +
  su -s /bin/bash homeassistant
 +
  cd /opt/homeassistant
 +
  python3 -m venv .
 +
  source bin/activate
 +
  pip3 install wheel
 +
  pip3 install homeassistant
 +
* Запускаем из консоли (ctrl + c для закрытия)
 +
  hass
 +
 
* Создаём unit файл для автозапуcка HA
 
* Создаём unit файл для автозапуcка HA
 
  echo '[Unit]
 
  echo '[Unit]
 
  Description=Home Assistant
 
  Description=Home Assistant
 
  After=network-online.target
 
  After=network-online.target
 
+
 
 
  [Service]
 
  [Service]
 
  Type=simple
 
  Type=simple
 
  User=homeassistant
 
  User=homeassistant
 
  ExecStart=/opt/homeassistant/bin/hass -c "/opt/homeassistant/.homeassistant"
 
  ExecStart=/opt/homeassistant/bin/hass -c "/opt/homeassistant/.homeassistant"
 
+
 
  [Install]
 
  [Install]
 
  WantedBy=multi-user.target' > /usr/lib/systemd/system/homeassistant.service
 
  WantedBy=multi-user.target' > /usr/lib/systemd/system/homeassistant.service

Версия 17:33, 14 февраля 2021

Cмена hostname

 hostnamectl set-hostname ha.ipnp.su

Установка и настройка Mosquitto

  • Подключаем ppa репозиторий
 apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
  • Устанавливаем mosquitto
 apt update
 apt install mosquitto mosquitto-clients
  • Включаем автозапуск и запускаем демона
 systemctl enable --now mosquitto

Установка и настройка Home Assistant (HA)

  • Устанавливаем пакеты требуемые для HA
 apt -y  install python3-dev python3-pip python3-venv libffi-dev
  • Создаём пользователя от которо будет запускаться HA
adduser --group --system --home /opt/homeassistant homeassistant
  • Добавляем его в группу dialout для возможности работы с RS-485 или zigbee
usermod -a -G dialout homeassistant 
  • Производим установку
 su -s /bin/bash homeassistant
 cd /opt/homeassistant
 python3 -m venv .
 source bin/activate
 pip3 install wheel
 pip3 install homeassistant 
  • Запускаем из консоли (ctrl + c для закрытия)
 hass
  • Создаём unit файл для автозапуcка HA
echo '[Unit]
Description=Home Assistant
After=network-online.target
 
[Service]
Type=simple
User=homeassistant
ExecStart=/opt/homeassistant/bin/hass -c "/opt/homeassistant/.homeassistant"

[Install]
WantedBy=multi-user.target' > /usr/lib/systemd/system/homeassistant.service
  • Включаем автозапуск и запускаем демона.
systemctl enable --now homeassistant

Установка и настройка Zigbee2MQTT (Z2M)

  • Устанавливаем пакеты требуемые для Z2M
apt install -y nodejs npm git make g++ gcc
  • Создаём пользователя от которого будет запускаться Z2M
adduser --group --system --home /opt/zigbee2mqtt zigbee2mqtt
  • Добавляем его в группу dialout для возможности работы с zigbee
usermod -a -G zigbee2mqtt dialout
  • Запускаем шелл под пользователем zigbee2mqtt и переходим в домашнию дерикторию
su -s /bin/bash zigbee2mqtt
cd /opt/zigbee2mqtt
  • Клонируем репозиоторий zigbee2mqtt в /opt/zigbee2mqtt
git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt
  • Устанавоиваем зависимости nodejs
 npm ci --production
  • Правим конфиг Z2M
 nano /opt/zigbee2mqtt/data/configuration.yaml
 # Home Assistant integration (MQTT discovery)
 homeassistant: true 
 # allow new devices to join
 permit_join: true
 # MQTT settings
 mqtt:
   # MQTT base topic for zigbee2mqtt MQTT messages
   base_topic: zigbee2mqtt
   # MQTT server URL
   server: 'mqtt://localhost'
   # MQTT server authentication, uncomment if required:
   # user: my_user
   # password: my_password
 # Serial settings
 serial:
   # Location of CC2531 USB sniffer
   port: /dev/ttyAML2
 advanced:
   network_key: GENERATE
  • запускаем в консоли (ctrl+c выход)
 npm start
  • Создаём unit файл для автозапуcка HA
 echo '[Unit]
 Description=zigbee2mqtt
 After=network.target
 
 [Service]
 ExecStart=/usr/bin/npm start
 WorkingDirectory=/opt/zigbee2mqtt
 StandardOutput=inherit
 StandardError=inherit
 Restart=always
 User=zigbee2mqtt
 
 [Install]
 WantedBy=multi-user.target
  • Включаем автозапуск и запускаем демона.
 systemctl enable --now zigbee2mqtt