Spisu treści:

Sprzęt i oprogramowanie Hack Smart Devices, Tuya i Broadlink LEDbulb, Sonoff, inteligentna wtyczka BSD33: 7 kroków
Sprzęt i oprogramowanie Hack Smart Devices, Tuya i Broadlink LEDbulb, Sonoff, inteligentna wtyczka BSD33: 7 kroków

Wideo: Sprzęt i oprogramowanie Hack Smart Devices, Tuya i Broadlink LEDbulb, Sonoff, inteligentna wtyczka BSD33: 7 kroków

Wideo: Sprzęt i oprogramowanie Hack Smart Devices, Tuya i Broadlink LEDbulb, Sonoff, inteligentna wtyczka BSD33: 7 kroków
Wideo: Jak dodać zużycie energi z urządzeń Tuya do zakładki Energia w Home Assistant 2024, Listopad
Anonim
Sprzęt i oprogramowanie Hack Smart Devices, Tuya i Broadlink LEDbulb, Sonoff, inteligentna wtyczka BSD33
Sprzęt i oprogramowanie Hack Smart Devices, Tuya i Broadlink LEDbulb, Sonoff, inteligentna wtyczka BSD33

W tym Instruktażowym pokazuję, jak sflashowałem kilka inteligentnych urządzeń z własnym oprogramowaniem, abym mógł je kontrolować za pomocą MQTT za pomocą mojej konfiguracji Openhab.

Dodam nowe urządzenia, gdy je zhakuję.

Oczywiście istnieją inne metody oprogramowania do flashowania niestandardowego oprogramowania układowego, takie jak konwertowanie Tuya, ale lubię rozumieć, jak działa urządzenie i co jest „pod maską”.

Kod jest pisany i flashowany za pomocą Arduino IDE.

Kontroluję swoje urządzenia przez Openhab i Google Home (przez Openhab), jeśli chcesz wiedzieć więcej lub potrzebujesz pliku.items itp., daj mi znać w komentarzach.

Bezpieczeństwo przede wszystkim

Bądź ostrożny, ponieważ pracujemy na urządzeniach zasilanych napięciem sieciowym. Przed przystąpieniem do pracy należy odłączyć urządzenia od zasilania.

Jeśli masz wątpliwości, czy urządzenie po modyfikacji jest bezpieczne, wyrzuć je.

Kieszonkowe dzieci

Do większości hacków potrzebny jest programator FDTI dołączony do komputera z Arduino IDE, kilka zworek, lutownica, kilka rezystorów i moduły ESP8266 lub ESP8285.

Krok 1: Inteligentna żarówka Tuya LED RGBW

Inteligentna żarówka Tuya LED RGBW
Inteligentna żarówka Tuya LED RGBW
Inteligentna żarówka Tuya LED RGBW
Inteligentna żarówka Tuya LED RGBW
Inteligentna żarówka LED RGBW Tuya
Inteligentna żarówka LED RGBW Tuya

Wprowadzenie

Kupiłem tę lampę z Aliexpress. Działa dobrze z aplikacją Smart Life, ale chciałem sterować nią za pośrednictwem MQTT od Openhab. Zrobiłem już własne oprogramowanie Sonoff B1, więc próbowałem sflashować tę lampę za pomocą tego oprogramowania.

Błyskowy

Lampę otwiera się, ostrożnie zdejmując plastikową nasadkę, ręcznie, używając siły lub przekręcając śrubokrętem między metalem a plastikiem. Możesz zobaczyć goły układ ESP8266.

Potrzebne połączenia są wyeksponowane za pomocą małych padów na płytce drukowanej (3v3, GND, RX, TX i IO0 (GPIO0))

Najpierw włożyłem trochę lutu do padów i przylutowałem do przewodów, a następnie zlutowałem je razem. Użyłem opaski i trochę gorącego kleju, aby przymocować przewody do lampy.

