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.
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.
Poniżej wybieramy skrypt do instalacji i restartujemy system.
Uruchomienie przykładowych skryptów.
Na początek zainteresowały mnie dwa pluginy:
- 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.
Po restarcie plugin znajdziemy na liście urządzeń.
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.
Dodajemy plugin i oczywiście restart. W katalogu /domoticz/plugins pojawi się katalog MoonPhases. W logach wygląda to tak:
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.
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.
W zakładce /Użytkowe pojawiają nam się kafelki.
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.
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ą?
PolubieniePolubienie
Nie rozumiem. Po restarcie nie działa Domoticz, PP manager, czy skrypt np. speed test ? Co widać w logach?
PolubieniePolubienie
Niestety – dość częsty problem. Pluginy w Domoticz, z tego co widzę, to taka trochę loteria – jednym działają bez problemu, niektórym nie. Ja po wielu testach wybrałem tylko dwa pluginy, które nigdy mi nie ‚wywalają’ Domoticz i się ich trzymam.
PolubieniePolubienie
Może nie wprost to napisałem, ale nie działa Domoticz, tzn. wchodząc przez www widzę komunikat Domoticz offline.
PolubieniePolubienie
To dziwne. Jeszcze mi się nie zdarzyło aby jakiś skrypt zabił Domoticza. System trzeba później reinstalować ? Jest odpowiednia wersja Pythona ? Popatrz może https://www.domoticz.com/wiki/Using_Python_plugins
PolubieniePolubienie
Python jest w wersji 3.5.3.
Po tym muszę od nowa system reinstalować bo Domoticz się nie podnosi.
PolubieniePolubienie
A jaki system ? I wersja systemu?
PolubieniePolubienie
Domoticz Domoticz V3.8153
A system to Raspbian Stretch, przy logowaniu jest taki numerek 4.14.34-v7+
PolubieniePolubienie
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.
PolubieniePolubienie
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…
PolubieniePolubienie
Witam. Robiłeś restart systemu jak pisałem. U mnie bez tego nie szło. Plugin pojawiał się na liście urządzeń ale dopiero po restarcie można było go znaleźć w sprzęcie.
PolubieniePolubienie
Tak, robiłem … Czy to przypadkiem nie jest wina uprawnień?
PolubieniePolubienie
[…] możemy zainstalować poprzez Python Plugin Manager. Jak to zrobić pisałem tu, albo bezpośrednio z […]
PolubieniePolubienie
Zainstalowałem PP Menager ale na liście gdzie się wybiera pluginy nie ma SVT
PolubieniePolubienie
Zrobiłeś odpowiednią ilość restartów? Po instalacji PP restart. Później wybór SVT i restart. I dopiero będziesz mógł znaleźć SVT na liście sprzętu. A inne pluginy widzisz ?
PolubieniePolubienie
Inne pluginy są widoczne ,tak robiłem restarty.Nie wiem co może być nie tak
PolubieniePolubienie
Niestety u mnie też nie ma. Chyba plugin wyleciał z PP Managera
PolubieniePolubienie
Szkoda bo mi zależało na tym terostacie
PolubieniePolubienie
Spróbuj z GIT, tak jak opisałem w poście https://raspberrywpraktyce.wordpress.com/2018/09/23/domoticz-jako-wirtualny-termostat-sterujacy-komfortem-cieplnym-w-domu/
PolubieniePolubienie
Witam. U mnie sie pojawia plugin lecz po dodaniu, otrzymuje komunikat iz dodane urzadzenie nie bedzie widoczne w zakladce urzadzenia .Jakies pomysly ?
PolubieniePolubienie
Problem rozwiazany. ponowne dodanie i aktualizacja pomogla
PolubieniePolubienie
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
PolubieniePolubienie
Witaj. A wcześniej działało, czy świeża instalacja ? Restarty zrobione? Wersja Pythona odpowiednia? Ten PP Manager to trochę loteria. Moim zdaniem do stabilności trochę mu brakuje.
PolubieniePolubienie
Świeża instalacja , nie działało wcześniej, restarty wielokrotne, wersja Pythona chyba aktualna ..
PolubieniePolubienie
Dan K
A zainstalowałeś speedtest na raspery ? 😀
sudo apt-get install speedtest-cli
PolubieniePolubienie