Kolejny ciekawy gadżet Xiaomi – czujnik zalania.

Chyba można powiedzieć, że jestem już nałogowym kupcem sprzętu Xiaomi 😉

Jakiś miesiąc temu znalazł się u mnie czujnik zalania wodą od Xiaomi. W sumie to przez dwa dni go nie otwierałem, bo myślałem, że poczta dostarczyła mi kolejny termometr. Po sprawdzeniu listy zakupów okazało się, że takowego nie zamawiałem, otworzyłem więc pudełko…

Jasnym stało się, że to jednak nowy gadżet od Xiaomi.

Wygląd – jak zwykle bezbłędny. O tyle szkoda, że – z racji jego wykorzystania – raczej nie będzie go widać…

Parowanie, jak na Xiaomi przystało, to 10 sekund. Wybór typu z aplikacji…

Ściśnięcie czujnika…

I wybranie pokoju oraz nazwy czujnika.

Później ściągniecie pluginu do aplikacji i można używać.

Wchodząc w opcje czujnika mamy domyślnie ustawione alarmy w przypadku wykrycia zalania – Xiaomi Gateway uruchamia syrenę z zadanym dźwiękiem i mruga światłem na czerwono.
Musicie mi już na słowo uwierzyć, że słychać ten alarm dość donośnie, a i kolory dobrane są tak, że rozświetla pół domu. Jedyny problem miałem z wyłączeniem alarmu. Nie udało mi się znaleźć sposobu na wyłączenie migającego światła i musiałem po prostu wyjąć centralkę z gniazdka i włączyć ponownie. Być może aplikacja nie zareagowała odpowiednio.

Co do Domoticz – czujnik działa jak na razie z wersją Beta, na którą się jeszcze nie zdecydowałem. W miarę możliwości postaram się ją sprawdzić i dopisać odpowiednie informacje. Wydaje się, że czekanie na kolejną wersję produkcyjną Domoticz może jeszcze potrwać. Pora chyba powoli myśleć nad przejściem do Home Assistant…

Czajnik Xiaomi z obsługą przez Bluetooth

Chyba powoli można mnie zacząć obwoływać fanem marki Xiaomi 😉
Teraz do kolekcji doszedł Xiaomi Mi Electric Kettle. Raz, że pora wymiany czajnika nadeszła, dwa, że ma kontrolę podtrzymywania ciepła wody, trzy – że ładny 😀
W ogóle ich pomysł z wejściem w start-upy był świetny…
Czajnik jaki jest – każdy widzi, jak to mówią… Ten dotarł dobrze zabezpieczony, w estetycznym, ale minimalistycznym – jak przystało na Xiaomi – opakowaniu. Dla mnie plus – nie potrzebuję krzykliwych 'Super, Newest release, Outstanding' na pudełkach.

Po wyjęciu z pudełka – podstawka, czajnik oraz przejściówka – to jest niestety ciągle bolączka przesyłek z Chin… Kabel jest zawinięty w podstawce, można go rozwinąć.

Plastik bardzo przyjemny w dotyku, dobrze spasowany, stal w środku wydaje się dobra jakościowo. Na pewno trzeba będzie często czyścić i odkamieniać, ze względu na termometr zamontowany na dnie. Mamy 'twardą' wodę, kamień się osadza dość szybko.

Ogólnie nie ma się co rozpisywać, włączamy Bluetooth w telefonie/tablecie, uruchamiamy aplikację i przechodzimy proces parowania. Ważną różnicą jest to, że (jak to z Bluetooth), sparować możemy z

Czajnik możemy w aplikacji przypisać do wybranego pokoju/miejsca w domu.
Aplikacja po jej włączeniu i podłączeniu do czajnika podaje bieżącą temperaturę oraz możliwość wyboru temperatury i czasu utrzymywania podgrzewania.

Dodatkowo kilka opcji konfiguracyjnych do wyboru – czy podgrzewać wodę tylko po wybraniu przycisku oraz czy podgrzewać po wyjęciu i ponownym włożeniu do bazy.

