Obsługa kamery FOSCAM FI8918W w Domoticzu.

Jakiś czas temu testowałem podłączenie do Domoticza kamery USB. Jednak zależy mi  na łączności bezprzewodowej. Podjąłem walkę  z podłączeniem kamery Original Xiaomi Mijia Smart IP Camera Camcorder 360 Angle Panoramic WIFI 720P. Bardzo fajna kamerka, sterowana poprzez MiHome Xiaomi. Niestety nigdzie nie znalazłem instrukcji jak ją wpiąć do systemu. Znalazłem jej adres IP ale ImageURL jest dla mnie zagadką.

Postanowiłem pójść na łatwiznę. Wybrałem  model kamery  wspierany przez Domoticza. Znajduje się na tej liście. Jest to już trochę wiekowa kamerka i jej możliwości są adekwatne do jej ceny. Używaną można znaleźć już za 80 zł.

3_31

Ale do rzeczy. Ze strony przytoczonej powyżej pobieramy ustawienia kamery:

Foscam FI8918W – Port 80 – Image URL: snapshot.cgi

Konfiguracja kamery w Domoticzu.

Przechodzimy do Konfiguracja/Więcej opcji/Kamery/Dodaj kamerę

FireShot Capture 3 - Domoticz - http___91.245.83.80_9009_#_Cam.png

Użytkownika i hasło sprawdzamy w instrukcji obsługo kamery. Naciskamy Test połączenia i patrzymy co się dzieje. U mnie nic. Ale po naciśnięciu Add kamera pojawia się na liście i działa. Możemy robić zdjęcia i mamy podgląd na żywo.

FireShot Capture 4 - Domoticz - http___91.245.83.80_9009_#_Cam

Integracja kamery z czujnikiem ruchu.

Wymarzyłem sobie, że chciałbym dostać fotkę z kamery na maila po wykryciu ruchu przez czujnik. Nic prostszego. Wchodzimy w Konfiguracja/Ustawienia/Email

FireShot Capture 6 - Domoticz - http___91.245.83.80_9009_#_Setup.png

Ustawienia dla poczty na gmail. Dla innych dostawców należy sprawdzić serwer i port.

Teraz możemy dodać czujnik ruchu do kamery. W sekcji kamer, poniżej ustawiamy aktywne urządzenia. Proponuje ustawić minimalne opóźnienie żebyśmy zdążyli się uśmiechnąć.

FireShot Capture 8 - Domoticz - http___91.245.83.80_9009_#_Cam.png

I tyle. Po wykryciu ruchu przez czujnik, kamera po 2 sek. zrobi zdjęcie i wyślę na adres email jako załącznik. Oczywiście nic nie stoi na przeszkodzie aby trochę rozbudować zdarzenie np.

FireShot Capture 9 - Domoticz - http___91.245.83.80_9009_#_Events.png

I teraz możemy spać spokojnie. „Permanentna kontrola dźwignią zaufania społecznego”. Pozdrawiam.

Monitoring i pomiar szybkości łącza internetowego w Domoticzu

Znalezione obrazy dla zapytania speedtest

Jeżeli u kogokolwiek występują problemy z dostępem do internetu proponuje użycie Domoticza do monitorowania parametrów łącza. Nie jest to może kluczowa użyteczność domu inteligentnego ale warta uruchomienia. Jeżeli zgromadzimy większą liczbę odczytów będziemy mogli określić czy w określonych porach nie spada nam transfer.

1.Instalujemy speedtest

sudo apt-get install speedtest-cli

2. Tworzymy 3 wirtualne sensory ( np. ping, download, upload ). Ustawiamy typ czujnika na Castom Sensor a Etykieta Axis to nasza jednostka miary.

screenshot_20170103_200128

Oczywiście zapamiętujemy idx z zakładki Urządzenia do użycia w skrypcie.

3. Tworzymy skrypt ( np. st2domo.sh ).

$ sudo nano st2domo.sh

#!/bin/bash

#setup
host=192.168.2.21
port=8080
username=
password=
pingidx=34
downloadidx=35
uploadidx=36

# no need to edit
speedtest-cli --simple > output.txt
ping=$(cat output.txt | sed -ne 's/^Ping: \([0-9]*\.[0-9]*\).*/\1/p')
download=$(cat output.txt | sed -ne 's/^Download: \([0-9]*\.[0-9]*\).*/\1/p')
upload=$(cat output.txt | sed -ne 's/^Upload: \([0-9]*\.[0-9]*\).*/\1/p')

