Witam, dopiero się zapisałem na grupę, robię już trzeciego domoticza, tym razem na malince 4, poprzednie były na 1 i 3.
Zainstalowałem wszystko tzn: domoticz, influxDB i grafanę
Problem mam taki:
po dodaniu w urządzeniach "Generic sysfs GPIO"
pokazały mi się uruchomione wcześnie piny gpio (2 z czujnikami do drzwi i 2 z przekaźnikami)
wszystko ładnie odpaliło i chodziło do restartu.
Po restarcie czujniki do drzwi chodziły dalej ale przy próbie przełączenia przekaźnika pokazywało się:
"Error sending switch command, check device/hardware (idx=12) !"
zacząłem sprawdzać czy można przełączać z poziomu systemu:
"echo 1 > /sys/class/gpio/gpio17/value" --> działa
więc zacząłem szukać w samym domoticzu.
Okazało się że jakakolwiek zmiana w "sprzęcie" (tym Generic sysfs GPIO), dzała cuda i po upgrade sprzętu przekaźniki chodzą,
okazało się że nie musi być żadnej zmiany wystarczy tylko wczytać i dać upgrade (bez zmiany).
Nie jestem zbyt wgłębiony w domoticza więc zdecydowałem się na drogę na około:
Wykorzystałem interface json, dopisałem do pliku uruchomiającego domoticz.sh linijkę z upgrade sprzętu:
curl -u : -s -i -H "Accept: application/json" "http://localhost:8080/json.htm?type=command¶m=updatehardware&htype=102&name=&enabled=true&idx=&Mode1=1&Mode2=50"
Mam nadzieję że komuś się to przyda, a jak nie to może mnie się przyda kiedyś.
Niestety okazuje się że więcej "urządzeń" nie chodzi w ten sposób, dodałem dzisiaj konwerter USB->1wire, efekt jest taki sam, nie odbiera danych w domoticz (dane w systemie są) i podobnie jak gpio, po "upgrade" sprzętu wszystko rusza.
Nie wiecie czy to jakiś "bug", a może ktoś będzie wiedział co przestawić, poprawić w domoticzu?
Chyba znalazłem rozwiązanie, z logów wynikało że podpięcie 1wire startowało później niż domoticz.
Robię teraz tak:
Dodałem do rc.local na końcu wpis który po upływie 10 sekund restartuje domoticza.
Wygląda na to że wszystko chodzi poprawnie.
@diunida Dziwnie to się u Ciebie zachowuje , po zdeklarowaniu GPIO w pliku domoticz.sh i odpaleniu Generic sysfs GPIO , mogę dowolną ilość razy restartować malinę i zawsze GPIO OUT działają
Może zamiast kombinować z rc.local i dodwać dodatkowe wpisy ustaw żeby domoticz startował po otrzymaniu prawidłowego czasu z ntp
jak nie masz to zainstaluj
sudo apt install ntp
edytuj /etc/init.d/domoticz.sh i po
do_start()
{
wkej
ntp-wait
if [[ $? -ne 0 ]];then
echo ntp-wait did return with an error condition
exit 1
fi
potem przeładuj
sudo systemctl daemon-reload