Cudów nie ma – woda jest gorąca albo ciepła, tak jak chcecie. Jesteśmy bardzo zadowoleni.

Jedynym minusem jak dla mnie są chińskie opisy przycisków (wolałbym już obrazki) na uchwycie – trzeba pamiętać, że wrzątek bliżej rączki, podgrzewanie bliżej czajnika 😉

Xiaomi Air Purifier 2 – integracja z Domoticz

W końcu dotarł do nas Xiaomi Air Purifier 2. Udało się znaleźć go w dobrej cenie, wystarczyło poczekać 2 miesiące i już jest 😉 Smog na wsi nie jest tym, co tygrysy lubią najbardziej. Głównie chodzi o zdrowie dzieci.

Sprzęt, jak na Xiaomi przystało – dotarł w zwykłym pudle, bez setki kolorów, ale dobrze zapakowany. Miła niespodzianka – dostarczył go kurier.

Osobiście jestem bardzo zadowolony ze sprzętów tej marki. Działają niezawodnie, cechują się świetnym designem i łatwo się z nimi integrować.

Z tym oczyszczaczem jest podobnie – otwierasz, mówisz 'Ładne to', włączasz, działa.

Po dodaniu do aplikacji (w standardowy dla nich sposób – podłączamy się do WiFi sprzętu i podajemy swoje dane WiFi) możemy od razu nim zarządzać.

Szybka aktualizacja 😉

I jesteśmy online!

Możemy oczywiście dodać widget do telefonu

Ale dobra, to było proste. Bardzo proste.

Teraz wypadałoby go zintegrować z Domoticz, to jest przecież moim głównym celem 😉

Według poradnika z forum Domoticz powinna zadziałać komenda jak poniżej.

sudo apt-get install npm sudo screen

Może i zadziałała, ale nie mogłem później zainstalować miio…

Jak się okazało – chodziło o wersję nodejs. Ruszamy więc z instalacją 'poprawnej' wersji.

sudo curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash –

sudo apt-get install -y nodejs

I już można:

sudo npm install –save miio

sudo npm install -g miio

Teraz już zadziała 'discover' – czyli wyszukiwanie kompatybilnych sprzętów.

sudo miio –discover –sync

Po jej wydaniu musicie zobaczyć IP oczyszczacza i jego status, jak poniżej:

Skoro jest, to jedziemy dalej! Do odważnych świat należy.

Poradniki różnie radzą, niektóre są bardziej skomplikowane, inne mniej. U mnie zadziałało to co poniżej.

Dodajemy skrypt, który będzie wysyłał komendy do oczyszczacza. Ja się uparłem i wszystkie wrzuciłem do folderu /scripts, ponieważ jest archiwizowany co noc.

sudo nano /home/pi/domoticz/scripts/airpurifier.js

#!/usr/bin/node
/* eslint-disable */