#output if you run it manually
echo "ping = $ping ms"
echo "download = $download Mbps"
echo "upload = $upload Mbps"

curl -s -i -H "Accept: application/json" "http://$username:$password@$host:$port/json.htm?type=command&param=udevice&idx=$pingidx&svalue=$ping"
curl -s -i -H "Accept: application/json" "http://$username:$password@$host:$port/json.htm?type=command&param=udevice&idx=$downloadidx&svalue=$download"
curl -s -i -H "Accept: application/json" "http://$username:$password@$host:$port/json.htm?type=command&param=udevice&idx=$uploadidx&svalue=$upload"

4. Uzupełniamy skrypt o nasze unikalne dane.

host = adres serwera domoticz (. np. 192.168.1.158)
port = port (np. 8080)
username = nazwa użytkownika w systemie ( może zostać puste )
password = hasło użytkownika w systemie ( może zostać puste )
pingidx = numer idx dla czujnika „ping”
downloadidx = numer idx dla czujnika „download”
uploadidx = numer idx dla czujnika „upload”

5. Nadajemy prawa do wykonywania pliku.

$ chmod +x st2domo.sh

6. Edytujemy crona, aby skrypt wykonywał się cyklicznie ( u mnie co godzinę )

$ crontab -e

na końcu dopisujemy:

$ @hourly       /ścieżka/do/skryptu/st2domo.sh

7. Restartujemy system i co godzinę otrzymamy odczyty jakości połączenia internetowego.

Po uruchomieniu skryptu st2domo.sh powinniśmy otrzymać:

screenshot_20170103_195744

Natomiast w zakładce „użytkowe” zobaczymy dane na kafelkach.

screenshot_20161221_183637

Obsługa gniazdek WIFI, czyli jak to zrobić bez kabli.

Jakiś czas temu postanowiłem spróbować podłączyć do Domoticza jakieś gniazdko sterowane przez sieć. Z uwagi na to, iż cena markowych urządzeń jest jednak trochę zaporowa kupiłem na Aliexpress.com takie oto cudo:
UK-Plug-Orvibo-S20-Wifi-Smart-Switch-Power-Adapter-Remote-Control-Smart-Socket-Smart-Home-Automation.jpg_640x640
Przy cenie poniżej $20 warto było zaryzykować.
Instalacja jest banalnie prosta. Pobieramy przez kod QR aplikacje na telefon i parujemy urządzenia. Aplikacja jest po angielsku ( co nie jest regułą ) więc nie powinna nastręczać trudności z obsługą. Gdy już sprawdziliśmy, że gniazdko da się obsłużyć smartphonem spinamy je z Domoticzem.

Integracja Orvibo S20 z Domoticzem.

Jedyną informacje jaką musimy zdobyć to MAC adres urządzenia w sieci. Ja wykorzystuje do tego aplikacje FING.
Po odświeżeniu sieci znajdujemy na liście urządzenie Hi-flying electronics technology i  odczytujemy  MAC adres ( poniżej adresu IP ). U mnie jest to AC:CF:23:9C:A3:D6. Teraz pozostaje tylko napisać skrypt:
Plik kopiujemy do /home/pi/domoticz/scripts. Nic w nim nie zmieniamy. Nadajemy mu nazwę orvibo-s20.pl. Następnie nadajemy prawa do wykonywania skryptu:
sudo chmod 777 orvibo-s20.pl
Teraz przechodzimy do Domoticza i dodajemy sprzęt. Wybieramy typ „Dummy” czyli wirtualne czujniki. Po dodaniu sprzętu
zrzut ekranu42.png
i na górze naciskamy „Utwórz wirtualne czujniki”. Wybieramy typ czujnika „Przełącznik” i nadajemy mu nazwę.
zrzut ekranu44
Przechodzimy teraz do zakładki „Przełączniki” na górze ekranu, odnajdujemy nasze urządzenie i naciskamy edycję i wypełniamy pola, podając ścieżkę do pliku i MAC adres gniazdka, jak na zdjęciu poniżej.
zrzut ekranu45.png
I to tyle.
Po naciśnięciu żarówki włączy się nasze urządzenie. Oczywiście możemy stosować tu plany czasowe, powiadomienia czy kontrolę logów. Tym sposobem możemy sterować wszystkimi urządzeniami podłączonymi do gniazdek w domu.