Это статья 5 из цикла статей по установке и настройке Home Assistant.
- 1. Умный дом. Выбор.
- 2. Home Assistant. Выбор железа.
- 3. Установка Armbian на Orange Pi Zero Plus2
- 4. Home Assistant. Установка в docker на Orange Pi Zero +2 H5. И почему это плохо.
- 5. Home Assistant. Установка на Orange Pi Zero +2 H5.
- 6. Home Assistant. Настройка VS Code. Темы. Первый сценарий.
- 7. Home Assistant. Подключение электрокарниза по радиоканалу.
- 8. Home Assistant. Подключение электрокарнизов по RS485.
Это текстовая версия для видео:
Home assistant обновляется каждые две недели. Не всегда эти обновления устанавливаются без ошибок. По крайней мере в случае установки в виртуальное окружение. Мы не планируем обновлять видео, пока изменения не станут значительными. Однако текстовая версия будет поддерживаться в актуальном состоянии.
После установки Armbian на Orange Pi Zero +2 H5, перед установкой Home Assistant, нам нужно немного подготовить систему. Начнём с того, что зададим Orange Pi статический IP адрес. Так будет удобней находить её в локальной сети:
sudo armbian-config
Ведём пароль.
В открывшемся окне выбираем пункт — «Wired, wireless, Bluetooth, access point».

Далее «Select dynamic or edit static IP address».

Затем «Static».

В поле «Address» меняем цифры после последней точки на число, которое легко запомнить. Я впишу 192.168.10.20.

Происходит смена адреса. Если вы подключались по сетевому адресу, не через COM-порт, соединение будет разорвано. В этом случае подключаемся снова, уже по новому адресу.
Home Assistant создан на Python. В системах на Linux некоторое количество утилит также используют Python и связанные с ним переменные окружения. Чтобы быть уверенным в том, что Home Assistant не окажет влияния на настройки системного Python рекомендуется устанавливать его в виртуальное окружение. При такой установке у нас минимальные накладные расходы.
Нам нужно установить несколько пакетов. Будет удобней делать это в режиме администратора:
sudo -s
Нужно ввести пароль.
Обновим систему:
apt update && apt upgrade -y
Перед установкой Home Assistant нам нужно установить несколько пакетов:
apt install python3-dev python3-pip python3-venv libffi-dev libssl-dev -y
Создадим нового пользователя:
useradd -rm homeassistant
Аргументами -rm мы указываем, что хотим создать системную учётную запись и домашний каталог.
Можно задать пароль для пользователя homeassistant. Это необязательный шаг и пароль можно не задавать вообще, либо задать его позже:
passwd homeassistant
Нужно ввести новый пароль два раза.
Теперь создадим папку, в которую будет установлен Home Assistant:
cd /srv && mkdir homeassistant
Изменим владельца папки:
chown homeassistant:homeassistant homeassistant
Часто возникают ошибки в процессе установки связанные с установкой модуля home-assistant-frontend
Чтобы их не было отмонтируем папку /tmp, иначе нам не хватит места:
umount -l /tmp
Становимся пользователем homeassistant:
sudo -u homeassistant -Hs
Меняем каталог, создаём и активируем виртуальное окружение:
cd homeassistant
python3 -m venv .
source bin/activate
Нам понадобится пакет wheel:
python3 -m pip install wheel
Прежде, чем устанавливать home assistant, для верности, отдельно, установим home-assistant-frontend:
python3 -m pip install home-assistant-frontend
Всё должно установиться без ошибок. Если ошибки есть – читаем и гуглим.
Устанавливаем Home Assistant:
python3 -m pip install homeassistant
Установка длится приблизительно 15 минут.
Запускаем Home Assistant:
hass
После этого открываем в браузере страницу:
192.168.10.20:8123
Если вы задавали другой IP адрес, то нужно ввести свой.
Если страница недоступна сразу, то просто нужно какое-то время подождать пока не завершится начальная инициализация.

