Skrypty Pythona jako urządzenia w Domoticzu. Python plugin Manager.

Obsługa mniej lub bardziej złożonych skryptów w języku Python do dawna jest dostępna w Domoticzu. Wykorzystywane są one do uruchamiania urządzeń, odczytu danych z czujników itp.  W połączeniu z CRON daje to nam możliwość zarządzania tymi danymi w czasie. Pojawiają się coraz częściej bardziej złożone programy napisane w Pythonie dedykowane do Domoticza. Ich instalacja i obsługa na pierwszy rzut oka może być kłopotliwa. Tak przynajmniej mi się wydawało i przez jakiś czas zbierałem siły aby zmierzyć się z tematem. Sprawa zdecydowanie przyśpieszyła po odkryciu Python Plugin Managera.

Jest to proste rozszerzenie umożliwiające  instalację innych skryptów z przyjaznej , rozwijanej listy. Ma ono też możliwość uaktualniania tych skryptów. Jest kompatybilne z Raspberry Pi, natomiast brak jest wsparcia dla Windows. Listę wspieranych skryptów znajdziemy na stronie https://www.domoticz.com/wiki/Plugins.

Instalacja Pythona.

Jeżeli chcemy skorzystać z PP Managera musimy mieć  przynajmniej Python 3.4. U mnie jest jak należy.

FireShot Capture 36 - Portainer_ - http___91.245.83.80_9000_#_contain

W przeciwnym razie należy zaktualizować Pythona.

sudo apt-get install -y python3

Niektóre rozszerzenia wymagają wersji beta Domoticza i biblotek /python3 development, więc je również najlepiej zainstalować. Ja pracuje na wersji stabilnej i zadziałało bez problemu.

sudo apt-get install -y python3-dev

Jeżeli zachodzi taka konieczność aktualizujemy do BETA.

cd ~/domoticz
./updatebeta

Robimy restart i mamy Pythona. U mnie nie zadziałało zrestartowanie usługi,

sudo systemctl restart domoticz.service

pomógł pełen reset.

W razie problemów polecam zajrzeć na: https://www.domoticz.com/wiki/Using_Python_plugins

Instalacja PP Managera.

Przechodzimy do domoticz/plugins i instalujemy rozszerzenie z Github.

cd domoticz/plugins 
git clone https://github.com/ycahome/pp-manager.git PP-MANAGER

 

Nadajemy prawa i restartujemy system. U mnie jak wyżej. Twardy reset.

 
cd PP-MANAGER
chmod +x plugin.py

Użycie PP Managera.

Rozszerzenie pojawi się na liście sprzętu w Domoticzu, jak każde inne wspierane urządzenie.

FireShot Capture 37 - Domoticz - http___91.245.83.80_9009_#_Hardware

Poniżej wybieramy skrypt do instalacji i restartujemy system.

FireShot Capture 39 - Domoticz - http___91.245.83.80_9009_#_Hardware

Uruchomienie przykładowych skryptów.

Na początek zainteresowały mnie dwa pluginy:

  1. Moon Phases – Skrypt aktualizujący kafelek o aktualny stan fazy księżyca.

Wybieramy z listy. Dodajemy i oczywiście restart. Dużo tych restartów ale są niezbędne.

FireShot Capture 40 - Domoticz - http___91.245.83.80_9009_#_Hardware.png

Po restarcie plugin znajdziemy na liście urządzeń.

FireShot Capture 41 - Domoticz - http___91.245.83.80_9009_#_Hardware

Musimy podać Weather Underground API, kraj i miasto.

Zakładamy konto na http://www.wunderground.com i pobieramy klucz. Ścieżka /menu górne/More/Weatcher API for Developers.

FireShot Capture 43 - API I Weather Underground_ - https___www.wunderground.com_weath.png

Dodajemy plugin i oczywiście restart. W katalogu /domoticz/plugins pojawi się katalog MoonPhases. W logach wygląda to tak:

FireShot Capture 45 - Domoticz - http___91.245.83.80_9009_#_Log

Po wszystkim powinniśmy znaleźć nasz księżyc w zakładce /Użytkowe. Ciekawostka, że nie dodajemy już nic w zakładce /Urządzenia. Skrypt sam stworzy kafelek.

FireShot Capture 44 - Domoticz - http___91.245.83.80_9009_#_Utility.png

Mamy dzisiaj „przybywający garbaty księżyc”. Nieuchronnie w stronę pełni idzie. Dla osób mających problemy ze snem w pełnie idealna informacja.

2. Speedtest.

Jako, że pomiar prędkości łącza metodą zaproponowaną we wpisie Monitoring i pomiar szybkości łącza internetowego w Domoticzu trochę mnie zawodzi postanowiłem spróbować tym sposobem. Analogicznie dodajemy skrypt, ustawiamy interwał pomiaru i oczywiście restart.

FireShot Capture 46 - Domoticz - http___91.245.83.80_9009_#_Hardware.png

W zakładce /Użytkowe pojawiają nam się kafelki.

FireShot Capture 48 - Domoticz - http___91.245.83.80_9009_#_Utility.png

Dla mnie bomba. Dwa kliknięcia. Bez kopiowania skryptów, zmiany danych, dodawania urządzeń pilnowania idx.

Na tą chwilę Python plugin Manager (PP-Manager) wspiera 34 pluginy. Każdy znajdzie coś dla siebie. Bardzo chętnie przetestuje kolejne. Zapraszam do podzielenia się wrażeniami.

25 komentarzy do “Skrypty Pythona jako urządzenia w Domoticzu. Python plugin Manager.

  1. U mnie niestety nie działa. Testowane na RPi3 oraz na RPi Zero W, na Domoticzu stabilnym i beta. Za każdym razem to samo, tzn. PP manager się instaluje, w Domoticzu widzę go na liście, ale po dodaniu czegokolwiek z PP manager (np. opisane tu fazy księży czy speed test) i po restarcie Domoticz już nie działa. Jakiś pomysł co może być przyczyną?

    Polubienie

  2. Nie musisz reinstalować systemu, wystarczy zalogować się przez ssh do raspberry i fizyczne usunąć cały katalog z konkretnym pluginem, restart systemu, po tym powinien wstać domoticz i usunięcie tego pluginu ze sprzętu w domoticzu.

    Polubienie

  3. Witam,
    Domoticz V3.9562 – Ubuntu na Odroid… Plugin nie działa do końca. Tzn. pojawia się na liście, ale nic się nie dzieje, nie pojawiają się nowe urządzenia na liście…

    Polubienie

  4. Chyba coś popsułem:-(

    2018-11-15 10:21:42.316 Error: (Plugin) ‚onHeartbeat’ failed ‚FileNotFoundError’.
    2018-11-15 10:21:42.316 Error: (Plugin) —-> Line 156 in ‚/home/pi/domoticz/plugins/xfr_speedtest/plugin.py’, function onHeartbeat
    2018-11-15 10:21:42.316 Error: (Plugin) —-> Line 105 in ‚/home/pi/domoticz/plugins/xfr_speedtest/plugin.py’, function onHeartbeat
    2018-11-15 10:21:42.316 Error: (Plugin) —-> Line 701 in ‚/usr/lib/python3.5/subprocess.py’, function __init__
    2018-11-15 10:21:42.316 Error: (Plugin) —-> Line 1282 in ‚/usr/lib/python3.5/subprocess.py’, function _execute_child

    Polubienie

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s