GPIO0 jest potrzebne do wprowadzenia ESP8266 w tryb programowy. Podłącz go do uziemienia podczas zasilania ESP8266. Możesz zasilać i sflashować ESP8266 za pomocą programatora FTDI.

Oprogramowanie układowe

Firmware jest oparty na moim oprogramowaniu Sonoff B1, ale jest zmodyfikowany, ponieważ Sonoff B1 wykorzystuje sterowniki LED MY9231, które są sterowane przez układ ESP8285, a w tej lampie Tuya Smart 4 kanały (RGBW) są sterowane przez mosfety przełączane bezpośrednio sygnałami PWM z ESP8266.

Zielony kanał jest podłączony do GPIO12, czerwony do GPIO14, niebieski do GPIO13, a biały kanał jest podłączony do GPIO4. W kodzie widzisz to jako: #define GREENPIN 12 #define REDPIN 14 #define BLUEPIN 13 #define WHITEPIN 4.

Pełny kod znajduje się na moim Github.

Krok 2: Ogólne ciepłe białe żarówki LED - część 1

Ogólne ciepłe białe żarówki LED - część 1
Ogólne ciepłe białe żarówki LED - część 1
Ogólne ciepłe białe żarówki LED - część 1
Ogólne ciepłe białe żarówki LED - część 1
Ogólne ciepłe białe żarówki LED - część 1
Ogólne ciepłe białe żarówki LED - część 1

Wprowadzenie

Kupiłem te żarówki LED z Aliexpress Blue/white box i black box. Można nimi sterować za pomocą aplikacji Magic home smart home oraz aplikacji Techlife pro. Nie próbowałem tych aplikacji, ponieważ chciałem sterować żarówkami LED przez MQTT od Openhab. Ponieważ miałem już oprogramowanie do żarówek RGBW, użyłem go nie z czterema kanałami (RGBW), ale tylko z jednym kanałem.

Błyskowy

Lampę otwierasz, ostrożnie zdejmując plastikową nasadkę. Dowiedziałem się, że nakrętka była trochę przyklejona do metalu, więc potrzebowałem siły ze śrubokręta między metalem a plastikiem.

Spodziewałem się zobaczyć układ ESP8266 lub ESP8285, jednak był to moduł Broadlink. Moduł wyglądał bardzo podobnie do modułu ESP12, ale odkryłem, że pinout jest zupełnie inny. Po zdjęciu metalowej osłony dowiedziałem się, że to chip RDA 5981AM.

Moje rozwiązanie zastąpienia tego chipa przez ESP jest pokazane w następnym kroku.

Krok 3: Ogólne ciepłe białe żarówki LED - część 2

Ogólne ciepłe białe żarówki LED - część 2
Ogólne ciepłe białe żarówki LED - część 2
Ogólne ciepłe białe żarówki LED - część 2
Ogólne ciepłe białe żarówki LED - część 2
Ogólne ciepłe białe żarówki LED - część 2
Ogólne ciepłe białe żarówki LED - część 2
Ogólne ciepłe białe żarówki LED - część 2
Ogólne ciepłe białe żarówki LED - część 2

Moduły połączone są z podstawą lampy za pomocą 3 pinów, patrz pierwsze zdjęcie:

  • 3V3 (3,3V)
  • GND (masa)
  • PWM (modulacja szerokości impulsu)

Pin PWM służy do ustawiania jasności lampy za pomocą sygnału PWM, który może wynosić od 0 (lampa jest wyłączona) do 100 (lampa jest całkowicie włączona) i każdą wartość pomiędzy. Zobacz tę stronę internetową, aby uzyskać więcej informacji na temat sygnałów PWM.

Ponieważ moduły ESP8266 i ESP8285 działają na 3,3V i mogą bez problemu generować sygnał PWM, zmieniłem moduły Broadlink na moduły ESP8266 lub ESP8285, które leżałem.

