Install Home Assistant Operating System
Download the appropriate image
-
VirtualBox (.vdi)
-
KVM (.qcow2)
-
Vmware Workstation (.vmdk)
-
Hyper-V (.vhdx)
Follow this guide if you already are running a supported virtual machine hypervisor. If you are not familiar with virtual machines we recommend installation Home Assistant OS directly on a Raspberry Pi or an ODROID.
Create the Virtual Machine
Load the appliance image into your virtual machine hypervisor. (Note: You are free to assign as much resources as you wish to the VM, please assign enough based on your add-on needs).
Minimum recommended assignments:
- 2 GB RAM
- 32 GB Storage
- 2vCPU
All these can be extended if your usage calls for more resources.
Hypervisor specific configuration
VirtualBox
KVM (virt-manager)
KVM (virt-install)
Vmware Workstation
Hyper-V
- Create a new virtual machine
- Select Type “Linux” and Version “Linux 2.6 / 3.x / 4.x (64-bit)”
- Select “Use an existing virtual hard disk file”, select the unzipped VDI file from above
- Edit the “Settings” of the VM and go “System” then “Motherboard” and select “Enable EFI”
- Then go to “Network” “Adapter 1” choose “Bridged Adapter” and choose your Network adapter
Please keep in mind that the bridged adapter only functions over a hardwired ethernet connection.
Using Wi-Fi on your VirtualBox host is unsupported.
6. Then go to «Audio» and choose «Intel HD Audio» as Audio Controller.
By default VirtualBox does not free up unused disk space. To automatically shrink the vdi disk image
the discard
option must be enabled:
VBoxManage storageattach <VM name> --storagectl "SATA" --port 0 --device 0 --nonrotational on --discard on
- Create a new virtual machine in
virt-manager
- Select “Import existing disk image”, provide the path to the QCOW2 image above
- Choose “Generic Default” for the operating system
- Check the box for “Customize configuration before install”
- Select your bridge under “Network Selection”
- Under customization select “Overview” -> “Firmware” -> “UEFI x86_64: …”. Make sure to select a non-secureboot version of OVMF (does not contain the word
secure
,secboot
, etc.), e.g.,/usr/share/edk2/ovmf/OVMF_CODE.fd
. - Click “Add Hardware” (bottom left), and select “Channel”
- Select device type: “unix”
- Select name: “org.qemu.guest_agent.0”
- Finally select “Begin Installation” (upper left corner)
virt-install --name hass --description "Home Assistant OS" --os-variant=generic --ram=2048 --vcpus=2 --disk <PATH TO QCOW2 FILE>,bus=sata --graphics none --boot uefi
- Create a new virtual machine
- Select “Custom”, make it compatible with the default of Workstation and ESX
- Choose “I will install the operating system later”, select “Linux” -> “Other Linux 5.x or later kernel 64-bit”
- Select “Use Bridged Networking”
- Select “Use an existing virtual disk” and select the VMDK file above,
After creation of VM go to “Settings” and “Options” then “Advanced” and select “Firmware type” to “UEFI”.
Hyper-V does not have USB support
- Create a new virtual machine
- Select “Generation 2”
- Select “Connection -> “Your Virtual Switch that is bridged”
- Select “Use an existing virtual hard disk” and select the VHDX file from above
After creation go to “Settings” -> “Security” and deselect “Enable Secure Boot”.
Start up your Virtual Machine
- Start the Virtual Machine
- Observe the boot process of Home Assistant Operating System
- Once completed you will be able to reach Home Assistant on homeassistant.local:8123. If you are running an older Windows version or have a stricter network configuration, you might need to access Home Assistant at homeassistant:8123 or
http://X.X.X.X:8123
(replace X.X.X.X with your ’s IP address).
With the Home Assistant Operating System installed and accessible you can continue with onboarding.
Install Home Assistant Core
Install WSL
To install Home Assistant Core on Windows, you will need to use the Windows Subsystem for Linux (WSL). Follow the WSL installation instructions and install Ubuntu from the Windows Store.
As an alternative, Home Assistant OS can be installed in a Linux guest VM. Running Home Assistant Core directly on Windows is not supported.
This is an advanced installation process, and some steps might differ on your system. Considering the nature of this installation type, we assume you can handle subtle differences between this document and the system configuration you are using. When in doubt, please consider one of the other installation methods, as they might be a better fit instead.
Prerequisites
This guide assumes that you already have an operating system setup and have installed Python 3.10 (including the package python3-dev
) or newer.
Install dependencies
Before you start, make sure your system is fully updated, all packages in this guide are installed with apt
, if your OS does not have that, look for alternatives.
sudo apt-get update
sudo apt-get upgrade -y
Install the dependencies:
sudo apt-get install -y python3 python3-dev python3-venv python3-pip bluez libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5 libturbojpeg0-dev tzdata
The above-listed dependencies might differ or missing, depending on your system or personal use of Home Assistant.
Create an account
Add an account for Home Assistant Core called homeassistant
.
Since this account is only for running Home Assistant Core the extra arguments of -rm
is added to create a system account and create a home directory.
sudo useradd -rm homeassistant
Create the virtual environment
First we will create a directory for the installation of Home Assistant Core and change the owner to the homeassistant
account.
sudo mkdir /srv/homeassistant
sudo chown homeassistant:homeassistant /srv/homeassistant
Next up is to create and change to a virtual environment for Home Assistant Core. This will be done as the homeassistant
account.
sudo -u homeassistant -H -s
cd /srv/homeassistant
python3 -m venv .
source bin/activate
Once you have activated the virtual environment (notice the prompt change to (homeassistant) [email protected]:/srv/homeassistant $
) you will need to run the following command to install a required Python package.
python3 -m pip install wheel
Once you have installed the required Python package, it is now time to install Home Assistant Core!
pip3 install homeassistant==2023.2.1
Start Home Assistant Core for the first time. This will complete the installation for you, automatically creating the .homeassistant
configuration directory in the /home/homeassistant
directory, and installing any basic dependencies.
You can now reach your installation via the web interface on http://homeassistant.local:8123
.
If this address doesn’t work you may also try http://localhost:8123
or http://X.X.X.X:8123
(replace X.X.X.X with your machines’ IP address).
When you run the hass
command for the first time, it will download, install and cache the necessary libraries/dependencies. This procedure may take anywhere between 5 to 10 minutes. During that time, you may get “site cannot be reached” error when accessing the web interface. This will only happen for the first time, and subsequent restarts will be much faster.
Help us to improve our documentation
Suggest an edit to this page, or provide/view feedback for this page.
Update: новая статья
У новых пользователей часто возникает вопрос — можно ли установить Home Assistant на Windows?
Конечно можно! Проблема заключается в том, что не все зависимости Home Assistant легко установятся на любую сборку Windows. Об этом можно почитать тут.
На портале уже была статья о подобной установке. В своей версии я чуть подробнее опишу детали.
Идём на сайт python и скачиваем последнюю на момент написания статьи версию. Можно скачать как обычную, так и 64-битную версию.
В процессе установки Python я встречал следующие проблемы:
- установка не стартовала на «голой» Windows 7 без важных обновлений — нужно обновить систему стандартным способом
- установка не завершалась с недоступным сайтом python (из-за РКН) — нужно отключить опции download debug…
Вот у вас и установлен Python.
Далее нажимаем на клавиатуре win R и запускаем cmd
В запустившейся консоли вводим :
pip install homeassistant
Вот у вас и установлен последний Home Assistant.
На этом этапе у вас не должно возникнуть особых проблем. Python и HA должны установиться в практически любую систему.
Первый запуск Home Assistant
В той же консоли, что и ранее, просто вводим — hass.
Начнётся первый запуск HA. Он может быть достаточно долгим. HA будет скачивать и устанавливать разные библиотеки python, которые требуются конфигурации по умолчанию. А их не мало.
Плюс, если в процессе установки в вашей локальной сети обнаружатся поддерживаемые устройства — начнётся установка и их библиотек. В логе это отображается примерно так:
INFO (SyncWorker_1) [homeassistant.util.package] Attempting install of pychromecast==4.0.1
Вот на этом этапе вполне возможны проблемы и разные ошибки в консоли.
Терпеливо ждите пока HA делает свои дела. В идеале в конце лога вы должны увидеть строчку:
INFO (MainThread) [homeassistant.core] Starting Home Assistant
Далее попытайтесь открыть в любом браузере страницу:
http://localhost:8123/Вполне возможно у вас ничего не откроется. Это нормально.
План 2
Нажимайте в консоли Ctrl C, это принудительно остановит HA. Если не получится — закрывайте консоль и запускайте её заново.
И снова вводите в консоли — hass. И снова ждём строчку Starting Home Assistant и пробуем открыть в браузере:
http://localhost:8123/
План 3
Если со второй попытки страница так и не открылась — останавливаем HA и открываем папку с конфигами. Путь до неё показывается сразу после ввода команды hass. Это должно быть что-то вроде:
C:UsersAlexeyAppDataRoaming.homeassistant
Только с именем вашего пользователя. Проще вбить этот адрес сразу в проводнике Windows.
Теперь правим файл configuration.yaml.
Заменяем всё его содержимое на 3 простые строки:
config: frontend: system_health:
Это минимальный набор модулей, необходимый для старта HA и отображения главной страницы. Сильно сократит перечень зависимостей и повысит шансы старта.
Снова запускаем hass и пробуем открыть страницу.
PS
Это не все проблемы с которыми можно столкнуться. Но, надеюсь, вам хватит советов, описанных в статье.
На данный момент инструкция неактуальна. Текущие варианты установки можете посмотреть на официальном сайте HA.
В данной статье будет пошагово описан процесс установки home assistant на ПК под управлением Windows 10.
Важно отметить, что операционная система Windows не является основной для HA, что проявляется в неполной работоспособности программного обеспечения, в связи с чем установку HA на Win10 рекомендуется производить только для ознакомления с возможностями ПО.
Итак, приступим.
-
-
- Первым делом нам нужно установить Python. Идем на официальный сайт, выбираем последнюю версию, проматываем страницу вниз и выбираем нужный нам файл (например Windows x86-64 executable installer). Скачиваем и запускаем.
- При установке выбираем Customize installation -> на второй вкладке оставляем только pip -> на третьей выбираем Add Python to environment variables.
- После того, как Python установится запускаем командную строку: нажимаем Win и R, в появившемся поле вводим cmd и нажимаем Ок.
- Вводим в командной строке pip install homeassistant, нажимаем Enter и ждем пока все установится. В случае ошибок внимательно читаем и делаем что там будет написано. В моем случае не было Visual C++ 14.0. Для исправления – скачиваем Build Tools для Visual Studio с официального сайта, устанавливаем и перезагружаем ПК.
- Программа установлена и для запуска осталось ввести команду hass в командной строке. На данном этапе может появляться много ошибок, возможно придется прервать запуск (Ctrl+C) и запустить заново. Также брандмауэр может попросить разрешить доступ. Разрешаем. В самом конце запуска в консоли должна появиться строчка со следующим содержанием: INFO (MainThread) [homeassistant.core] Starting Home Assistant.
- Далее запускаем браузер и вводим localhost:8123. Если все сделано правильно, то откроется окно регистрации учетной записи. Если ничего не получилось, то попробуйте еще раз выполнить пятый пункт.
- Поздравляю, мы установили Home Assistant на ПК под управлением Windows 10.
-
Ссылки на другие уроки по настройке Home Assistant.
Содержание
- Как установить умный дом Home Assistant
- Запускаем Home Assistant на Windows (Portable)
- Устанавливаем Home Assistant на Windows
- Установка Home Assistant
- Первый запуск Home Assistant
- Windows
- Install Home Assistant Operating System
- Download the appropriate image
- Create the Virtual Machine
- Hypervisor specific configuration
- Start up your Virtual Machine
- Install Home Assistant Core
- Install WSL
- Install dependencies
- Create an account
- Create the virtual environment
- Как установить Home Assistant в Virtualbox на Windows 10
Как установить умный дом Home Assistant
Это статья написана для напоминания, что умный дом стал намного ближе, чем мы думали.
Home Assistant-это open-source платформа для автоматизации, работающая на Python 3. Позволяет отслеживать и контролировать все устройства в доме и автоматизировать действия. Идеально может работать на одноплатном компьютере Raspberry PI.
Что такое умный дом можно почитать в википедии тут и тут.
Давайте по порядку:
1. Центральное ядро
Умный дом нуждается в центральном контроллере (хаб, сервер и т.д.). Это связующее звено между всеми элементами умного дома и пользователем. Бывают распределенные системы без центрального контроллера, но все равно нужен один сборщик информации, который покажет пользователю все актуальные новости каждого устройства
ПК-отличный вариант, если требуется большая нагрузка на сервер, т.к. производительности даже старых ноутбуков хватит вполне (только если вы не будете крутить 4К видео или использовать 10 камер с HEVC кодированием). Из минусов- в 95% случаев активное охлаждение и чтобы подключить обычное реле всегда приходится использовать дополнительные костыли.
Специализированные контроллеры — отличный вариант, если вам нужна надежность и отказоустойчивость. Вероятность отказа промышленного контроллера (при правильных руках) приближается к вероятности появления зомби апокалипсиса. Но есть и минус- программировать и настраивать могут либо те, кто уже автоматизировал несколько конвейеров, либо человек в мозгу которого не нейроны а релейные схемы. И чаще всего интерфейс у них, мягко говоря, аскетичный. К сожалению, я не такой умный, поэтому это вариант точно не для меня.
И тут мы приходим к самому современному варианту — это дешевые одноплатные компьютеры на базе ARM архитектуры. Сейчас их выбор просто огромен, но самый популярный родоначальник Raspberri pi. Из плюсов маленькое энергопотребление, есть пользовательские выводы и удовлетворительная производительность для запуска несложных программ.
Есть еще много экзотических вариантов автоматизации своего очага, например, кровать-будильник на Всемирной выставке 1851 года (изобретатель Теофиль Картер). Или любимое извращенство- ардуино с шилдами (прощу прощение за несерьезный мем)
2. Внешние датчики, контроллеры, элементы управления.
Эта тема настолько обширная, что описать все многодикообразие в данной статье не представляется возможным, поэтому оставим это для будущих статей. Вкратце, есть:
— DIY решения и ардуиноподбные решения
— Китайские решения (пример Sonoff)
— Дорогие красивые решения (пример nest)
Тоже вынесем сие обсуждение в отдельную тему. Сегодня мы будем рассматривать только одну из множества открытых платформ. Обзоры еще будут. Сразу отвечу на вопросы, почему именно она:
а) Огромное количество поддерживаемых сервисов,
б) Легко и бесплатно установить,
в) Приятный интерфейс.
4. Сторонние сервисы
Помогают подключить разные существующие решения и автоматизировать действия на смартфонах и ПК. Типичный пример IFTTT.
Что делать если я не умею программировать или у меня есть деньги?
Отдельно стоят решения современных экосистем от Samsung, Xiaomi, Amazon, Apple, Google и т.д. Соглашусь, что порой их решения выглядят намного красИвее, но средняя заработная плата русского человека примерно 500$, что не позволяет ощутить всю гамму вкусов.
Рекомендуется к приобретению:
1. Raspberry Pi 3 (вероятно подойдут и более старые) 35$
2. MicroSD на 16ГБ не ниже 10 класса( чем быстрее, тем лучше) с адаптером к компьютеру 7$
3. Зарядник MicroUSB на 5В и больше чем 2А 0$ (подошел от старого телефона)
4. Ваше драгоценное время. Бесценно.
5. Опционально монитор с HDMI
После записи, извлекаем флешку и вставляем в распберри пи.
ОБЯЗАТЕЛЬНО НАДО ВСТАВИТЬ В МАЛИНУ ИНТЕРНЕТ-ШНУР.
При подаче питания должна загореться красная лампочка и зеленая начать хаотично мигать. Ждем с кружкой чая 10 минут.
После этого нам надо найти уже веб интерфейс нашей системы умного дома. Для этого есть несколько способов:
1) Посмотреть через hdmi нашу командную строку и найти там IP вида 192.168.1.х ( или любого другого)
2) посмотреть в настройках роутера какой DHCP сервер присвоил адрес новому устройству
3) Воспользоваться сканером сети (например, Advanced IP Scanner Portable)
После этого открываем браузер (не программу для скачивания браузеров, а именно браузер)
И вводим наш IP + :8123 (у меня это 192.168.1.101:8123)
И вуаля! Наша система загрузилась!
На официальном сайте все хорошо описано (но на английском) поэтому, если интересно, смогу написать несколько примеров как это делать в реальной жизни.
Все шаги я записал на видео, поэтому не стесняемся и заходим на видео.
Дорогие читатели, напишите в комментариях, что еще очень хочется увидеть?
Источник
Запускаем Home Assistant на Windows (Portable)
У меня уже была статья про установку Home Assistant на Windows.
В этом варианте его не нужно устанавливать:
Портативная версия Home Assistant под Windows. В комплекте уже есть:
PS: не стоит рассматривать HassWP, как боевое решение системы умного дома на века. Он будет полезен скорее для ознакомления и для экспериментов.
На Win10 не хочет работать
Для работы на Win10 необходимо установить Visual studio c компонентами C++
какой-то совсем не портативный вариант получается, это как за дрезиной тянуть два вагона запчастей
очень интересный вариант.
очень правильное направление.
скажите, кто-ниубудь продолжает разработку этого бандла? Может быть на коммерческой основе?
Источник
Устанавливаем Home Assistant на Windows
Конечно можно! Проблема заключается в том, что не все зависимости Home Assistant легко установятся на любую сборку Windows. Об этом можно почитать тут.
На портале уже была статья о подобной установке. В своей версии я чуть подробнее опишу детали.
Установка Home Assistant
На первом экране выбираем Customize installation.
На втором нам вполне хватит только pip. Остальные выключаем.
И последние галочки про precompile и debug. Возможно они помогут при установке хитрых зависимостей Home Assistant, но это не точно 🙂
Я люблю устанавливать Python в корень диска. Так проще его найти и можно избежать проблем с кривыми путями.
В процессе установки Python я встречал следующие проблемы:
Далее нажимаем на клавиатуре win R и запускаем cmd
В запустившейся консоли вводим :
На этом этапе у вас не должно возникнуть особых проблем. Python и HA должны установиться в практически любую систему.
Первый запуск Home Assistant
Начнётся первый запуск HA. Он может быть достаточно долгим. HA будет скачивать и устанавливать разные библиотеки python, которые требуются конфигурации по умолчанию. А их не мало.
Терпеливо ждите пока HA делает свои дела. В идеале в конце лога вы должны увидеть строчку:
Далее попытайтесь открыть в любом браузере страницу:
Только с именем вашего пользователя. Проще вбить этот адрес сразу в проводнике Windows.
Теперь правим файл configuration.yaml.
Заменяем всё его содержимое на 3 простые строки:
Это минимальный набор модулей, необходимый для старта HA и отображения главной страницы. Сильно сократит перечень зависимостей и повысит шансы старта.
Снова запускае м hass и пробуе м открыть страницу.
Это не все проблемы с которыми можно столкнуться. Но, надеюсь, вам хватит советов, описанных в статье.
Источник
Windows
Install Home Assistant Operating System
Download the appropriate image
Follow this guide if you already are running a supported virtual machine hypervisor. If you are not familiar with virtual machines we recommend installation Home Assistant OS directly on a Raspberry Pi or an ODROID.
Create the Virtual Machine
Load the appliance image into your virtual machine hypervisor. (Note: You are free to assign as much resources as you wish to the VM, please assign enough based on your add-on needs)
Minimum recommended assignments:
All these can be extended if your usage calls for more resources.
Hypervisor specific configuration
After creation of VM go to “Settings” and “Options” then “Advanced” and select “Firmware type” to “UEFI”.
Start up your Virtual Machine
With the Home Assistant Operating System installed and accessible you can continue with onboarding.
Install Home Assistant Core
Install WSL
To install Home Assistant Core on Windows, you will need to use the Windows Subsystem for Linux (WSL). Follow the WSL installation instructions and install Ubuntu from the Windows Store.
As an alternative, Home Assistant OS can be installed in a Linux guest VM. Running Home Assistant Core directly on Windows is not supported.
This guide assumes that you already have an operating system setup and have installed Python 3.8 (including the package python3-dev ) or newer.
Install dependencies
Install the dependencies:
Create an account
Create the virtual environment
First we will create a directory for the installation of Home Assistant Core and change the owner to the homeassistant account.
Next up is to create and change to a virtual environment for Home Assistant Core. This will be done as the homeassistant account.
Once you have installed the required Python package it is now time to install Home Assistant Core!
If this address doesn’t work you may also try http://localhost:8123 or http://X.X.X.X:8123 (replace X.X.X.X with your machines’ IP address).
When you run the hass command for the first time, it will download, install and cache the necessary libraries/dependencies. This procedure may take anywhere between 5 to 10 minutes. During that time, you may get “site cannot be reached” error when accessing the web interface. This will only happen for the first time, and subsequent restarts will be much faster.
Источник
Как установить Home Assistant в Virtualbox на Windows 10
В последнее время, мне как-то надоедает включать свою домашнюю виртуализацию, базирующуюся на Debian 10 + Proxmox 6 и работать с VM из-под браузера. Может конечно если что-то масштабное, то да. А вот с целью побыстрее обкатать то можно на рабочем месте использовать Virtualbox (я против использования Hyper-V )
Итак, рабочая Windows 10 Pro (Version 10.0.18363.592)
Шаг №1: На рабочую Windows 10 Pro устанавливаю VirtualBox 6.1.12 (VirtualBox-6.1.12-139181-Win.exe)
Шаг №2: Скачиваю с официального сайта Home Assistant на момент ( 05.08.2020 ) написания данной заметки vmdk файл hassos_ova-4.11.vmdk.gz (его вес 243 395 КБ ), распаковываю получается файл hassos_ova-4.11.vmdk (его вес 752 128 КБ )
Шаг №3: Создаю VM через Virtualbox
Virtualbox – Машина – Создать
После пока VM еще выключена изменять (через меню «Настроить» на VM ) тип сетевого адаптера с
На «Сетевой мост».
После запускаю VM путем нажатия на кнопку «Запустить»
После в консоли нажимаю клавишу Enter и вижу приглашение на авторизацию:
homeassistant login: указываю учетную запись root
И нажимаю клавишу Enter
После вижу приглашение:
Welcome on Home Assistant command line
ha > В этой консоли нужно ввести слово «login»:
Шаг №4: Теперь зная этот адрес я могу в своей локальной сети обратиться к сервису Home Assistant посредством браузера через URL строку: http://IP&DNS:8123 (http://192.168.10.185:8123 )
http://192.168.10.185:8123/onboarding.html — создаю первый раз учетную запись пользователя
И нажимаю «Создать учетную запись»
Именую свой Home Assistant : к примеру, как ekzhome
Итого я в шагах задокументировал для себя, как под Virtualbox быстро и легко развернуть Home Assistant дабы иметь тестовый полигон настройки чтобы в последствии переносить только реально работающие решения и не засорять боевую систему. Так делаю я, да это почти двойная работа, но что в эксплуатации не должно страдать от тестов. На этом моя заметка завершена, с уважением автор блога Олло Александр aka ekzorchik.
Источник
В последнее время, мне как-то надоедает включать свою домашнюю виртуализацию, базирующуюся на Debian 10 + Proxmox 6 и работать с VM
из-под браузера. Может конечно если что-то масштабное, то да. А вот с целью побыстрее обкатать то можно на рабочем месте использовать Virtualbox
(я против использования Hyper-V
)
Итак, рабочая Windows 10 Pro (Version 10.0.18363.592)
Железо:
Intel® Core™ i3-2120 CPU @ 3.30GHz
RAM: 8Gb
HDD: 250 SSD Samsung
Motherboard: Asus P8H61-M LX3 R2.0
Шаг №1:
На рабочую Windows 10 Pro
устанавливаю VirtualBox 6.1.12 (VirtualBox-6.1.12-139181-Win.exe)
Шаг №2:
Скачиваю с официального сайта Home Assistant
на момент (05.08.2020
) написания данной заметки vmdk
файл hassos_ova-4.11.vmdk.gz
(его вес 243 395 КБ
), распаковываю получается файл hassos_ova-4.11.vmdk
(его вес 752 128 КБ
)
Шаг №3:
Создаю VM
через Virtualbox
Virtualbox – Машина – Создать
Имя: srv-ha
Папка машины: C:VM
Тип: Linux
Версия: Other Linux (64-bit)
И нажимаю "Экспертный режим"
, указываю количество выделяемой данной VM
оперативной памяти, к примеру 1024
и Жесткий диск
выбираю "Использовать существующий виртуальный жесткий диск"
— "Выбрать образ виртуального жесткого диска"
– Добавить
– выбираю распакованный в C:VMhassos_ova-4.11.vmdk
и нажимаю "Открыть"
— "Выбрать"
— и нажимаю "Создать"
После пока VM
еще выключена изменять (через меню "Настроить"
на VM
) тип сетевого адаптера с
Адаптер 1: Intel PRO/1000 MT Desktop (NAT)
На "Сетевой мост".
После запускаю VM
путем нажатия на кнопку "Запустить"
На заметку: Если после запуска идет надпись в консоли VM "FATAL: No bootable medium found! System halted"
, то это значит нужно выключить VM: Машина – Завершить работу
, открыть опять "Настроить"
и в меню "Система"
— вкладка "Материнская плата"
и отменить галочкой
Включить EFI (только специальные ОС): включить галочкой
И нажимаю ОК
, а затем нажимаю "Запустить"
. Вижу, как бегут строки загрузки VM
После в консоли нажимаю клавишу Enter и вижу приглашение на авторизацию:
homeassistant login:
указываю учетную запись root
И нажимаю клавишу Enter
После вижу приглашение:
Welcome on Home Assistant command line
ha >
В этой консоли нужно ввести слово "login":
#
набираю команду nmcli
и вижу свой IP
адрес, полученный от моего DHCP
-сервиса в локальной сети
Шаг №4:
Теперь зная этот адрес я могу в своей локальной сети обратиться к сервису Home Assistant
посредством браузера через URL
строку: http://IP&DNS:8123 (http://192.168.10.185:8123
)
http://192.168.10.185:8123/onboarding.html
— создаю первый раз учетную запись пользователя
Имя: ekzorchik
Логин: ekzorchik
Пароль: 712mbddr@
Подтвердите пароль: 712mbddr@
И нажимаю "Создать учетную запись"
Именую свой Home Assistant
: к примеру, как ekzhome
Часовой пояс: Europe/Moscow
И нажимаю "Далее" - "Готово"
После чего передо мной развернутый из заводского образа разработчиков система домашней автоматизации под Virtualbox
операционной системы Windows 10 Pro
. Когда у меня выдается свободные минуты я разбираю на работе что-то полезное для себя, как процесс самообразования:
Итого я в шагах задокументировал для себя, как под Virtualbox
быстро и легко развернуть Home Assistant
дабы иметь тестовый полигон настройки чтобы в последствии переносить только реально работающие решения и не засорять боевую систему. Так делаю я, да это почти двойная работа, но что в эксплуатации не должно страдать от тестов. На этом моя заметка завершена, с уважением автор блога Олло Александр aka ekzorchik.
Это статья написана для напоминания, что умный дом стал намного ближе, чем мы думали.
Home Assistant-это open-source платформа для автоматизации, работающая на Python 3. Позволяет отслеживать и контролировать все устройства в доме и автоматизировать действия. Идеально может работать на одноплатном компьютере Raspberry PI.
→ Посмотреть демо
Что такое умный дом можно почитать в википедии тут и тут.
Давайте по порядку:
1. Центральное ядро
Умный дом нуждается в центральном контроллере (хаб, сервер и т.д.). Это связующее звено между всеми элементами умного дома и пользователем. Бывают распределенные системы без центрального контроллера, но все равно нужен один сборщик информации, который покажет пользователю все актуальные новости каждого устройства
ПК-отличный вариант, если требуется большая нагрузка на сервер, т.к. производительности даже старых ноутбуков хватит вполне (только если вы не будете крутить 4К видео или использовать 10 камер с HEVC кодированием). Из минусов- в 95% случаев активное охлаждение и чтобы подключить обычное реле всегда приходится использовать дополнительные костыли.
Специализированные контроллеры — отличный вариант, если вам нужна надежность и отказоустойчивость. Вероятность отказа промышленного контроллера (при правильных руках) приближается к вероятности появления зомби апокалипсиса. Но есть и минус- программировать и настраивать могут либо те, кто уже автоматизировал несколько конвейеров, либо человек в мозгу которого не нейроны а релейные схемы. И чаще всего интерфейс у них, мягко говоря, аскетичный. К сожалению, я не такой умный, поэтому это вариант точно не для меня.
И тут мы приходим к самому современному варианту — это дешевые одноплатные компьютеры на базе ARM архитектуры. Сейчас их выбор просто огромен, но самый популярный родоначальник Raspberri pi. Из плюсов маленькое энергопотребление, есть пользовательские выводы и удовлетворительная производительность для запуска несложных программ.
Есть еще много экзотических вариантов автоматизации своего очага, например, кровать-будильник на Всемирной выставке 1851 года (изобретатель Теофиль Картер). Или любимое извращенство- ардуино с шилдами (прощу прощение за несерьезный мем)
2. Внешние датчики, контроллеры, элементы управления.
Эта тема настолько обширная, что описать все многодикообразие в данной статье не представляется возможным, поэтому оставим это для будущих статей. Вкратце, есть:
— DIY решения и ардуиноподбные решения
— Китайские решения (пример Sonoff)
— Дорогие красивые решения (пример nest)
3. Софт
Тоже вынесем сие обсуждение в отдельную тему. Сегодня мы будем рассматривать только одну из множества открытых платформ. Обзоры еще будут. Сразу отвечу на вопросы, почему именно она:
а) Огромное количество поддерживаемых сервисов,
б) Легко и бесплатно установить,
в) Приятный интерфейс.
4. Сторонние сервисы
Помогают подключить разные существующие решения и автоматизировать действия на смартфонах и ПК. Типичный пример IFTTT.
Что делать если я не умею программировать или у меня есть деньги?
Отдельно стоят решения современных экосистем от Samsung, Xiaomi, Amazon, Apple, Google и т.д. Соглашусь, что порой их решения выглядят намного красИвее, но средняя заработная плата русского человека примерно 500$, что не позволяет ощутить всю гамму вкусов.
Итак, поехали!
Рекомендуется к приобретению:
1. Raspberry Pi 3 (вероятно подойдут и более старые) 35$
2. MicroSD на 16ГБ не ниже 10 класса( чем быстрее, тем лучше) с адаптером к компьютеру 7$
3. Зарядник MicroUSB на 5В и больше чем 2А 0$ (подошел от старого телефона)
4. Ваше драгоценное время. Бесценно.
5. Опционально монитор с HDMI
Давайте устанавливать:
1. Скачать удобную программу для записи на флешку. Я рекомендую портативную версию
2. Зайти на сайт и скачать последнюю версию Hassbian
3. Разархивировать основной образ в любую папку.
4. Открыть Etcher
5. Выбрать наш основной образ
6. Выбрать нашу флешку для записи
7. Нажать кнопку старт
8. ???
9. Profit
После записи, извлекаем флешку и вставляем в распберри пи.
ОБЯЗАТЕЛЬНО НАДО ВСТАВИТЬ В МАЛИНУ ИНТЕРНЕТ-ШНУР!!!
При подаче питания должна загореться красная лампочка и зеленая начать хаотично мигать. Ждем с кружкой чая 10 минут.
После этого нам надо найти уже веб интерфейс нашей системы умного дома. Для этого есть несколько способов:
1) Посмотреть через hdmi нашу командную строку и найти там IP вида 192.168.1.х ( или любого другого)
2) посмотреть в настройках роутера какой DHCP сервер присвоил адрес новому устройству
3) Воспользоваться сканером сети (например, Advanced IP Scanner Portable)
После этого открываем браузер (не программу для скачивания браузеров, а именно браузер)
И вводим наш IP + :8123 (у меня это 192.168.1.101:8123)
И вуаля! Наша система загрузилась!
На официальном сайте все хорошо описано (но на английском) поэтому, если интересно, смогу написать несколько примеров как это делать в реальной жизни.
Все шаги я записал на видео, поэтому не стесняемся и заходим на видео.
Дорогие читатели, напишите в комментариях, что еще очень хочется увидеть?
Спасибо за внимание!
Оглавление:
— Умный дом, вопрос цены.
— Установка Home-assistant.
— Настойка Home-assistant.
— GPIO — датчики и реле в Home Assistant
— GPIO — ИК управление в Home Assistant.
— GPIO — BME280 взамен DHT11 в Home Assistant
— GPIO — дисплей LCD1602 I2C в Home Assistant.
Вообще пока есть только желание посмотреть к чему всё это приведет. Так что буду использовать то, что под рукой, стараясь ничего не покупать. Все настраивал из под Kubuntu.
С чего все начинается, конечно выбор железа для сервера…
Home-assistant построен на Python3 и способен работать на различных компьютерах, в т.ч. на Raspberry Pi. Из образа, полноценная Операционная Система Home Assistant ориентирована на Raspberry Pi4, ну по минимуму Pi3.
Полный размер
Raspberry Pi4
Если эффект будет положительным, то потом соберу на Orange Pi PC 2 , есть в наличии.
Полный размер
Orange Pi PC 2: загрузка устройства с USB. ARM Cortex-A53 = 4 ядра, 700 МГц 64-битный.
А пока решил попробовать собрать вообще на Raspberry Pi 1 B+, есть в наличии. Главная идея не перегружать, может зашевелится…
Полный размер
Raspberry Pi1 B+, Процессор 1 ядро 700 МГц 32-битный, RAM 512 МБ LPDDR2 SDRAM.
Устанавливать сервер Home-assistant буду на Debian для Raspberry от DietPi OS.
DietPi OS
ДиетаPi очень интересная вещь на самом деле — ставится ядро и потом, через удобное меню, можно заточить под многое. А без меню вообще под всё…
В связи с тем, что SD карта в таком режиме умрет очень быстро, надо использовать внешний накопитель подключенный по USB. У меня есть HDD 2,5’ 150гБ 700mA и SSD 500Гб 400mA, остановился на SSD (объем излишен конечно), но у него ток потребления ниже.
Программой balenaEtcher на чистый SSD залил DietPi_RPi-ARMv6-Bullseye.img
Прошивка поддерживает Raspberry Pi 1 B+
Для Raspberry Pi 1 B+ пришлось делать хитрый ход конем, для загрузки OC с USB — подробно тут.
* На чистой карте SD создал раздел для загрузки = Fat32 128miB, с флагами boot и lba.
Полный размер
Пример разметки
*Скопировал загрузочный раздел с накопителя SSD на карту SD, для этого:
— Смотрим как разделы называются: sudo fdisk -l
Диск /dev/sdd: 476,96 GiB ***накопитель SSD***
/dev/sdd1 * 8192 270335 262144 128M c W95 FAT32 (LBA)
/dev/sdd2 270336 2097151 1826816 892M 83 Linux
Диск /dev/sdg: 7,37 GiB ***карта SD***
/dev/sdg1 * 2048 264191 262144 128M c W95 FAT32 (LBA)
— Копируем загрузчик c SSD на карту SD : sudo dd if=/dev/sdd1 of=/dev/sdg1
* На SSD удаляем загрузочный раздел и увеличиваем рабочий.
Полный размер
Финальная разметка SSD
* Открываем на карте SD в редакторе файл cmdline.txt и меняем значение root на /dev/sda2:
root=/dev/sda2 rootfstype=ext4 rootwait fsck.repair=yes net.ifnames=0 logo.nologo console=serial0,115200 console=tty
* Вставляем карту SD в Raspberry Pi1 B+, а к его USB подключаем SSD.
Зато теперь система на SSD, а карта SD с разделом загрузки и практически вечная.
Пора установить DietPi OS, а для этого нужен интернет. Все было б просто с роутером, но под рукой немного другой набор… К персональному компу подключен модем, а к нему по LAN Raspberry Pi.
Настраиваем подключение:
Раздача инета на Raspberry в Kubuntu делается элементарно, единственно что сделал это отключил IPv6.
В настройках Kubuntu надо просто правильно выбрать направление.
Теперь осталось, через терминал 🔳, определить IP адрес Raspberry 🤔:
— Если нет Nmap, то устанавливаем его : sudo apt install nmap
— Определяем пул адресов IPv4: ip -4 addr
— Ищем устройство, в моем случае пул адресов 10.42.0.1/24:
sudo nmap -sn 10.42.0.1/24
Nmap scan report for 10.42.0.55 (Raspberry Pi Foundation)
Нужный адрес: 10.42.0.55🤗
Наконец добрались, через терминал 🔳 заходим на Raspberry и начинаем настройку DietPi OS:
sudo ssh root@10.42.0.55
password: dietpi
Как только первый раз попадем в систему автоматически запустится обновление DietPi, а потом пойдут вопросы:
— collect anonymous usage statistics, отправка статистики в DietPi = 0 отказаться.
— global software password, смена глобального пароля
— serial/UART console, взаимодействия с системой без экрана или сети = «Yes» не подключать
— DietPi-Software, настройка DietPi и установка программ.
Первоначально настроил в DietPi-Software (dietpi-software — можно вызывать в терминале):
* DietPi-Config=>Language/Regional Options:
— Выставил Locale : [ru_RU.UTF-8] и Timezone : [Europe/Moscow]
* DietPi-Config=>SSH Server
— Заменил Dropbear на OpenSSH Server.
Для доступа к файловой системе — проводником FileZilla.
* Browse Software :
…
Ничего не Выбрал
Осталось дело за малым, пора переходить к установке сервера Home-assistant.
Итак есть три варианта установки 🤔:
* Из образа не пройдет (ОС Home Assistant) — нет под это железа
* Вариант с контейнером (Home Assistant Core) — тяжеловат получится
* Единственное что остается (Home Assistant Core) 🤫 — установка пакетами
Установка Home Assistant в терминале 🔳:
1. Установка зависимостей:
— Рекомендованные:
sudo apt-get install -y python3 python3-dev python3-venv python3-pip bluez libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5 libturbojpeg0-dev tzdata
— Пришлось добавить к рекомендуемым:
sudo apt-get install -y libxcb-util-dev libpcap-dev
— Обновление python:
sudo pip install —upgrade pip
2. Создаем учетную запись для Home Assistant (после запятых убрать пробелы):
sudo useradd -rm homeassistant -G dialout, gpio, i2c
3. Создаем виртуальную среду:
sudo mkdir /srv/homeassistant
sudo chown homeassistant:homeassistant /srv/homeassistant
sudo -u homeassistant -H -s
cd /srv/homeassistant
python3 -m venv .
source bin/activate
Обновление python:
pip install —upgrade pip
4. Добавляем необходимые пакеты Python:
python3 -m pip install wheel hass-nabucasa pyopenssl
5. Устанавливаем Cargo — менеджер пакетов языка программирования Rust.
В идеале, надо бы перезагрузить Raspberry 🤔.
6. Посмотреть и выбрать релиз можно тут, устанавливаем Home Assistant Core!
pip3 install homeassistant==2022.9.7
7. При первом запуске Home Assistant, будет завершена установка, в терминале 🔳:
hass
Проверяем — заходим в браузере по вычисленному ранее адресу на порт 8123:
10.42.0.55:8123
Сервер поднялся 🤩.
Добавляем Home-assistant в автозагрузку.
Для этого в Raspberry создадим файл:
sudo nano /etc/systemd/system/home-assistant@homeassistant.service
Cо следующим содержимым:
[Unit]
Description=Home Assistant
After=network-online.target
[Service]
Type=simple
User=%i
WorkingDirectory=/home/%i/.homeassistant
ExecStart=/srv/homeassistant/bin/hass -c «/home/%i/.homeassistant»
RestartForceExitStatus=100
[Install]
WantedBy=multi-user.target
*** Чтобы автоматически перезапустить службу Home Assistant после сбоя, в [Service] добавить:
Restart=on-failure
RestartSec=5s
И включим Home Assistant в качестве сервиса, используем терминал 🔳:
sudo systemctl —system daemon-reload
sudo systemctl enable home-assistant@homeassistant
sudo systemctl start home-assistant@homeassistant
Сервер Home-assistant, после включения Raspberry Pi1 B+, стартует через 2 минуты.
****Актуальное в терминале 🔳******
— Выключение Raspberry немедленно: sudo shutdown -h now
— Перезапуск Raspberry: reboot
— Обновление DietPi OS: dietpi-update
— Перезапуск сервера Home-assistant:
sudo systemctl stop home-assistant@homeassistant
sudo systemctl start home-assistant@homeassistant
— Обновление сервера Home-assistant можно посмотреть тут.