// Set path to node modules miio
const miio = require(’miio');

// No need to change any lines in this section
var deviceip = process.argv[2];
var secondarg = process.argv[3];
var thirdarg = process.argv[4];
function exit() {
process.exit(-1);
}

// Power On (on / off specified as true or false)
if ( secondarg === „power” ) {
        setTimeout(exit, 7000);
        console.log(’Sending Power', thirdarg, 'command');
        miio.device({
        address: deviceip
}).then(device => {
                return device.setPower(JSON.parse(thirdarg));
})}

// Status
if ( secondarg === „status” ) {
        miio.device({
        address: deviceip
}).then(device => {
                stats = device.getProperties([ 'power', 'mode', 'aqi', 'temperature', 'humidity' ])
                console.log(stats);
                process.exit();
})}

// Specify favorite manual fan speed (1 to 16) eg usage: fanspeed 16
if ( secondarg === „fanspeed” ) {
        setTimeout(exit, 7000);
        console.log(’Setting manual fan speed to:', thirdarg);
        miio.device({
        address: deviceip
}).then(device => {
                return device.setFavoriteLevel(parseInt(thirdarg));
})}

// Set fan mode option, specify: idle, auto, silent or favorite which needs to be set for manual speed control
if ( secondarg === „fanmode” ) {
        setTimeout(exit, 7000);
        console.log(’Telling device to use', thirdarg, 'fan speed mode');
        miio.device({
        address: deviceip
}).then(device => {
                return device.call(’set_mode', [ thirdarg ])
})}

// Control the device led (specify as bright, dim or off)
if ( secondarg === „led” ) {
        setTimeout(exit, 7000);
        console.log(’Setting device led to:', thirdarg);
        miio.device({
        address: deviceip
}).then(device => {
                return device.setLedBrightness(thirdarg);
})}

// Switch the device buzzer on or off (specify as true or false)
if ( secondarg === „buzzer” ) {
        setTimeout(exit, 7000);
        console.log(’Setting device buzzer to:', thirdarg);
        miio.device({
        address: deviceip
}).then(device => {
                return device.setBuzzer(JSON.parse(thirdarg));
})}


Jeżeli wszystko zrobiliście poprawnie, komenda jak poniżej pokaże jego status:

node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 status

Próbować możecie z różnymi komendami:

node airpurifier.js 192.168.1.115 power true – Włączenie
node airpurifier.js 192.168.1.115 power false – Wyłączenie
node airpurifier.js 192.168.1.115 status – Wyświetlenie statusu
node airpurifier.js 192.168.1.115 led off – Wyłączenie diody led
node airpurifier.js 192.168.1.115 buzzer true – Włączenie sygnałów głosowych
node airpurifier.js 192.168.1.115 fanmode auto – Tryb Auto
node airpurifier.js 192.168.1.115 fanmode favorite – Tryb Ulubiony

node airpurifier.js 192.168.1.115 fanspeed 16 – Maksymalna prędkość wiatraka


No to teraz pora na Domoticz.

Mała aktualizacja!

Dla pewności i wyjaśnienia. Zaczynamy od zdefiniowania nowego Hardware!

Dopiero później na jego podstawie zakładamy dwa Virtual sensor’y.


Dla jakości powietrza – Custom Sensor

Dla temperatury i wilgotności – Temp + Hum


Zapisujemy ich (Devices) IDX
i wstawiamy do skryptu poniżej

sudo nano /home/pi/domoticz/scripts/xair2domoticz.sh

#!/bin/bash

# Get the data
data=$(node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 status)
# Sort it
temperature=$(echo „$data” | grep „temperature” | sed -e s/[^0-9.]//g)
humidity=$(echo „$data” | grep „humidity” | sed -e s/[^0-9.%]//g)
aqi=$(echo „$data” | grep „aqi” | sed -e s/[^0-9.]//g)

# Load it into Domoticz
curl -s „http://192.168.1.200/json.htm?type=command&param=udevice&idx=247&nvalue=0&svalue=${temperature};${humidity};0″
curl -s „http://192.168.1.200/json.htm?type=command&param=udevice&idx=248&svalue=${aqi}”

Nadajemy uprawnienia do uruchamiania:
sudo chmod +x /home/pi/domoticz/scripts/xair2domoticz.sh

I wrzucamy do crontab

crontab -e 
*/15 * * * * sudo ~/domoticz/scripts/xair2domoticz.sh
Działa. Łaski nie robi 🙂 U mnie nazywa się to Aqi (tak prawdę mówiąc to identycznie jak w  poradniku…). Temperatura i wilgotność w odpowiedniej zakładce.
Ok, dane już odbieramy. Teraz wypadałoby nauczyć się nim sterować.

Założyłem Selector Switch (na podstawie Hardware), zmieniłem wartości z domyślnych na:
– Off
– Auto
– Low
– Max
– Silent

Pozostało wpisać skrypt LUA. Nie będę cwaniakował – zmieniłem skrypt autora z forum Domoticz (http://www.domoticz.com/forum/viewtopic.php?t=15537)

Skrypt, na podstawie nazwy urządzenia i jego statusów w Domoticz, wysyła komendy do Xiaomi Air Purifier 2.

sudo nano /home/pi/domoticz/scripts/lua/script_device_xair.lua

commandArray = {}
if devicechanged[’Oczyszczacz powietrza'] == 'Auto' then
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 power true')
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 fanmode auto')
end
if devicechanged[’Oczyszczacz powietrza'] == 'Off' then
    os.execute (’sudo screen -S airpurifieroff -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 power false')
end
if devicechanged[’Oczyszczacz powietrza'] == 'Low' then
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 fanmode favorite')
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 fanspeed 3′)
end
if devicechanged[’Oczyszczacz powietrza'] == 'Max' then
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 fanmode favorite')
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 fanspeed 16′)
end
if devicechanged[’Oczyszczacz powietrza'] == 'Silent' then
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 power true')
    os.execute (’sudo screen -S airpurifieron -d -m node /home/pi/domoticz/scripts/airpurifier.js 192.168.1.115 fanmode silent')
end
return commandArray

I to by było na tyle. Działa, raportuje, oczyszcza. Mam mały problem z czasami nie działającymi ustawieniami Max i Low (komendy wysyłane z linii poleceń działają bez problemu, w powyższym skrypcie może muszę wstawić mały delay). Ale On, Off, Silent, Auto działa bez problemu.

Do tego wypadałoby jeszcze zrobić pobieranie statusu Włączony/Wyłączony i aktualizowanie w Domoticz – automatycznie się to nie dzieje.

Swoją drogą – warto było go nabyć.

Xiaomi Mi Flora i ogólnie BLE

Dzień dobry w ten pochmurny i deszczowy dzień!

Mimo że deszczowo, ale w domu sucho. A jak sucho, to i kwiatki podlewać trzeba.

A do tego się przyda Xiaomi mi flora – czujnik wilgoci, temperatury oraz światła. Ten wpis zacząłem pisać jakieś pół roku temu i tak sobie wisiał nie skończony (poradniki jak czujnik połączyć z Domoticz są również na innych blogach, więc parcia nie było), ale pod kątem mojego kolejnego wpisu postanowiłem go skończyć.

Wpis oparty jest na Raspberry Pi 3, czyli Bluetooth mamy już na pokładzie.

Po wpisaniu

apt-cache policy bluez

dostaniemy zapewne informację wersji 5.23. Trochę stara, nie obsługuje Bluetooth Low Energy. Musimy zainstalować nowszą, przynajmniej 5.3x

Po pierwsze oczywiście, jak zawsze

apt-get update
apt-get upgrade

i instalujemy potrzebne bilbioteki

sudo apt-get install libglib2.0-dev libdbus-1-dev libical-dev libreadline-dev libudev-dev

Później

cd /home/pi

Na moment pisania przeze mnie aktualna wersja bluez to 5.47

wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.47.tar.gz
tar -xvf bluez-5.47.tar.gz
cd bluez-5.47

Ustawiamy zmienne systemowe

sudo ./configure –prefix=/usr –sysconfdir=/etc –localstatedir=/var –enable-tools –disable-test –disable-systemd –enable-deprecated

I kompilujemy wersję

sudo make all

sudo apt-get install python-bluez python-requests

sudo cp attrib/gatttool /usr/bin/ 

lub (wykonanie obu nie zaszkodzi)

sudo cp attrib/gatttool /usr/local/bin/

export PATH=$PATH:~/bluez-5.47/attrib/


I ściągamy kod odpowiedzialny za komunikację z Mi Flora

cd ~ && git clone https://github.com/Tristan79/miflora.git
Kopiujemy folder do folderu ze skryptami Domoticz.
cp -R ~/miflora/ ~/domoticz/scripts/python/miflora
I lecimy dalej:

sudo aptitude install python3 python3-pip
sudo pip3 install pygatt
sudo pip3 install requests
Wchodzimy do folderu bluez:

cd bluez-5.47/

I wykonujemy

sudo tools/btmgmt le on
sudo tools/btmgmt connectable on
sudo tools/btmgmt power on
Dla pewności restartujemy 

sudo hciconfig hci0 down 
sudo hciconfig hci0 up
hciconfig

Później sprawdzamy jaki jest adres MAC naszego modułu Bluetooth
sudo hcitool lescan

Kopiujemy adres MAC naszego modułu Bluetooth, za chwilę się przyda.

W międzyczasie przygotujmy Domoticz. Dodajemy, w sekcji Hardware czujnik MiFlora, jako Dummy.

Następnie, do niego tworzymy Virtual Sensors. Cztery, tak jak poniżej. Uważajcie na typy.

I teraz ważny moment – edycja pliku konfiguracyjnego dla Mi Flora.

sudo nano /home/pi/domoticz/scripts/python/miflora/domoticz.py

Najpierw adres serwera i swoje dane logowania:

domoticzserver   = „192.168.1.200:80”
domoticzusername = „User”
domoticzpassword = „YourPassword”

I na samym końcu możecie zastąpić przykładowe czujniki Waszym adresem MAC i IDX założonych czujników w Domoticz.

print(„n1: Salon”)
update(„C4:7C:8D:62:A9:57″,”132″,”133″,”134″,”135”)

i sprawdzamy

sudo /usr/bin/python3 /home/pi/domoticz/scripts/python/miflora/domoticz.py

Pozostaje wrzucić do cron, aby skrypt automatycznie się wykonywał, na przykład co godzinę.

crontab -e
@hourly sudo /usr/bin/python3 /home/pi/domoticz/scripts/python/miflora/domoticz.py
Działa!

NIC nie stoi na przeszkodzie, aby skrypt rozszerzyć o odczyt wartości baterii. Dodatkowo, osobiście zrealizowałem kiedyś skrypt sprawdzający obecność domowników na podstawie urządzeń Bluetooth – w moim przypadku opaski, ale w sumie każde urządzenie z Bluetooth da się pod to zaadaptować. Nie podobał mi się jednak dość mały zasięg sygnału Bluetooth. Możliwości jednak są!

Życzę powodzenia w ich odkrywaniu.

Serwis Alexa – integracja z Domoticz

Ha! Dzisiaj samo sedno – połączenie serwisu Alexa z Domoticz. Wersja trudniejsza, przez HABridge. Jest skill w postaci Controlicz, ale nie mam wystawionego Domoticz w prosty sposób na 'świat', dlatego zrobiłem połączenie w inny sposób. Wydaje mi się, że lepszy…

Instalacja HABridge (system emulujący oświetlenie Philips Hue) jest banalnie prosta.

Najpierw musimy się upewnić, że odpowiednia wersja Java jest zainstalowana. Powinna być, ale w razie czego:

sudo apt-get update && sudo apt-get install oracle-java8-jdk

Jaka jest najnowsza wersja HABridge możemy dowiedzieć się tutaj:

https://github.com/bwssytems/ha-bridge/releases

Później kilka komend:

cd /home/pi/
mkdir habridge
cd habridge

wget https://github.com/bwssytems/ha-bridge/releases/download/<your version1>/ha-bridge-<your version2>.jar

Czyli w przypadku dla aktualnej wersji na 01.11.2017 wygląda to tak:

wget https://github.com/bwssytems/ha-bridge/releases/download/v4.5.6/ha-bridge-4.5.6.jar

Edit: lepiej będzie na przyszłość (w przypadku aktualizacji) zrobić jak poniżej.

mv ha-bridge-{VERSION}.jar ha-bridge.jar

Przed startem musimy stworzyć plik konfiguracyjny:

sudo nano starthabridge.sh

cd /home/pi/habridge
rm /home/pi/habridge/habridge-log.txt
nohup sudo java -jar /home/pi/habridge/ha-bridge.jar > /home/pi/habridge/habridge-log.txt 2>&1 &
chmod 777 /home/pi/habridge/habridge-log.txt

WAŻNE. Z tego co wyczytałem, HABridge powinien się uruchomić na porcie 8080, ale z jakiegoś powodu zrobił to na 80, a tam mam Domoticz. Musiałem podać port ręcznie, używając parametru:
-Dserver.port=8080

Czyli u mnie zawartość pliku wygląda tak:

cd /home/pi/habridge
rm /home/pi/habridge/habridge-log.txt
nohup sudo java -jar -Dserver.port=8080 /home/pi/habridge/ha-bridge.jar > /home/pi/habridge/habridge-log.txt 2>&1 &
chmod 777 /home/pi/habridge/habridge-log.txt

Ustawienie praw do uruchomienia:

sudo chmod u+x starthabridge.sh

Serwis uruchamiamy komendą

sudo ./starthabridge.sh

Sprawdzić czy działa możemy poleceniem

tail -f habridge-log.txt

Dobrze by było również, aby uruchamiał się przy starcie, to możemy zrobić edytując:

cd /etc/systemd/system

sudo nano habridge.service


I tam wstawić:
[Unit]
Description=HA Bridge
Wants=network.target
After=network.target

[Service]

Type=simple
WorkingDirectory=/home/pi/habridge
ExecStart=/usr/bin/java -jar -Dconfig.file=/home/pi/habridge/data/habridge.config /home/pi/habridge/ha-bridge.jar

[Install]

WantedBy=multi-user.target

Później po kolei:
sudo systemctl daemon-reload

sudo systemctl start habridge.service


sudo systemctl enable habridge.service

Po wystartowaniu musimy przejść do przeglądarki i teraz zaczyna się prawdziwa zabawa!

Wita nas pusta strona HABridge, którą będziemy teraz wypełniać.

Przechodzimy na Bridge Control

Przechodzimy na dół do sekcji Domoticz Names and IP Addresses:

Tam dodajemy swoje dane serwera Domoticz:

I, BARDZO WAŻNE, wracamy na górę i zapisujemy.

Jeżeli wszystko dobrze zrobiliście (wierzę w Was, także na pewno tak 😉 ), na zakładce Domoticz Devices znajdą się Wasze urządzenia. To już ogromny sukces!

Teraz, po wejściu za pomocą przycisku Build na konkretny element (lub, jeżeli macie urządzenia nazwane po angielsku – można je zaznaczyć i wybrać Bulk Add), na początek wybieramy jego nazwę w polu Name, którą będziemy używać z Alexą.

Czyli, coś przyjaznego do wymówienia 😀

Najpierw zabrałem się do opisywania tego dość bogato, kończąc jednak na prostych, szybkich frazach. Inaczej mówi się 'Alexa, turn living room lights on', a inaczej 'Alexa, living on'. Ale akurat tutaj Alexa jest nam bardzo pomocna i w większości wypadków rozpozna różne frazy. W sumie 'Alexa, living room on, 'Alexa, turn living room on', 'Alexa turn living room lights on' – da ten sam efekt.

W tym przykładzie integruję Yeelight, którą mam dodaną w Domoticz z HABridge.

HABridge rozpozna typ i zaproponuje komendę JSON do włączenia i wyłączenia urządzeń.
Miałem przez godzinę zgryz z komendą 'dim', czyli rozjaśnianiem i ściemnianiem. Może coś źle zrobiłem przy definicji w Domoticz, może jakiś inny powód, ale w HABridge musiałem podać w Dim Items, komendę w Target Item ręcznie. Jak poniżej na zrzucie ekranu. Dzięki parametrowi ${intensity.percent} możemy zadać Alexie żądany poziom jasności.

Chwilowo tyle. Przechodzimy do serwisu Alexa albo wydajemy jej polecenie 'Alexa, discover devices'. Dla jasności przestawiam również proces rozpoznawania na stronie, który ogranicza się do wybrania Discover.

TADAM! Już można wołać 'Alexa, left light on', 'Alexa, left light off,' 'Alexa, dim left light to 20′. W tym ostatnim przykładzie odnosimy się do procentów, czyli efekt ten sam jak przy ’20 percent'.

Warto również od razu zrobić backup bazy danych HABridge. Jest dostępny na dole strony, przy pracy z ekranem Home.

Ja dodałem sobie również komendę do skryptu, który co noc robi ma na pendrive backup bazy, skryptów i folderu www Domoticz.

Identycznie jak żarówki zintegrowałem sobie zdalne gniazdka sieciowe. Nieważne czy 433MHz, Xiaomi, czy inne – po prostu działa po wypowiedzeniu komendy.

Xiaomi Mijia Smart Home – pozostałe dwa gadżety

W końcu znalazłem wolną chwilę, aby podłączyć pozostałe dwa elementy: czujnik otwarcia drzwi oraz sterowane gniazdko – wersja ZigBee (bo są i Wifi).

Nie ma się tutaj za bardzo o czym rozpisywać – wszystko podłącza się i paruje błyskawicznie. Jedyne o czym warto pamiętać to to, że potrzeba czegoś ostrego aby wprowadzić czujnik w tryb parowania – wystarczy agrafka lub igła.

Ponownie powtórzę, że sprzęty od Xiaomi są niezwykle ładne, estetyczne i małe – sama przyjemność. Żeby jeszcze aplikacja chciała tak działać…

Gniazdko również jest świetne, jak widać – wspiera wersje z różnych krajów.

Przejściówka jest jednak konieczna, co burzy ostateczny wygląd.
Oba elementy mamy od razu dostępne na liście urządzeń:

Co ciekawe, po pewnym czasie włączyłem wykrywanie nowych urządzeń i Domoticz dodał mi Xiaomi Smart Plug Usage. Czyli raportowanie natężenia prądu w gniazdku.

Edit: Koledzy z grupy Domoticz zeznają, że czasem nie wystarczyło poczekać – musieli na nowo dodać Gateway w aplikacji Mijia.

Z pewnego, nieznanego mi, powodu raporty dzienne, tygodniowe i miesięczne zaczęły mi działać dopiero po przełączeniu odczytu energii z 'From device' na 'Computed.

Co przekłada się na takie wykresy:

I miesięczny raport:

Jak to osiągnąć opisałem w innym poście: https://cezarowy.blogspot.com/2017/10/domoticz-i-koszty-zuzytego-pradu.html

Czujnik zalania działający z RFLink

Dzisiaj, na dobranoc, szybki wpis.

Do kompletu czujników brakowało mi tego ostrzegającego o zalaniu. Zawsze jest jakaś szansa, że w razie pęknięcia węża od pralki zostanę o tym powiadomiony. Okazało się, że i takie można aktualnie dostać niewielkim kosztem kilkunastu złotych. Na 'popularnym chińskim portalu aukcyjnym' można znaleźć je pod hasłem 'Wireless water leakage system'. Ja akurat kupowałem w Polsce, zależało mi na czasie. Są to czujniki działające na częstotliwości 433MHz, czyli świetnie integrujące się z RFLink.

Po zezwoleniu Domoticz na wykrycie nowych czujników i zalaniu czujki wodą, pojawiła się na liście urządzeń. Wystarczyło później dodać ją na listę.

Dodałem ją jako czujnik dymu, ponieważ ma możliwość resetowania po wzbudzeniu, co akurat w tym przypadku jest logiczne. Nie bardzo jednak wiem jak zmienić ikonę, taka więc zapewne pozostanie…

Xiaomi Mijia Smart Home – nowe gadżety przyszły :D

Może żadna to nowość, ale cieszę się niezmiernie. 
Dwa zestawy Xiaomi Mijia znalazły się u mnie w domu. Z pewnych względów jeden pozostanie w aplikacji MiHome i to opiszę dzisiaj.

Czujniki po wyjęciu z pudełek zaskakują rozmiarem. Nie są podobne do tych monstrów, które stoją często w naszych domach. Czujnik temperatury jest niewiele większych od kciuka. Przynajmniej mojego 🙂

Niestety, trzeba wspomnieć o minusach. Bez przejściówki z gniazdek typu chińskiego na polski nie uruchomimy zestawu…

WAŻNE – przejściówki często NIE SĄ załączone w zestawach. Ja kupiłem różne, całkiem ciekawe można znaleźć w Leroy Merlin.

Po podłączeniu centralka przemówi do nas w pięknym, chińskim języku. Niestety, ni w ząb nie rozumiałem co chce mi przekazać 😉

Po włączeniu aplikacji MiHome wybrałem lokalizację Mainland i mogłem wybrać jakie urządzenie chcę sparować – na początek Gateway.

Parowanie jest proste – postępujemy zgodnie z instrukcjami aplikacji – trzy kroki, zgodnie z kolorami na centralce.

Po udanym procesie parowania oraz aktualizacji oprogramowania mamy od razu dostęp do różnych funkcji centralki, które nie są tak ubogie jakby się mogło wydawać:
– nocne światło RGB z możliwością dopasowania koloru oraz jasności
– głośnik i radia internetowe. Da się załadować inne niż chińskie, ale o tym albo w innym wpisie, albo zaktualizuję ten.
– zdarzenia, zegar, ustawianie czasu włączenia/wyłączenia

Sama centralka jako taka w docelowym miejscu interesuje mnie dużo mniej niż termometr, dlatego od razu zabrałem się do połączenia Temperature and humidity sensor. Tutaj również wystarczyło przycisnąć stylowy przycisk na 5 sekund i automatycznie został dodany.

W efekcie mam na bieżąco temperaturę dostępną z każdego miejsca w którym jestem a możliwością przeglądania historii. Cel osiągnięty!

Dodatkowo można dodawać automatykę do centralki:
– gdy pojawimy się w domu
– gdy wychodzimy
– gdy wstajemy
– gdy śpimy
– wyzwalanie alarmu czujnikami – na przykład w przypadku otwarcia drzwi gdy śpimy

Wszystkie urządzenia od Xiaomi integrują się ze sobą, możemy więc na przykład włączyć światło w centralce gdy opaska Mi Band wykryje, że wstaliśmy.

Powodzenia w używaniu i instalowaniu!
W kolejnych wpisach zaawansowany Dashticz oraz podpinanie pozostałych elementów Xiaomi do Domoticz.

Czujnik otwarcia/zamknięcia drzwi w Domoticz

Dzisiaj krótki wpis, bo i temat nie najtrudniejszy, aczkolwiek z małym 'haczykiem'.

Dotarł do mnie ostatnio czujnik otwarcia/zamknięcia drzwi Kerui. Bardzo estetyczne, dobrze działające urządzenie, miałem z nim jednak pewien zgryz w Domoticz. Wysyła osobny sygnał otwarcia drzwi i osobny zamknięcia – co jest akurat dobrym rozwiązaniem, ale nie wiedziałem na początku jak sobie z tym poradzić.

Czujnik Kerui
Z RFLink zadziałał od razu, jak jednak oprogramować osobne sygnały na jednym wskaźniku? 
Okazało się, że trzeba pod sygnał otwarcia podpiąć Sub/Slave Device z sygnałem zamknięcia. Czyli, mówiąc prosto – pod sygnał Drzwi otwarte podpiąłem Drzwi zamknięte.

Działa i cieszy.
P.S. Mała poprawka/sugestia. Mimo tego, że stan ikon poprawnie się zmieniał, nie mogłem ustawić notyfikacji e-mail o otwartych drzwiach. Czego bym nie robił, e-mail przychodził wyłącznie po ich zamknięciu. Zmieniłem typ na Contact i poszło 'od strzału'