Moduły ESP-01S (ESP8266) są flashowane za pomocą oddzielnego programatora, patrz krok 3 niniejszej instrukcji. Do lampy przylutowałem żeńskie piny listwowe z rezystorem podciągającym pomiędzy 3V3 a EN (enable). To był mój pierwszy eksperyment, później przesiadłem się na moduły ESP8285.

Moduły ESP-M1, ESP-M3 i ESP-01F (ESP8285) flashuje się lutując przewody do potrzebnych połączeń (3V3, GND, RX, TX i GPIO0 (patrz krok 1, flashowanie inteligentnej lampy Tuya). wlutowany rezystor podciągający między 3V3 a EN (włącz).

Z modułem ESP-M3 używam GPIO4 do generowania sygnału PWM. Na początku używałem GPIO2, ale gdy LEDbulb jest wyłączony, niski GPIO2 powoduje podświetlenie wbudowanej diody LED, co daje niepożądaną niebieską poświatę w LEDbulb.

Dodaj trochę taśmy kaptonowej, aby poprawić izolację między modułem a połączeniami podstawy lampy.

Edycja: Dowiedziałem się, że moduł ESP-01F nie uruchamia się niezawodnie, prawdopodobnie z powodu niestabilności zasilania przy włączaniu. Rozwiązałem to, dodając kondensator tantalowy 10 uF między GND a VCC. Warto zauważyć, że kondensator ceramiczny 10 uF nie działał.

Krok 4: Ogólne ciepłe białe żarówki LED – część 3

Ogólne ciepłe białe żarówki LED - część 3
Ogólne ciepłe białe żarówki LED - część 3

Oprogramowanie układowe

Kod jest na moim Github.

Oprogramowanie układowe zawiera interfejs sieciowy do sterowania żarówką LED, a także ma opcję aktualizacji oprogramowania układowego OTA za pomocą aktualizacji internetowej

Krok 5: Inteligentna wtyczka Sonoff lub BSD33 - część 1

Inteligentna wtyczka Sonoff lub BSD33 - część 1
Inteligentna wtyczka Sonoff lub BSD33 - część 1
Inteligentna wtyczka Sonoff lub BSD33 - część 1
Inteligentna wtyczka Sonoff lub BSD33 - część 1
Inteligentna wtyczka Sonoff lub BSD33 - część 1
Inteligentna wtyczka Sonoff lub BSD33 - część 1
Inteligentna wtyczka Sonoff lub BSD33 - część 1
Inteligentna wtyczka Sonoff lub BSD33 - część 1

Wprowadzenie

Kupiłem tę inteligentną wtyczkę WiFi od Aliexpressa. Działa dobrze z aplikacją Smart Life, ale chciałem sterować nią za pośrednictwem MQTT od Openhab. Zrobiłem już własne oprogramowanie Sonoff dla inteligentnych wtyczek i gniazd, więc próbowałem flashować tę lampę za pomocą tego oprogramowania.

Użyłem również tego oprogramowania do flashowania inteligentnych wtyczek Sonof S20 i Sonoff S26 oraz inteligentnych przełączników Sonoff basic i Sonoff Basic R3. Sposób otwierania i podłączania sprzętu Sonoff do flashowania jest opisany dla Tasmota na wiki tasmota, dlatego nie jest to opisane tutaj.

Otwarcie gniazda

Inteligentna wtyczka jest sklejona. Aby go otworzyć, włóż śrubokręt w wycięcie przy ziemi i użyj pewnej siły, używając drugiej strony gniazda jako punktu obrotu (wskazówka z netpokin w tym temacie). W ten sposób powinieneś być w stanie go wyrwać bez uszkodzenia gniazda.

Na zdjęciach widać wnętrze wtyczki. Składa się z płyty głównej z przekaźnikiem oraz mniejszej płytki, na której zamontowano układ ESP8266 oraz pamięć. Płyty są połączone za pomocą dostępnych połączeń lutowanych.

Krok 6: Inteligentna wtyczka Sonoff lub BSD33 - część 2

Inteligentna wtyczka Sonoff lub BSD33 - część 2
Inteligentna wtyczka Sonoff lub BSD33 - część 2
Inteligentna wtyczka Sonoff lub BSD33 - część 2
Inteligentna wtyczka Sonoff lub BSD33 - część 2
Inteligentna wtyczka Sonoff lub BSD33 - część 2
Inteligentna wtyczka Sonoff lub BSD33 - część 2
Inteligentna wtyczka Sonoff lub BSD33 - część 2
Inteligentna wtyczka Sonoff lub BSD33 - część 2

Błyskowy

Odtworzyłem połączenia lutowane. Zobacz zdjęcie, aby zobaczyć opis połączeń. Dowiedziałam się że:

  • GPIO2 jest podłączone do diody LED (w przycisku wtyczki).
  • GPIO13 jest podłączony do samego przycisku.
  • GPIO15 jest podłączony do mosfetu, który przełącza główny przekaźnik.

Możesz zasilać i sflashować ESP8266 za pomocą programatora FTDI. Podłącz żeńskie kable dupontowe do następujących połączeń: (VCC (3.3V), GND, RX, TX i GPIO0)

GPIO0 jest potrzebne do wprowadzenia ESP8266 w tryb programowy. Podłącz go do uziemienia podczas zasilania ESP8266.

Na moim programatorze FTDI dodałem kondensator 470uF między masą a VCC. W innym projekcie dowiedziałem się, że to zwiększyło stabilność.

Programator FTDI ma kilka innych nieużywanych pinów GND i VCC, można ich użyć do połączenia GPIO0 z GND.

Krok 7: Inteligentna wtyczka Sonoff lub BSD33 - część 3

Inteligentna wtyczka Sonoff lub BSD33 - część 3
Inteligentna wtyczka Sonoff lub BSD33 - część 3
Inteligentna wtyczka Sonoff lub BSD33 - część 3
Inteligentna wtyczka Sonoff lub BSD33 - część 3
Inteligentna wtyczka Sonoff lub BSD33 - część 3
Inteligentna wtyczka Sonoff lub BSD33 - część 3
Inteligentna wtyczka Sonoff lub BSD33 - część 3
Inteligentna wtyczka Sonoff lub BSD33 - część 3

Oprogramowanie układowe

Moje oprogramowanie jest na moim Github.

Główne części oprogramowania układowego

  • Połączenie z serwerem WiFi i MQTT
  • Ręczne przełączanie w trybie online i offline (przy uruchomieniu)
  • Jeśli przekaźnik jest przełączany ręcznie, gdy urządzenie jest w trybie offline, wysyła stan przez MQTT po ponownym podłączeniu
  • Stan przekaźnika jest przechowywany w pamięci RTC (zobacz ten film o pamięci RTC w ESP8266)
  • Interfejs sieciowy do sterowania przełącznikiem i uzyskiwania dostępu do aktualizacji internetowej dla OTA
  • Oprogramowanie układowe jest odpowiednie dla tej inteligentnej wtyczki BSD33, ale także dla urządzeń Sonoff: Sonoff S20, Sonoff S26, Sonoff basic, Sonof Basic R3

Integracje Openhab

Używam tej wtyczki do kontrolowania mocy mojego ekspresu do kawy. Poprzez Openhab i Google Home mogę nim sterować głosowo.

Zaimplementowałem timer, który wyłącza ekspres po określonym czasie, patrz zdjęcie mojej mapy strony Openhab. Ustawiony czas jest wstrzykiwany w NodeRed, z różnymi ustawionymi czasami w dni powszednie i weekendy.

Zobacz mój Github, aby zapoznać się z przykładami elementów, reguł i plików map witryn.

Zalecana: