---edit---
Uwaga. Do poprawnej pracy wymagana jest wersja płytek 2.3.0. Na nowszych wystepują problemy.
-------------
W dniu dzisiejszym po dwóch tygodniach prac jestem gotów zaprezentować nowe oprogramowanie, które umożliwia nam połączenie naszej Supli z centralą alarmową SATEL INTEGRA.
Przedstawiam: SuplaSatelIntegrator
Oprogramowanie umożliwia wyzwolenie sceny w momencie:
- uzbrojenia 1 z 32 stref - możliwe definiowania łącznie 32 scen po jednej na strefę;
- alarm 1 z 32 stref - możliwe definiowania łącznie 32 scen po jednej na strefę;
- naruszenie 1 z 128 wejść - możliwe definiowania łącznie 128 scen po jednej na wejście;
- wyzwolenie 1 z 128 wyjść - możliwe definiowania łącznie 128 scen po jednej na wyjście.
Podsumowywując:
Dla każdego wejścia, wyjścia i strefy można w sumie zdefiniować 320 akcji
Przykładowe akcje:
- w momencie akcji alarmowej strefy 2 uruchom wszystkie światła w domu na czas 60 sekund.
- w momencie uzbrojenia strefy 3 (Garaż) wyłącz wszystkie gniazdka w tym pomieszczeniu
- w momencie naruszenia wejścia 14 (Czujnik podczerwieni Klatka schodowa piętro) zapal światło na korytarzu na czas 30 sekund.
Wszystkie akcje (sceny)definiowane są na SUPLA.FRACZ.COM, do programu należy wpisać adres URL i TOKEN, po czym skompilować cały plik.
Do poprawnej pracy wymagany jest moduł ETHM-1 oraz centrala alarmowa SATEL INTEGRA - oprogramowanie testowane na SATEL INTEGRA 128 (firmware 1.17) i ETHM-1 (wersja bez PLUS - firmware 1.07). Dodatkowo w centrali musi być uruchomiona funkcja INTEGRACJA.
Program w załączniku.
Zapraszam do testowania i opiniowania.
Pozdrawiam, Duch__
Instrukcja:
Uzupełniamy dane naszej sieci WIFI:
Kod: Zaznacz cały
const char* adres_wifi = "wifi";
const char* haslo_wifi = "pasword";
Uzupełniamy dane naszego modułu ETHM-1 firmy SATEL, oczywiście w centrali MUSI być włączona INTEGRACJA bez opcji szyfrowania.
Kod: Zaznacz cały
const char* Satel_host = "192.168.1.X"; //Adres IP modułu ETHM-1 firmy SATEL - testowane na wersji ETHM-1 bez PLUS
const int Satel_Integracja_Port = XXXX; //Port modułu ETHM-1 - testowane na wersji ETHM-1 bez PLUS
Uzupełniamy dane serwera do wykonywania scen. Jeśli korzystarz ze skryptów kolegi @Fracz to nie trzeba nic zmienić
Kod: Zaznacz cały
const char* remote_host = "supla.fracz.com";
const int remote_port = 443;
W tej części ustawiamy sobie metodą kopiuj/wklej które linie (czujki), wyjście, uzbrojone strefy, strefy w alarmie nas interesują, oraz akcje które mają się wykonać po połączeniu z SUPLA.FRACZ.COM
Wejścia (linie) można ustawić w zakresie 1-128 (dla centrali INTEGRA 128), 1-64 (dla centrali INTEGRA 64), 1-32 (dla centrali INTEGRA 32);
Wyjścia można ustawić w zakresie 1-128 (dla centrali INTEGRA 128), 1-64 (dla centrali INTEGRA 64), 1-32 (dla centrali INTEGRA 32);
Strefy można ustawić w zakresie 1-32 (dla centrali INTEGRA 128), 1-32 (dla centrali INTEGRA 64), 1-32 (dla centrali INTEGRA 32);
Strefy w alarmie można ustawić w zakresie 1-32 (dla centrali INTEGRA 128), 1-32 (dla centrali INTEGRA 64), 1-32 (dla centrali INTEGRA 32);
Kod: Zaznacz cały
//**************************************************DEKLARACJA SCEN NA STANY SYSTEMU*****************************************************************************************************
if(wyjscie[125] == 1 && wyjscie_old[125] == 0){ //Jesli wyjscie 125 zostalo wyzwolone
wyjscie_old[125] = 1;
adr_url = "/api/scenes/execute/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
token = "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
goto wyslij_do_remote_host;
}
if(wejscie[31] == 1 && wejscie_old[31] == 0){ //Jesli wejscie 31 zostalo naruszone
wejscie_old[31] = 1;
adr_url = "/api/scenes/execute/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
token = "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
goto wyslij_do_remote_host;
}
if(strefa_uzb[16] == 1 && strefa_uzb_old[16] == 0){ //Jesli strefa 16 zostala uzbrojona
strefa_uzb_old[16] = 1;
adr_url = "/api/scenes/execute/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
token = "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
goto wyslij_do_remote_host;
}
if(strefa_alarm[13] == 1 && strefa_alarm_old[13] == 0){ //Jesli strefa 13 jest w alarmie
strefa_alarm_old[16] = 1;
adr_url = "/api/scenes/execute/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
token = "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
goto wyslij_do_remote_host;
}
//***************************************************************************************************************************************************************************************