{"id":55356,"date":"2020-01-18T00:00:00","date_gmt":"2020-01-17T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/lytko-obedinyaet"},"modified":"2020-02-18T14:03:28","modified_gmt":"2020-02-18T11:03:28","slug":"lytko-obedinyaet","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/news\/lytko-obedinyaet","title":{"rendered":"Lytko spojuje","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>N\u011bjakou dobu zp\u00e1tky jsme v\u00e1m p\u0159edstavili <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/474420\/\">inteligentn\u00ed termostat<\/a><\/noindex>. Tento \u010dl\u00e1nek byl p\u016fvodn\u011b navr\u017een jako uk\u00e1zka jeho firmwaru a syst\u00e9mu \u0159\u00edzen\u00ed. Ale abychom vysv\u011btlili logiku fungov\u00e1n\u00ed termostatu a to, co jsme implementovali, je nutn\u00e9 nast\u00ednit celou koncepci jako celek.<\/p>\n<p><img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/2cb26fc59fd6708614e52873f2b5fd22.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h3>O automatizaci<\/h3>\n<p>\nAutomatizaci lze podm\u00edn\u011bn\u011b rozd\u011blit do t\u0159\u00ed kategori\u00ed:<br \/>\n<u>Kategorie 1<\/u> \u2014 jednotliv\u00e1 \"inteligentn\u00ed\" za\u0159\u00edzen\u00ed. Kupujete od r\u016fzn\u00fdch v\u00fdrobc\u016f \u017e\u00e1rovky, varn\u00e9 konvice atd. Plusy: ka\u017ed\u00e9 za\u0159\u00edzen\u00ed roz\u0161i\u0159uje mo\u017enosti a zvy\u0161uje pohodl\u00ed. Minusy: pro ka\u017ed\u00e9ho nov\u00e9ho v\u00fdrobce je nutn\u00e1 vlastn\u00ed aplikace. Protokoly za\u0159\u00edzen\u00ed r\u016fzn\u00fdch v\u00fdrobc\u016f nejsou \u010dasto vz\u00e1jemn\u011b kompatibiln\u00ed.<\/p>\n<p><u>Kategorie 2<\/u> \u2014 instalace jednodeskov\u00e9ho PC nebo x86 kompatibiln\u00edho za\u0159\u00edzen\u00ed. To odstra\u0148uje omezen\u00ed v\u00fdpo\u010detn\u00edho v\u00fdkonu, a na tomto stroji je nainstalov\u00e1n MajorDoMo nebo jak\u00fdkoli jin\u00fd serverov\u00fd distribuce pro \u0159\u00edzen\u00ed chytr\u00e9 dom\u00e1cnosti. Takto jsou za\u0159\u00edzen\u00ed v\u011bt\u0161iny v\u00fdrobc\u016f spojena v jednom informa\u010dn\u00edm prostoru. Tedy vznik\u00e1 vlastn\u00ed server pro chytrou dom\u00e1cnost. Plusy: kompatibilita pod jednotn\u00fdm centrem, kter\u00e1 nab\u00edz\u00ed roz\u0161\u00ed\u0159en\u00e9 mo\u017enosti pro \u0159\u00edzen\u00ed. Minusy: p\u0159i poru\u0161e serveru se cel\u00fd syst\u00e9m vrac\u00ed do st\u00e1dia 1, tj. st\u00e1v\u00e1 se nesourod\u00fdm nebo zbyte\u010dn\u00fdm.<\/p>\n<p><u>Kategorie 3<\/u> \u2014 nejextr\u00e9mn\u011bj\u0161\u00ed varianta. V r\u00e1mci opravy se zakl\u00e1daj\u00ed v\u0161echny komunikace a duplikuj\u00ed se v\u0161echny syst\u00e9my. Plusy: v\u0161e je dot\u00e1hnuto k dokonalosti a pot\u00e9 se d\u016fm st\u00e1v\u00e1 skute\u010dn\u011b inteligentn\u00edm. Minusy: extr\u00e9mn\u00ed cena ve srovn\u00e1n\u00ed s kategoriemi 1 a 2, nutnost prom\u00fd\u0161len\u00ed v\u0161eho dop\u0159edu a zohledn\u011bn\u00ed ka\u017ed\u00e9ho detailu.<\/p>\n<p>V\u011bt\u0161ina u\u017eivatel\u016f si vyb\u00edr\u00e1 variantu jedna a pot\u00e9 postupn\u011b p\u0159ech\u00e1z\u00ed na variantu dv\u011b. A nakonec se ti nejodoln\u011bj\u0161\u00ed dostanou a\u017e k variant\u011b 3. <\/p>\n<p>Existuje v\u0161ak varianta, kterou lze nazvat distribuovan\u00fdm syst\u00e9mem: ka\u017ed\u00e9 jednotliv\u00e9 za\u0159\u00edzen\u00ed bude jak serverem, tak klientem. V podstat\u011b je to pokus vz\u00edt a spojit variantu 1 a variantu 2. Vz\u00edt v\u0161echny jejich v\u00fdhody a vylou\u010dit nev\u00fdhody, naj\u00edt zlatou st\u0159edn\u00ed cestu. <\/p>\n<p>Mo\u017en\u00e1 n\u011bkdo \u0159ekne, \u017ee takov\u00e9 \u0159e\u0161en\u00ed u\u017e bylo vyvinuto. Ale tato \u0159e\u0161en\u00ed jsou \u00fazce specializovan\u00e1; pro lidi znal\u00e9 programov\u00e1n\u00ed. Na\u0161\u00edm c\u00edlem je sn\u00ed\u017eit vstupn\u00ed bari\u00e9ru do podobn\u00fdch distribuovan\u00fdch syst\u00e9m\u016f, a to jak ve form\u011b koncov\u00fdch za\u0159\u00edzen\u00ed, tak ve form\u011b integrace st\u00e1vaj\u00edc\u00edch za\u0159\u00edzen\u00ed do na\u0161eho syst\u00e9mu. Pokud jde o termostat, u\u017eivatel jednodu\u0161e odstran\u00ed sv\u016fj star\u00fd termostat, nainstaluj\u00ed chytr\u00fd a p\u0159ipoj\u00ed k n\u011bmu dostupn\u00e9 senzory. Bez jak\u00fdchkoli dal\u0161\u00edch akc\u00ed.<\/p>\n<p>Zva\u017eme integraci do na\u0161eho syst\u00e9mu na p\u0159\u00edkladu. <\/p>\n<p>P\u0159edstavme si, \u017ee m\u00e1me v s\u00edti 8 modul\u016f Sonoff. N\u011bkter\u00fdm u\u017eivatel\u016fm bude sta\u010dit ovl\u00e1d\u00e1n\u00ed p\u0159es cloud Sonoff (kategorie 1). N\u011bkte\u0159\u00ed za\u010dnou pou\u017e\u00edvat alternativn\u00ed firmware a plynule p\u0159e\u0161li do kategorie 2. V\u011bt\u0161ina alternativn\u00edch firmware funguje na stejn\u00e9m principu: p\u0159enos dat na MQTT server. OpenHub, Majordomo nebo jak\u00fdkoli jin\u00fd slou\u017e\u00ed jednomu c\u00edli \u2013 sjednotit rozt\u0159\u00ed\u0161t\u011bn\u00e1 za\u0159\u00edzen\u00ed do jedn\u00e9ho informa\u010dn\u00edho prostoru, um\u00edst\u011bn\u00e9ho bu\u010f na internetu, nebo v m\u00edstn\u00ed s\u00edti. Tud\u00ed\u017e je p\u0159\u00edtomnost serveru nezbytn\u00e1. Odtud vyvst\u00e1v\u00e1 hlavn\u00ed probl\u00e9m \u2013 pokud server sel\u017ee, cel\u00fd syst\u00e9m p\u0159est\u00e1v\u00e1 fungovat autonomn\u011b. Aby se tomu p\u0159ede\u0161lo, syst\u00e9my se slo\u017eit\u011bj\u0161\u00ed, p\u0159id\u00e1vaj\u00ed se manu\u00e1ln\u00ed ovl\u00e1dac\u00ed prvky, kter\u00e9 duplikuj\u00ed automatizaci v p\u0159\u00edpad\u011b selh\u00e1n\u00ed serveru. <\/p>\n<p>My jsme se ale vydali jinou cestou, kde ka\u017ed\u00e9 za\u0159\u00edzen\u00ed je sob\u011bsta\u010dn\u00e9. T\u00edm p\u00e1dem server nehraje rozhoduj\u00edc\u00ed roli, ale pouze roz\u0161i\u0159uje funk\u010dnost.<\/p>\n<p>Vra\u0165me se k my\u0161lenkov\u00e9mu experimentu. Znovu vezmeme stejn\u00fdch 8 modul\u016f Sonoff a nainstalujeme do nich firmware Lytko. Ve v\u0161ech firmware Lytko je implementov\u00e1na funkce <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Simple_Service_Discovery_Protocol\">SSDP<\/a><\/noindex>. SSDP je s\u00ed\u0165ov\u00fd protokol zalo\u017een\u00fd na sad\u011b internetov\u00fdch protokol\u016f, kter\u00fd slou\u017e\u00ed k oznamov\u00e1n\u00ed a objevov\u00e1n\u00ed s\u00ed\u0165ov\u00fdch slu\u017eeb. Odpov\u011b\u010f na dotaz m\u016f\u017ee b\u00fdt jak standardn\u00ed, tak roz\u0161\u00ed\u0159en\u00e1. Do t\u00e9to odpov\u011bdi jsme krom\u011b standardn\u00edch funkc\u00ed zahrnuli i vytvo\u0159en\u00ed seznamu za\u0159\u00edzen\u00ed v s\u00edti. T\u00edm p\u00e1dem za\u0159\u00edzen\u00ed se samy navz\u00e1jem nach\u00e1zej\u00ed a ka\u017ed\u00e9 z nich bude m\u00edt takov\u00fd seznam. P\u0159\u00edklad SSDP seznamu:<\/p>\n<pre><code class=\"json\">\"ssdpList\": \n\t{\n\t\t\"id\": 94967291,  \n\t\t\"ip\": \"192.168.x.x\",\n                \"type\": \"termostat\"\n\t}, \n\t{\n\t\t\"id\": 94967282,\n\t\t\"ip\": \"192.168.x.x\",\n                \"type\": \"termostat\"\n\t}<\/code><\/pre>\n<p>\nJak je patrn\u00e9 z p\u0159\u00edkladu, seznam zahrnuje id za\u0159\u00edzen\u00ed, ip adresu v s\u00edti a typ bloku (v na\u0161em p\u0159\u00edpad\u011b \u2013 termostat na b\u00e1zi Sonoff). Tento seznam se aktualizuje jednou za dv\u011b minuty (tento interval je dostate\u010dn\u00fd pro reakci na dynamickou zm\u011bnu po\u010dtu za\u0159\u00edzen\u00ed v s\u00edti). Takto sledujeme p\u0159id\u00e1v\u00e1n\u00ed, zm\u011bny a odpojen\u00ed za\u0159\u00edzen\u00ed bez jak\u00fdchkoliv akc\u00ed ze strany u\u017eivatele. Tento seznam je odes\u00edl\u00e1n do prohl\u00ed\u017ee\u010de nebo mobiln\u00ed aplikace, a skript automaticky vytv\u00e1\u0159\u00ed str\u00e1nku s dan\u00fdm po\u010dtem blok\u016f. Ka\u017ed\u00fd blok odpov\u00edd\u00e1 jednomu za\u0159\u00edzen\u00ed\/senzoru\/ovlada\u010di. Vizu\u00e1ln\u011b seznam vypad\u00e1 takto:<\/p>\n<p><img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/743abfe57e451aac901db58ed5d81a00.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAle co kdy\u017e jsou k esp8266\/esp32 p\u0159ipojeny dal\u0161\u00ed r\u00e1diov\u00e9 senzory p\u0159es cc2530 (ZigBee) nebo nrf24 (MySensors)? <\/p>\n<h3>O projektech<\/h3>\n<p>\nNa trhu existuj\u00ed r\u016fzn\u00e9 distribuovan\u00e9 syst\u00e9my. N\u00e1\u0161 syst\u00e9m umo\u017e\u0148uje integraci s nejpopul\u00e1rn\u011bj\u0161\u00edmi. <\/p>\n<p>N\u00ed\u017ee uveden\u00e9 projekty se t\u00edm \u010di on\u00edm zp\u016fsobem sna\u017e\u00ed zm\u011bnit situaci s nekompatibilitou r\u016fzn\u00fdch v\u00fdrobc\u016f mezi sebou. To jsou nap\u0159\u00edklad: <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/slsys\">SLS Gateway<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/mysensors\">MySensors <\/a><\/noindex> nebo <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/zesp32\">ZESP32<\/a><\/noindex>. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.zigbee2mqtt.io\/\">ZigBee2MQTT <\/a><\/noindex> je v\u00e1z\u00e1n na MQTT serveru, tak\u017ee se nehod\u00ed pro p\u0159\u00edklad. <\/p>\n<p>Jednou z variant realizace MySensors je br\u00e1na zalo\u017een\u00e1 na ESP8266. Ostatn\u00ed p\u0159\u00edklady jsou na ESP32. A do nich lze implementovat n\u00e1\u0161 princip pr\u00e1ce na objevov\u00e1n\u00ed a vytv\u00e1\u0159en\u00ed seznamu za\u0159\u00edzen\u00ed. <\/p>\n<p>Provedeme je\u0161t\u011b jeden my\u0161lenkov\u00fd experiment. M\u00e1me br\u00e1nu ZESP32 nebo SLS Gateway, nebo MySensors. Jak je m\u016f\u017eeme spojit v jednom informa\u010dn\u00edm prostoru? Ke standardn\u00edm funkc\u00edm t\u011bchto bran p\u0159id\u00e1me knihovnu protokolu SSDP. P\u0159i dotazov\u00e1n\u00ed na tento kontroler p\u0159es SSDP p\u0159id\u00e1 k standardn\u00ed odpov\u011bdi seznam za\u0159\u00edzen\u00ed, kter\u00e1 k n\u011bmu jsou p\u0159ipojena. Na z\u00e1klad\u011b t\u011bchto informac\u00ed prohl\u00ed\u017ee\u010d vytvo\u0159\u00ed str\u00e1nku. V obecn\u00e9 podob\u011b by to vypadalo takto:<\/p>\n<p><img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/8fba0ebb6be1ee35db010a819e87425c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Webov\u00e9 rozhran\u00ed<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/627baaf58524b92261c55408479606d1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>PWA aplikace<\/i><\/p>\n<pre><code class=\"json\">\"ssdpList\": \n{\n   \"id\": 94967291, \/\/ unik\u00e1tn\u00ed identifik\u00e1tor za\u0159\u00edzen\u00ed\n   \"ip\": \"192.168.x.x\", \/\/ ip adresa v s\u00edti\n   \"type\": \"termostat\" \/\/ typ za\u0159\u00edzen\u00ed\n},\n{\n   \"id\": 94967292,\n   \"ip\": \"192.168.x.x\",\n   \"type\": \"termostat\"\n},\n{\n   \"id\": 94967293,\n   \"ip\": \"192.168.x.x\",\n   \"type\": \"termostat\"\n},\n{  \n   \"id\": 13587532, \n   \"type\": \"sp\u00edna\u010d\"  \n},\n{  \n   \"id\": 98412557, \n   \"type\": \"kou\u0159ov\u00e9 \u010didlo\"\n},\n{  \n   \"id\": 57995113, \n   \"type\": \"kontakt_sensor\"\n},\n{  \n   \"id\": 74123668,\n   \"type\": \"sn\u00edma\u010d_teploty_vlhkosti_tlaku\"\n},\n{\n    \"id\": 74621883, \n    \"type\": \"sn\u00edma\u010d_teploty_vlhkosti\"\n}\n<\/code><\/pre>\n<p>\nZ p\u0159\u00edkladu je z\u0159ejm\u00e9, \u017ee za\u0159\u00edzen\u00ed se p\u0159id\u00e1vaj\u00ed nez\u00e1visle na sob\u011b. Jsou p\u0159ipojeny 3 termostaty s vlastn\u00edmi IP adresami a 5 r\u016fzn\u00fdch senzor\u016f s unik\u00e1tn\u00edmi ID. Pokud je senzor p\u0159ipojen k Wi-Fi s\u00edti, bude m\u00edt svou IP, pokud je p\u0159ipojen k br\u00e1n\u011b, bude IP adresa za\u0159\u00edzen\u00ed IP adresou br\u00e1ny.<\/p>\n<p>Pro komunikaci s za\u0159\u00edzen\u00edmi pou\u017e\u00edv\u00e1me WebSocket. To umo\u017e\u0148uje minimalizovat vyu\u017eit\u00ed zdroj\u016f ve srovn\u00e1n\u00ed s GET dotazy a z\u00edsk\u00e1vat informace dynamicky p\u0159i p\u0159ipojen\u00ed nebo zm\u011bn\u011b. <\/p>\n<p>Data se z\u00edsk\u00e1vaj\u00ed p\u0159\u00edmo z toho za\u0159\u00edzen\u00ed, kter\u00e9mu blok n\u00e1le\u017e\u00ed, bez obch\u00e1zen\u00ed serveru. Takto syst\u00e9m pokra\u010duje v pr\u00e1ci p\u0159i selh\u00e1n\u00ed jak\u00e9hokoli ze za\u0159\u00edzen\u00ed. Na webov\u00e9m rozhran\u00ed se pouze nezobraz\u00ed chyb\u011bj\u00edc\u00ed za\u0159\u00edzen\u00ed ze seznamu. Av\u0161ak sign\u00e1l o ztr\u00e1t\u011b, pokud je to nutn\u00e9, p\u0159ijde jako ozn\u00e1men\u00ed v aplikaci u\u017eivatele. <\/p>\n<p>Prvn\u00edm pokusem o implementaci tohoto p\u0159\u00edstupu byla PWA aplikace. To umo\u017e\u0148uje ukl\u00e1dat datab\u00e1zi blok\u016f na za\u0159\u00edzen\u00ed u\u017eivatele a po\u017eadovat pouze pot\u0159ebn\u00e1 data. Vzhledem k vlastnostem struktury v\u0161ak nem\u00e1 tato varianta plnou funkcionalitu. A jedin\u00e9 v\u00fdchodisko je nativn\u00ed aplikace pro Android a iOS, kter\u00e1 je nyn\u00ed v aktivn\u00edm v\u00fdvoji. Aplikace bude standardn\u011b fungovat pouze v m\u00edstn\u00ed s\u00edti. Pokud bude pot\u0159eba, lze v\u0161e p\u0159ev\u00e9st na extern\u00ed ovl\u00e1d\u00e1n\u00ed. Tak\u017ee kdy\u017e u\u017eivatel opust\u00ed m\u00edstn\u00ed s\u00ed\u0165, aplikace se automaticky p\u0159epne na cloud. <\/p>\n<p>Extern\u00ed ovl\u00e1d\u00e1n\u00ed \u2014 pln\u00e9 duplikov\u00e1n\u00ed str\u00e1nky. Po aktivaci str\u00e1nky se m\u016f\u017ee u\u017eivatel p\u0159ihl\u00e1sit na server a spravovat za\u0159\u00edzen\u00ed prost\u0159ednictv\u00edm osobn\u00edho \u00fa\u010dtu. Tak server roz\u0161i\u0159uje funk\u010dnost, umo\u017e\u0148uje spravovat za\u0159\u00edzen\u00ed, i kdy\u017e je u\u017eivatel mimo domov, a b\u00fdt nez\u00e1visl\u00fd na v\u00fdpustech port\u016f nebo dedikovan\u00e9 IP.<\/p>\n<p>Tak\u017ee v\u00fd\u0161e popsan\u00e1 varianta postr\u00e1d\u00e1 nev\u00fdhody serverov\u00e9ho p\u0159\u00edstupu a m\u00e1 \u0159adu v\u00fdhod v podob\u011b flexibility p\u0159ipojen\u00ed nov\u00fdch za\u0159\u00edzen\u00ed.<\/p>\n<h3>O termostatu<\/h3>\n<p>\nPod\u00edvejme se na syst\u00e9m \u0159\u00edzen\u00ed na p\u0159\u00edkladu na\u0161eho termostatu.<\/p>\n<p>P\u0159edpokl\u00e1d\u00e1 se:<\/p>\n<ol>\n<li>Regulace teploty ka\u017ed\u00e9ho termostatu (zobrazuje se jako samostatn\u00fd blok);<\/li>\n<li>Nastaven\u00ed pracovn\u00edho rozvrhu termostatu (r\u00e1no, den, ve\u010der, noc);<\/li>\n<li>V\u00fdb\u011br Wi-Fi s\u00edt\u011b a p\u0159ipojen\u00ed za\u0159\u00edzen\u00ed k n\u00ed;<\/li>\n<li>Aktualizace za\u0159\u00edzen\u00ed \u201evzduchem\u201c;<\/li>\n<li>Nastaven\u00ed MQTT;<\/li>\n<li>Nastaven\u00ed s\u00edt\u011b, k n\u00ed\u017e je za\u0159\u00edzen\u00ed p\u0159ipojeno.<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/a25f2a8daeabdeba36aa11557eacab0e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKrom\u011b ovl\u00e1d\u00e1n\u00ed prost\u0159ednictv\u00edm webov\u00e9ho rozhran\u00ed jsme zahrnuli i klasickou metodu \u2014 stiskem na displeji. Na palub\u011b je monitor Nextion NX3224T024 o velikosti 2,4 palce. Volba padla na n\u011bj kv\u016fli jednoduchosti pr\u00e1ce se za\u0159\u00edzen\u00edm. Ve v\u00fdvoji je v\u0161ak tak\u00e9 n\u00e1\u0161 vlastn\u00ed monitor zalo\u017een\u00fd na STM32. Jeho funkce nen\u00ed o nic hor\u0161\u00ed ne\u017e u Nextion, ale bude st\u00e1t m\u00e9n\u011b, co\u017e se pozitivn\u011b odraz\u00ed na kone\u010dn\u00e9 cen\u011b za\u0159\u00edzen\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/ad98f51863dce7cbee1f1ea88891599f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nStejn\u011b jako ka\u017ed\u00fd d\u016fstojn\u00fd termostat m\u00e1 n\u00e1\u0161 Nextion:<\/p>\n<ul>\n<li>nastavit po\u017eadovanou teplotu pro u\u017eivatele (tla\u010d\u00edtky vpravo);<\/li>\n<li>zap\u00ednat a vyp\u00ednat re\u017eim podle pl\u00e1nu (tla\u010d\u00edtko N);<\/li>\n<li>zobrazovat \u010dinnost rel\u00e9 (\u0161ipka vlevo);<\/li>\n<li>m\u00e1 ochranu proti d\u011btem (fyzick\u00e1 stisknut\u00ed jsou blokov\u00e1na, dokud nen\u00ed z\u00e1mek odem\u010den);<\/li>\n<li>zobrazuje \u00farove\u0148 sign\u00e1lu WiFi.<\/li>\n<\/ul>\n<p>\nKrom\u011b toho pomoc\u00ed monitoru lze:<\/p>\n<ul>\n<li>vybrat typ nainstalovan\u00e9ho senzoru;<\/li>\n<li>ovl\u00e1dat funkci ochrany proti d\u011btem;<\/li>\n<li>aktualizovat firmware.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/efe3a84ba7e8c95212323ad1370550e0.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKliknut\u00edm na ikonu WiFi se u\u017eivatel dozv\u00ed informace o p\u0159ipojen\u00e9 s\u00edti. QR k\u00f3d se pou\u017e\u00edv\u00e1 pro p\u00e1rov\u00e1n\u00ed za\u0159\u00edzen\u00ed ve firmwaru HomeKit.<\/p>\n<p><img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/79f55d4872f73a7c03a9f855be8089dc.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDemo pr\u00e1ce s displejem:<\/p>\n<p><img decoding=\"async\" alt=\"Lytko spojuje\" src=\"\/wp-content\/uploads\/2020\/01\/bf8ed3d7ae06b0364b393fc442e3556b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nVyvinuli jsme <noindex><a rel=\"nofollow\" href=\"http:\/\/demo.lytko.com\">demo str\u00e1nku<\/a><\/noindex> se t\u0159emi p\u0159ipojen\u00fdmi termostaty.<\/p>\n<p>Pt\u00e1te se: \u201cJak\u00e1 je zvl\u00e1\u0161tnost va\u0161eho termostatu?\u201d Na trhu dnes existuje mnoho termostat\u016f s funkc\u00ed Wi-Fi, pl\u00e1nov\u00e1n\u00edm, dotykov\u00fdm ovl\u00e1d\u00e1n\u00edm. A nad\u0161enci napsali moduly pro interakci s v\u011bt\u0161inou popul\u00e1rn\u00edch syst\u00e9m\u016f chytr\u00e9 dom\u00e1cnosti (Majordomo, HomeAssistant atd.). <\/p>\n<p>N\u00e1\u0161 termostat je kompatibiln\u00ed s t\u011bmito syst\u00e9my a disponuje v\u0161emi v\u00fd\u0161e uveden\u00fdmi funkcemi. Ale jedine\u010dnost spo\u010d\u00edv\u00e1 v tom, \u017ee termostat je neust\u00e1le zdokonalov\u00e1n, d\u00edky flexibilit\u011b syst\u00e9mu. S ka\u017edou aktualizac\u00ed se funk\u010dnost roz\u0161\u00ed\u0159\u00ed. K standardn\u00edmu zp\u016fsobu ovl\u00e1d\u00e1n\u00ed syst\u00e9mu (podle pl\u00e1nu) p\u0159id\u00e1me adaptivn\u00ed. Aplikace umo\u017e\u0148uje z\u00edsk\u00e1vat geolokaci u\u017eivatele. D\u00edky tomu se syst\u00e9m dynamicky p\u0159izp\u016fsob\u00ed re\u017eim\u016fm provozu na z\u00e1klad\u011b jeho um\u00edst\u011bn\u00ed. A modul po\u010das\u00ed umo\u017en\u00ed p\u0159izp\u016fsobit se pov\u011btrnostn\u00edm podm\u00ednk\u00e1m. <\/p>\n<p>A roz\u0161i\u0159itelnost. Ka\u017ed\u00fd si m\u016f\u017ee snadno vym\u011bnit sv\u016fj standardn\u00ed termostat za n\u00e1\u0161. S minim\u00e1ln\u00edm \u00fasil\u00edm. Vybrali jsme 5 nejpopul\u00e1rn\u011bj\u0161\u00edch senzor\u016f dostupn\u00fdch na trhu a p\u0159idali jejich podporu. I v p\u0159\u00edpad\u011b exkluzivn\u00edch vlastnost\u00ed senzoru bude moci u\u017eivatel jej p\u0159ipojit k na\u0161emu termostatu. K tomu bude nutn\u00e9 prov\u00e9st kalibraci termostatu pro pr\u00e1ci s konkr\u00e9tn\u00edm senzorem. Poskytneme instrukce.<\/p>\n<p>P\u0159i p\u0159ipojen\u00ed termostatu nebo jin\u00e9ho za\u0159\u00edzen\u00ed se automaticky zobrazuje v\u0161ude: jak v webov\u00e9m rozhran\u00ed, tak v PWA aplikaci. P\u0159id\u00e1n\u00ed za\u0159\u00edzen\u00ed prob\u00edh\u00e1 automaticky: sta\u010d\u00ed ho p\u0159ipojit k Wi-Fi s\u00edti. <\/p>\n<p>N\u00e1\u0161 syst\u00e9m nepot\u0159ebuje server a v p\u0159\u00edpad\u011b jeho v\u00fdpadku se nep\u0159ev\u00e1d\u00ed na d\u00fdni. I p\u0159i selh\u00e1n\u00ed jedn\u00e9 z komponent syst\u00e9m nep\u0159ejde na havarijn\u00ed sc\u00e9n\u00e1\u0159. \u0158\u00eddic\u00ed jednotky, senzory, za\u0159\u00edzen\u00ed \u2013 ka\u017ed\u00fd prvek je sou\u010dasn\u011b serverem i klientem, a tedy zcela autonomn\u00ed. <\/p>\n<p>Pro z\u00e1jemce \u2013 na\u0161e soci\u00e1ln\u00ed s\u00edt\u011b: <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/LytkoG\">Telegram<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.instagram.com\/lytko_shop\">Instagram<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/lytko_news\">Telegram Novinky<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/vk.com\/lytko_shop\">VK<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.facebook.com\/groups\/2055755264635934\">Facebook<\/a><\/noindex>.<\/p>\n<p>E-mail: shop@lytko.com<\/p>\n<p><b>P. S.<\/b> nevyz\u00fdv\u00e1me k opu\u0161t\u011bn\u00ed serveru. M\u00e1me tak\u00e9 podporu MQTT serveru a vlastn\u00ed cloud. Na\u0161\u00edm c\u00edlem je posunout stabilitu a spolehlivost syst\u00e9mu na kvalitativn\u011b novou \u00farove\u0148. Aby server nebyl slab\u00fdm m\u00edstem, ale dopl\u0148oval funk\u010dnost a \u010dinil syst\u00e9m pohodln\u011bj\u0161\u00ed.<br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/484296\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434 \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u0412\u0430\u043c \u0443\u043c\u043d\u044b\u0439 \u0442\u0435\u0440\u043c\u043e\u0441\u0442\u0430\u0442. \u041d\u044b\u043d\u0435\u0448\u043d\u044f\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u0434\u0443\u043c\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u043a\u0430\u043a \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0435\u0433\u043e \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f. \u041d\u043e \u0434\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0431\u044a\u044f\u0441\u043d\u0438\u0442\u044c \u043b\u043e\u0433\u0438\u043a\u0443 \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0435\u0440\u043c\u043e\u0441\u0442\u0430\u0442\u0430 \u0438 \u0442\u043e, \u0447\u0442\u043e \u043c\u044b \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043b\u0438, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0440\u0438\u0441\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u044e \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044e \u0432 \u0446\u0435\u043b\u043e\u043c. \u041f\u0440\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u0423\u0441\u043b\u043e\u0432\u043d\u043e, \u0432\u0441\u044e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044e \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0430 \u0442\u0440\u0438 \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0438: \u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f 1 \u2014 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u201c\u0443\u043c\u043d\u044b\u0435\u201d \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u0412\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-55356","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434 \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u0412\u0430\u043c \u0443\u043c\u043d\u044b\u0439 \u0442\u0435\u0440\u043c\u043e\u0441\u0442\u0430\u0442.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/news\/lytko-obedinyaet\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Lytko \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u0442 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434 \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u0412\u0430\u043c \u0443\u043c\u043d\u044b\u0439 \u0442\u0435\u0440\u043c\u043e\u0441\u0442\u0430\u0442.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/news\/lytko-obedinyaet\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-01-17T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:28+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lytko spojuje | ProHoster","description":"P\u0159ed n\u011bjak\u00fdm \u010dasem jsme v\u00e1m p\u0159edstavili chytr\u00fd termostat.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/news\/lytko-obedinyaet","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Lytko \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0435\u0442 | ProHoster","og:description":"\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434 \u043c\u044b \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b\u0438 \u0412\u0430\u043c \u0443\u043c\u043d\u044b\u0439 \u0442\u0435\u0440\u043c\u043e\u0441\u0442\u0430\u0442.","og:url":"https:\/\/prohoster.info\/cs\/blog\/news\/lytko-obedinyaet","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-01-17T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:28+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55356","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 19:45:29","updated":"2022-10-02 15:29:28","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/55356","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=55356"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/55356\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=55356"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=55356"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=55356"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}