В открывшейся странице создаём учётную запись пользователя.
Мы почти закончили. Осталось только настроить автозапуск Home Assistant при старте системы, чтобы не делать это вручную каждый раз при перезагрузке системы.
Останавливаем Home Assistant:
Ctrl+c
Возвращаемся в режим администратора:
exit
В каталоге /etc/systemd/system/ создаём файл home-assistant@homeassistant.service.
Содержимое файла:
[Unit] Description=Home Assistant After=network-online.target [Service] Type=simple User=%i ExecStart=/srv/homeassistant/bin/hass [Install] WantedBy=multi-user.target
Для того, чтобы изменения вступили в силу, перезапускаем systemd:
systemctl --system daemon-reload
Включаем запуск при загрузке системы:
systemctl enable home-assistant@homeassistant
Чтобы убедиться, что Home Assistant стартует при запуске системы, перезагружаемся:
reboot
Если ошибок не было, после старта системы, по адресу 192.168.10.20:8123 (если вы задавали другой IP, то вводим свой) получаем доступ к Home Assistant.
“systemctl —system daemon-reload”
Спасибо большое за инструкцию, исправьте только длинную черту перед system на две короткие
Поправили.
привет! почему может после удачной установки мне не дает зайти по моему IP?
если ввести адрес без потра не загружает если с портом то с каким? если как у Вас 8123 то выдает 404: Not Found
помогите советом….
Здравствуйте! Возможно опечатка в наборе ip:port, возможно нужно больше времени для того, чтобы home assistant закончил конфигурацию. Возможно при установке возникли ошибки (версии home assistant выпущенные после 15-го декабря требуют python3.7, на Armbian для Orange Pi по умолчанию активна версия python3.6, вероятно у вас причина в этом). Если что-то не так, в консоли будет сообщение об ошибке с указанием на причину. Причин может быть очень много. В целом весь процесс установки наглядно показан на видео. Сравните то, что вы видите на видео с тем, что у вас отображается на экране.
В статью внесли поправки. Сейчас всё должно установиться без проблем.
update-alternatives –install /usr/bin/python3 python3 /usr/bin/python3.8 5
Два дефиса перед “install” слились в одно тире. Вам нужно какой-то плагин для показа команд.
Спасибо за подсказку. Поправили. Сейчас должно быть всё однозначно.
На последних armbian эта инструкция не работает – не хватает пары библиотек: sudo apt-get install libjpeg-dev zlib1g-dev
Ну и необходимо включить созданного пользователя в соответствующую группу, иначе zigbee свистки не будут работать: sudo useradd -rm homeassistant -G dialout
Большое спасибо за статьи и видео!
Подскажите, пожалуйста, как лучше управлять GPIO из Home Assistant, что использовать, куда смотреть? Установил armbian и HA по Вашим гайдам, железка pi zero +2 H3
Управление GPIO выполняется средствами операционной системы. Если вы следовали нашему описанию, то посмотрите документацию Armbian. В Home Assistant вы создаёте компонент (например кнопку) с интерфейсом командной строки. Сами команды пишите так, как вам удобно (например на bash или python). В статьях про rf-blinds и blinds-rs485 показано как работать с последовательным портом из Home Assistant. Приведены примеры команд. Управление GPIO (опрос и переключение) делается практически так же с точки зрения Home Assistant. Сами команды, конечно, будут другими.
Спасибо зап статью! При установке после команды python3 -m pip install homeassistant в самом конце появилась единственная ошибка “ERROR: requests 2.25.1 has requirement idna=2.5, but you’ll have idna 3.1 which is incompatible.” после команды hass Home Assistant не запускается и иного ошибок такого вида: 2021-02-08 20:16:27 ERROR (MainThread) [homeassistant.setup] Setup failed for image: Requirements
Попробуйте выполнить pip install –use-feature=2020-resolver и после этого повторите python3 -m pip install homeassistant
Разработчики не успели добавить совместимость с новой библиотекой. Видимо это будет исправлено в ближайшее время.
Если появилась ошибка: ERROR: aiohttp 3.7.3 has requirement chardet<4.0,>=2.0, but you’ll have chardet 4.0.0 which is incompatible.
Попробуйте установить aiohttp отдельной командой: pip3 install aiohttp
После этого homeassistant успешно запускается.
Спасибо большое только промучился с последним пунктом (В каталоге /etc/systemd/system/ создаём файл home-assistant@homeassistant.service.) пришлось устанавливать рабочий стол и в нем создавать этот фаил
Да, из консоли создавать файлы по-началу кажется неудобно. Мы в 6-й статье показали как настроить VS Code, чтобы было удобно редактировать файлы на удаленном компе.
Здраствуйте, при установке пакета wheel происходит ошибка ERROR: Could not install packages due to an OSError: HTTPSConnectionPool(host=’files.pythonhosted.org’, port=443): Max retries exceeded with url: /packages/27/d6/003e593296a85fd6ed616ed962795b2f87709c3eee2bca4f6d0fe55c6d00/wheel-0.37.1-py2.py3-none-any.whl (Caused by NewConnectionError(‘: Failed to establish a new connection: [Errno -2] Name or service not known’)) куда копать
Похоже, что доступ в интернет у вас настроен через VPN или proxy. Можно попробовать: –trusted-host=pypi.python.org –trusted-host=pypi.org –trusted-host=files.pythonhosted.org, либо pip install –proxy=127.0.0.1:3128 модуль. Вместо 127.0.0.1:3128 укажите свой прокси.
Спасибо за помощь теперь при установке самого Home Assistant вылетает ERROR: Could not build wheels for cryptography, which is required to install pyproject.toml-based projects
ДОБРЫЙ ДЕНЬ. не запускается HASS
Подскажите, что делаю не так
(homeassistant) homeassistant@bananapim2zero:/srv/homeassistant$ hass
Traceback (most recent call last):
File “/srv/homeassistant/bin/hass”, line 10, in
sys.exit(main())
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/__main__.py”, line 278, in main
args = get_arguments()
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/__main__.py”, line 60, in get_arguments
import homeassistant.config as config_util
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/config.py”, line 52, in
import homeassistant.helpers.config_validation as cv
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/config_validation.py”, line 85, in
from homeassistant.helpers import (
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/script_variables.py”, line 6, in
from . import template
File “/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/template.py”, line 19, in
from jinja2 import contextfilter, contextfunction
ImportError: cannot import name ‘contextfilter’ from ‘jinja2’ (/srv/homeassistant/lib/python3.7/site-packages/jinja2/__init__.py)
(homeassistant) homeassistant@bananapim2zero:/srv/homeassistant$
Здравствуйте, Евгений! У вас python3.7. Home assistant работает на последних двух стабильных версиях python3. Сейчас вышел python3.11. Вам нужен python3 версии не ниже python3.10. При установке Armbian на основе Ubuntu на Orange Pi это обычно поддерживается автоматически. Нужно только регулярно обновлять систему. Т.е. версия python3 на Armbian на основе Ubuntu обычно не сильно отстает от последнего релиза. Вы, похоже, устанавливаете на Banana Pi Armbian на основе Debian. Установите python3.10, или лучше python3.11. После этого либо сделайте версию 3.10 (или 3.11) версией python3 по умолчанию, либо задайте эту версию при создании виртуального окружения.