ESPhome händisch installieren

Voraussetzung ist eine Python3 Installation

sudo apt-get install python3 python3-dev python3-venv python3-pip libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5

ESPhome wird als neuer Nutzer mit eigenem Homeverzeichnis installiert:

sudo useradd -rm esphome

Während die Konfigurationsdateien später im home landen, wird die ESPhome Installation selber in einem virtuellen Python-Environment im Verzeichnis /srv/esphome/ installiert.

Dazu ersteinmal das Verzeichnis erstellen und die Rechte dem neuen Nutzer esphome zuweisen.

cd /srv
sudo mkdir esphome
sudo chown esphome:esphome esphome

Die Installation wird dann in dem virtuellen Python Environment als Nutzer esphome durchgeführt. Wir wechseln also den Nutzer, gehen in das Installationsverzeichnis, installieren die virtuelle Umgebung und wechseln dann in diese hinein.

sudo -u esphome -H -s
cd /srv/esphome
python3 -m venv .
source bin/activate

noch schnell ein notwendiges Python-Paket installieren mit

python3 -m pip install wheel

und im Anschluss

pip3 install esphome

et voilà! … naja, fast. Prinzipiell kann ESPHome jetzt direkt über die commandline verwendet und gestartet werden. Aber wenn wir schonmal dabei sind, dann richtig.
Erstmal wechseln mit exit wieder zurück zu unserem eigenen Account.
Damit ESPHome mit jedem Neustart des Rechners automatisch aktiviert wird, erstellen wir das System-Startscript /etc/systemd/system/esphome.service mit folgendem Inhalt:

[Unit]
Description=ESPHome Dashboard
After=homeassistant.service
Requires=homeassistant.service

[Service]
Type=simple
User=esphome
Environment="PATH=/srv/esphome/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
WorkingDirectory=/srv/esphome/
ExecStart=/srv/esphome/bin/esphome /home/esphome/config/ dashboard --password GEHEIMESPASSWORT
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target

Dieses script wird nun noch aktiviert und direkt gestartet:

sudo systemctl --system daemon-reload
sudo systemctl enable esphome
sudo systemctl start esphome

ESPHome ist jetzt aktiv und lauscht mit dem Dashboard auf port 6052. http://mei.ne.ip:6052/

Um später ESPHome zu aktualisieren

sudo -u esphome -H -s
cd /srv/esphome
source bin/activate
pip install -U esphome

Möchte man die neuesten Funktionen nutzen, kann es Sinn machen, auch mal die Beta-Version auszuprobieren:

sudo -u esphome -H -s
cd /srv/esphome
source bin/activate
pip install --pre -U esphome

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert