Drukowanie 8266D ESP3
Informacje o produkcie
Dane techniczne:
- Tytuł: Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
- Autor: Hans Henrik Skovgaard
- Publikacja: Publikacja Elektor
- ISBN: 978-3-89576-536-0 (Print), 978-3-89576-537-7 (eBook)
Instrukcje dotyczące stosowania produktu:
O produkcie:
Przewodnik po hakowaniu i IoT urządzeń domowych zapewnia przystępne ceny
rozwiązania wykorzystujące technologię ESP8266 i druku 3D. Autor:
Hansa Henrika Skovgaarda, ta książka jest kompleksowym przewodnikiem po
Miłośnicy majsterkowania i projektanci elektroniki.
Główne cechy:
- Badanie technik hakowania urządzeń gospodarstwa domowego
- Integracja koncepcji IoT z ESP8266
- Wykorzystanie druku 3D do tworzenia niestandardowych rozwiązań
Sposób użycia:
- Zacznij od przeczytania rozdziałów wprowadzających, aby zrozumieć
Podstawy. - Postępuj zgodnie z samouczkami krok po kroku dotyczącymi różnych przedstawionych projektów
w książce. - Aby uzyskać lepszy efekt, zapoznaj się ze schematami i ilustracjami
zrozumienie. - Poeksperymentuj z dostarczonym exampLes, aby ulepszyć swoje
umiejętności.
Wskazówki dla użytkowników:
- Upewnij się, że masz dostęp do modułu ESP8266 i drukarki 3D
do praktycznego wdrożenia. - Rób notatki i zapisuj pomysły na swoje wyjątkowe urządzenie gospodarstwa domowego
projektowanie. - Dołącz do społeczności internetowych lub forów, aby dzielić się swoimi doświadczeniami i
uczyć się od innych.
FAQ (najczęściej zadawane pytania):
P: Czy ten przewodnik może być przydatny dla początkujących w
elektronika?
A: Tak, przewodnik zawiera szczegółowe informacje
wyjaśnienia i praktyczne projekty odpowiednie dla początkujących
i odkrywaj.
P: Czy istnieją szczególne wymagania sprzętowe, których należy przestrzegać?
projektowanie?
A: Chociaż przewodnik koncentruje się na ESP8266 i
Druk 3D, podstawowe komponenty elektroniczne i narzędzia również mogą być
wymagane w przypadku niektórych projektów.
książki
Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
Niedrogie rozwiązania z ESP8266 i drukiem 3D
Hansa Henryka Skovgaarda
Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
Niedrogie rozwiązania z ESP8266 i drukiem 3D
Hansa Henryka Skovgaarda
To jest publikacja Elektora. Elektor jest marką medialną
Elektor International Media BV PO Box 11, NL-6114-ZG Susteren, Holandia Telefon: +31 46 4389444
Wszelkie prawa zastrzeżone. Żadna część tej książki nie może być powielana w jakiejkolwiek formie materialnej, łącznie z fotokopiowaniem, lub
przechowywanie na jakimkolwiek nośniku za pomocą środków elektronicznych, przejściowo lub przypadkowo w związku z innym wykorzystaniem tej publikacji, bez pisemnej zgody właściciela praw autorskich, chyba że jest to zgodne z postanowieniami ustawy o prawie autorskim o wzorach i patentach z 1988 r. lub na warunkach licencja wydana przez Copyright Licensing Agency Ltd., 90 Tottenham Court Road, Londyn, Anglia W1P 9HE. Wnioski o zgodę właściciela praw autorskich na reprodukcję jakiejkolwiek części publikacji należy kierować do wydawców.
Deklaracja
Autor i Wydawca dołożyli wszelkich starań, aby informacje zawarte w tej książce były prawidłowe. Nie przyjmują i niniejszym zrzekają się jakiejkolwiek odpowiedzialności wobec jakiejkolwiek strony za jakiekolwiek straty lub szkody spowodowane błędami lub pominięciami w tej książce, niezależnie od tego, czy takie błędy lub pominięcia wynikają z zaniedbania, wypadku lub jakiejkolwiek innej przyczyny. Wszystkie programy zawarte w książce objęte są prawami autorskimi Autora i Elektor International Media. Programów tych można używać wyłącznie w celach edukacyjnych. Przed użyciem któregokolwiek z tych programów do celów komercyjnych należy uzyskać pisemną zgodę Autora lub Elektora.
Katalogowanie bibliotek brytyjskich w danych publikacyjnych
Zapis katalogowy tej książki jest dostępny w Bibliotece Brytyjskiej
ISBN 978-3-89576-536-0 Drukuj ISBN 978-3-89576-537-7 eBook
© Copyright 2022: Elektor International Media BV Redaktor: Jan Buiting, MA Produkcja prepress: D-Vision, Julian van den Berg
Elektor jest częścią EIM, wiodącego na świecie źródła niezbędnych informacji technicznych i produktów elektronicznych dla profesjonalnych inżynierów, projektantów elektroniki i firm chcących ich zaangażować. Każdego dnia nasz międzynarodowy zespół opracowuje i dostarcza wysokiej jakości treści – za pośrednictwem różnych kanałów medialnych (w tym czasopism, wideo, mediów cyfrowych i mediów społecznościowych) w kilku językach – związanych z projektowaniem elektroniki i elektroniką typu „zrób to sam”. www.elektormagazine.com
4
Zawartość
Zawartość
Rozdział 1 Wstęp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.1. Dlaczego ta książka? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.2. Dla kogo jest ta książka? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.3. Jak korzystać z tej książki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.4. Organizacja książki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.4.1. Rozdział 2: Komponenty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.4.2. Rozdział 3: Instalacja Arduino IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.4.3. Rozdział 4: Instalacja emoncms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.4.4. Rozdział 5: Instalacja MQTT (mosquitto) na Raspberry Pi . . . . . . . . . . . . . . . 18 1.4.5. Rozdział 6: OpenSCAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.4.6. Rozdział 7: Bezpieczeństwo ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.4.7. Rozdział 8: Watchdogs ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.4.8. Rozdział 9: Aktualizacja/programowanie ESP8266 drogą radiową (OTA) . . . . . . . . . . . . 18 1.4.9. Rozdział 10: Antena WiFi ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.4.10. Rozdział 11: Obudowa ESP8266. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4.11. Rozdział 12: Brama VPN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4.12. Rozdział 13: Projektowanie oprogramowania/oprogramowania sprzętowego. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4.13. Rozdział 14: Hack IKEA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4.14. Rozdział 15: Monitor zamka drzwi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4.15. Rozdział 16: Czujnik energii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4.16. Rozdział 17: Sterowanie lodówką . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.4.17. Rozdział 18: Termostat szklarniowy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.4.18. Rozdział 19: Sterowanie przekaźnikiem 230-VAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.4.19. Rozdział 20: Samodzielny czujnik temperatury . . . . . . . . . . . . . . . . . . . . . . . . 20 1.4.20. Rozdział 21: Czujnik temperatury, ciśnienia i wilgotności . . . . . . . . . . . . . . . 20 1.4.21. Rozdział 22: Kontroler IKEA Trådfri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.4.22. Rozdział 23: Rozwiązywanie problemów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.4.23. Rozdział 24: Układ PCB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.5. Skróty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.6. Odniesienia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
1.7. Informacja zwrotna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Rozdział 2 · Komponenty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1. ESP8266. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 2.1.1. Wemos/Lolin, uwagi ogólne. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2.1.2. Tryb uśpienia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.2. Malinowe Pi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.2.1. Konfiguracja Raspberry Pi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.3. Klejnot Neopiksela 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.4. IKEA Grono lamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.5. SSR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.6. Maksym DS18B20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.7. QRE1113 (analogowy) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.8. Silaby MGM210L . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 2.9. Urządzenia wejścia/wyjścia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.9.1. Tarcza SHT30. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 2.9.2. Tarcza HP303B. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Rozdział 3 · Instalacja Arduino IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.1. Standardowa instalacja Arduino IDE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.2. Obsługa ESP8266. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.3. Flashowanie SPI File (SPIFFS) instalacja systemu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.4. Alternatywy dla SPI Flash File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 3.5. Dodatkowe biblioteki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Rozdział 4 · Instalacja emoncms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.1 Aktualizacja i aktualizacja Raspberry Pi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.2. Zainstaluj zależności. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.2.1. MariaDB i Apache. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 4.2.2. phpMyAdmina. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 4.2.3. PECL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.3. kod emoncms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 4.3.1. Skonfiguruj emoncms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 4.4. moduły emoncms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 4.4.1. Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6
Zawartość
4.4.2. Wykres. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 4.4.3. Aplikacje. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 4.5. Dokumentacja. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Rozdział 5 · Instalacja MQTT (mosquitto) na Raspberry Pi . . . . . . . . . . . . . . . . 74 5.1. Instalacja brokera Mosquitto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 5.2. Instalacja klienta Mosquitto (RPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 5.3. Weryfikacja instalacji Mosquitto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 5.4. Instalacja klienta Mosquitto (komputer PC z systemem Windows) . . . . . . . . . . . . . . . . . . . . . . . . 83 Rozdział 6 · OpenSCAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Rozdział 7 · Bezpieczeństwo ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 7.1. VPN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Rozdział 8 · Programy nadzorujące ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 8.1. Ogólnie rzecz biorąc, psy stróżujące. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 8.2. Watchdog pętli. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 8.2.1.Przyczyna rozruchu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Rozdział 9 · ESP8266 Aktualizacja/programowanie drogą powietrzną (OTA) . . . . . . . . . . . . . 96 9.1. web przeglądarka OTA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 9.1.1. Skonfiguruj środowisko Arduino IDE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 9.1.2. Przygotuj już działające oprogramowanie do aktualizacji OTA. . . . . . . . . . . . . . . . . . . . . . . 97 9.1.3. Aktualizacja OTA npamples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 9.1.3.1. Kompilacja oprogramowania sprzętowego. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 9.1.3.2. Aktualizacja firmware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 9.1.3.3. Filebudowa systemu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 9.1.3.4. Fileaktualizacja systemu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 9.1.3.5. Aktualizacja OTA z ochroną hasłem. . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 9.1.4. CLI OTA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Rozdział 10 · Antena WiFi ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 10.1. Wymiary anten zewnętrznych. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 10.2. Gotowe anteny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 10.3. Zniszczone anteny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 10.4. Antena DIY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 10.5. Antena Yagi DIY (2.4 GHz). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
7
Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
10.5.1. Mechanika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 10.6. Pomiary anten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 10.7. Dalsze studia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 Rozdział 11 · Obudowa ESP8266 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 11.1. Obudowa standardowa LOLIN D1 mini. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 11.2. Obudowa LOLIN D1 mini w standardzie pro. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 11.3. Obudowa zamka drzwiowego LOLIN D1 mini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 11.4. Obudowa sterownika mini lodówki LOLIN D1. . . . . . . . . . . . . . . . . . . . . . . . . . 132 11.5. Obudowa mini czujnika energii LOLIN D1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 11.6. LOLIN D1 mini IKEA Trådfri obudowa sterownika . . . . . . . . . . . . . . . . . . . . . . . . 133 Rozdział 12 · Brama VPN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 12.1. Konfiguracja zapory sieciowej. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 12.2. Konfiguracja Raspberry Pi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 12.2.1. Podstawowa konfiguracja. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 12.2.2. Instalacja OpenVPN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 12.2.3. Konfiguracja OpenVPN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 12.2.3.1. Autoryzacja OpenVPN file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 12.2.3.2. Zacznij od czasu rozruchu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 12.2.3.3. Konfiguracja bramy VPN (zabawa z tablicami IP!). . . . . . . . . . . . . . . 147 12.3. Korzystanie z bramy VPN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 12.3.1. Ulepszenia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 Rozdział 13 · Projektowanie oprogramowania/firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 13.1. Korzystanie z EEPROM-u. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 13.2. Funkcje użytkowe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 13.2.1. Instalacja funkcji użytkowych . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 13.2.2. formatBytes() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 13.2.3. printFloat() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 13.2.4 isNumeric() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 13.2.5. errorState(int stan) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 13.2.6. naciśnięcie klawisza Czekaj() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 13.2.7. CACHE_RAM_ATTR lwdtcb() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 13.2.8. lwdtFeedInit() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8
Zawartość
13.2.9. lwdtFeed() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 13.2.10. getBootDevice() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 13.2.11. uruchomWiFi(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 13.2.12. pokażWiFiStatus() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 13.2.13. doWifiConnect() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 13.2.14. MQTT_connect(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Rozdział 14 · IKEA Hack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 14.1. Schemat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 14.2. Montaż mechaniczny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 14.2.1. Grono lamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 14.2.2. Obudowa ESP8266. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 14.3. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 14.3.1. Dodatkowe biblioteki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 14.3.2. Cechy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 14.3.3. Projekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 14.3.3.1. web interfejs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 14.3.4. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 14.3.4.1. organizować coś() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 14.3.4.2. pętla() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 14.3.5. Żądania HTTP POST. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 14.3.5.1. Ogólnie kod żądania HTTP POST. . . . . . . . . . . . . . . . . . . . . . . . . . 172 14.3.5.2. Polecenia żądania HTTP POST. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 14.3.6. Wykonanie iluminacji. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 14.3.6.1. Tęcza. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 14.3.6.2. Tęczowy cykl. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 14.3.6.3. Statyczny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 14.3.6.3. Znikać . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 14.4. Operacja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 14.4.1. Codzienny użytek. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 14.4.1.1. Zasilanie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 14.4.2. Konfiguracja. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 Rozdział 15 · Monitor zamka drzwi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
9
Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
15.1. Schemat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 15.2. Montaż mechaniczny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 15.3. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 15.3.1. Oprogramowanie układowe Emoncms Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 15.3.1.1. organizować coś() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 15.3.1.2. pętla() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 15.3.2. Panel Emoncms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 15.3.3. Oprogramowanie sprzętowe MQTT wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 15.3.3.1. Wydawca klienta MQTT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 15.3.3.2. Abonent klienta MQTT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 15.3.4. Broker MQTT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Rozdział 16 · Czujnik energii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 16.1. Schemat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201 16.2. Montaż mechaniczny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 16.3. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 16.3.1. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 16.3.1.1. organizować coś() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 16.3.1.2. pętla() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 16.3.1.3. Funkcje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 16.4. Operacja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 16.5. Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 Rozdział 17 · Sterowanie lodówką . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 17.1. Schemat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 17.1.1. SSR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 17.1.2. DS18B20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 17.2. Montaż mechaniczny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 17.2.1. Żadnych modyfikacji lodówki. . . . . . . . . . . . . . . . . . . . . . . . . . 231 17.2.2. Modyfikacja lodówki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 17.3. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 17.3.1. Dodatkowe biblioteki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 17.3.2. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 17.3.2.1 konfiguracja() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
Zawartość
17.3.2.2. pętla() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 17.3.3. Regulacja temperatury . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242 17.3.4. Funkcjonalność Watchdoga. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 17.3.5. web interfejs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244 17.3.5.1. Ustawić temperaturę i histerezę. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 17.3.5.2. Otwórz rejestrator temperatury. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 17.3.5.3. Zapisz konfigurację. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 17.3.6. Flashowanie SPI File Systemu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 17.3.7. Skompiluj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247 17.4. Operacja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 17.5. Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 Rozdział 18 · Termostat szklarniowy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 18.1. Schemat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 18.1.1. SSR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 18.1.2. DS18B20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 18.2. Montaż mechaniczny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266 18.3. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 18.3.1. Dodatkowe biblioteki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 18.3.2. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 18.3.2.1. organizować coś() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 18.3.2.2. pętla() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 18.3.3. Regulacja temperatury . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 18.3.4. Funkcjonalność Watchdoga. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 18.3.5. web interfejs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 18.3.5.1 Temperatura zadana i histereza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275 18.3.5.2 Otwórz rejestrator temperatury . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 18.3.5.3. Zapisz konfigurację. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 18.3.6. Flashowanie SPI File Systemu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 18.3.7. Skompiluj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 18.4. Operacja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 18.5. Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278 Rozdział 19 · Sterowanie przekaźnikiem 230-VAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
11
Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
19.1. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 19.1.1. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 19.1.1.1.setup() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 19.1.1.2. pętla() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 19.1.2. Web interfejs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 19.2. Sprzęt komputerowy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 19.2.1. SSR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 19.2.2.1. Mieszkania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 19.2.2. Przekaźnik. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 19.2.2.1 Obudowa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 19.2.3. Tarcza przekaźnika. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 19.2.3.1. Mieszkania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296 19.2.4. Alternatywna konstrukcja przekaźnika 230-VAC typu On/Off. . . . . . . . . . . . . . . . . . . . . . 297 Rozdział 20 · Samodzielny czujnik temperatury. . . . . . . . . . . . . . . . . . . . . . . . . . . . 299 20.1. Mieszkania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300 20.2. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 20.2.1. Dodatkowe biblioteki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 20.2.2. Oprogramowanie obsługujące OTA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 20.2.2.1. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 20.2.2.2. Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 20.2.3. Oprogramowanie obsługujące tryb uśpienia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304 20.2.3.1. Różnice i konfiguracja sprzętowego trybu uśpienia. . . . . . . . . . . . . . . . . . . . . . . 304 20.2.3.2. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 20.2.3.3. Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 Rozdział 21 · Czujnik temperatury, ciśnienia i wilgotności . . . . . . . . . . . . . . . . . 309 21.1. Schemat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 21.2. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 21.2.1. Dodatkowe biblioteki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 21.2.1.1. HP303B. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 21.2.1.2. SHT3x. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 21.2.2. Oprogramowanie sprzętowe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312 21.2.2.1. organizować coś() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
Zawartość
21.2.2.2. pętla() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312 21.2.3. Web interfejs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 21.3. Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 Rozdział 22 · Kontroler IKEA Trådfri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 22.1. Opis koncepcji. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 22.2. Dotarcie do modułów IKEA trådfri. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321 22.3. Schemat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 22.4. Montaż mechaniczny. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 22.4.1. Zworki adresowe I2C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 22.4.2. Złącza zewnętrzne. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 22.4.3. Zworki zasilania ZigBee. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 22.4.4. Rezystory serii LED. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 22.4.5. Moduły ZigBee. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 22.4.6. Różnorodny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334 22.5. Oprogramowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 22.5.1. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 22.5.1.1. Konfiguracja „testowania i debugowania”(). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 22.5.1.2. Pętla „testuj i debuguj” (). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 22.5.1.3. Ustawienia kontrolera() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 22.5.1.4. Pętla kontrolera() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 22.5.2. web interfejs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 22.5.3. Dodatkowe biblioteki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 22.6. Operacja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 22.6.1. Konfiguracja kontrolera (dodanie modułów ZigBee) . . . . . . . . . . . . . 340 22.6.1.1. Dodanie modułu ZigBee za pomocą pilota . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 22.6.1.2. Dodanie modułu ZigBee bez pilota. . . . . . . . . . . . . . . . . . . . . . . . . . . 345 22.6.2. Codzienne użytkowanie kontrolera IKEA Trådfri. . . . . . . . . . . . . . . . . . . . . . . . . . . . 347 Rozdział 23 · Rozwiązywanie problemów . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 23.1. Problemy sprzętowe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 23.1.1. DS18B20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 23.1.2. Czerwona/zielona dioda LED. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 23.1.3. Kompresor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349
13
Poradnik dotyczący hackowania urządzeń domowych i Internetu Rzeczy
23.1.4. Kable USB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 349 23.2. Problemy z siecią. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 23.3. Oprogramowanie wewnętrzne Wemos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 23.3.1. Resetowanie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 23.4. emoncms. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351 23.4.1. Instalacja wykresu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 23.4.2. Wejście / Kanały. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 23.5. Moduły IKEA ZigBee. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 23.5.1. Przesyłanie oprogramowania. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 23.5.2. Dodawanie modułów ZigBee. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 23.5.3. Testowanie kontrolera IKEA Trådfri. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 23.5.4. Przerywa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 Rozdział 24 · Układ PCB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 24.1. PCB monitora zamka drzwi. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354 24.2. Czujnik energii. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357 24.3. Regulator lodówki. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 24.3.1. Płytka regulatora. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 24.3.2. Płytka DS18B20. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362 24.4. Termostat szklarniowy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 24.5. Kontroler IKEA Trådfri. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 Rozdział 25 · Lista oprogramowania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 25.1. Programy narzędziowe żądające protokołu HTTP POST. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 25.1.1. PHP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366 25.1.2. kod c. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 25.1.3. pyton. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 25.2. Zegar watchdoga w pętli. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 25.2.1. Znajduje się w hhsUtility.h/cpp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373 25.2.2. Do dodania w setup(): . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374 25.2.3. Do dodania w pętli(): . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375 Indeks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
Dokumenty / Zasoby
![]() |
elektor ESP8266 Druk 3D [plik PDF] Arkusz danych ESP8266 Druk 3D, ESP8266, Druk 3D, Drukowanie |
