Sommario:

Hardware e software Hack Smart Devices, Tuya e Broadlink LEDbulb, Sonoff, Smart Plug BSD33: 7 passaggi
Hardware e software Hack Smart Devices, Tuya e Broadlink LEDbulb, Sonoff, Smart Plug BSD33: 7 passaggi

Video: Hardware e software Hack Smart Devices, Tuya e Broadlink LEDbulb, Sonoff, Smart Plug BSD33: 7 passaggi

Video: Hardware e software Hack Smart Devices, Tuya e Broadlink LEDbulb, Sonoff, Smart Plug BSD33: 7 passaggi
Video: Tuya Smart Plug Smart Life App 2024, Dicembre
Anonim
Hardware e software per hackerare dispositivi intelligenti, lampadine LED Tuya e Broadlink, Sonoff, Smart Plug BSD33
Hardware e software per hackerare dispositivi intelligenti, lampadine LED Tuya e Broadlink, Sonoff, Smart Plug BSD33

In questo Instructable ti mostro come ho flashato diversi dispositivi intelligenti con il mio firmware, così posso controllarli tramite MQTT tramite la mia configurazione Openhab.

Aggiungerò nuovi dispositivi quando li ho hackerati.

Ovviamente ci sono altri metodi basati su software per eseguire il flashing del firmware personalizzato, come Tuya convert, ma mi piace capire come funziona il dispositivo e cosa c'è "sotto il cofano".

Il codice viene scritto e flashato utilizzando Arduino IDE.

Controllo i miei dispositivi tramite Openhab e Google Home (tramite Openhab), se vuoi saperne di più o hai bisogno del file.items ecc., faccelo sapere nei commenti.

La sicurezza prima

Attenzione perché stiamo lavorando su dispositivi alimentati a tensione di rete. Scollegare i dispositivi dall'alimentazione prima di intervenire su di essi.

Se hai dei dubbi sul fatto che il dispositivo sia sicuro dopo la modifica, eliminalo.

Forniture

Per la maggior parte degli hack è necessario un programmatore FDTI collegato a un computer che esegue Arduino IDE, alcuni cavi di collegamento, un saldatore, alcuni resistori e moduli ESP8266 o ESP8285.

Passaggio 1: Lampadina intelligente Tuya LED RGBW

Lampadina intelligente Tuya LED RGBW
Lampadina intelligente Tuya LED RGBW
Lampadina intelligente Tuya LED RGBW
Lampadina intelligente Tuya LED RGBW
Lampadina intelligente Tuya LED RGBW
Lampadina intelligente Tuya LED RGBW

introduzione

Ho acquistato questa lampada da Aliexpress. Funziona bene con l'app Smart Life, ma volevo controllarlo tramite MQTT da Openhab. Ho già creato il mio firmware Sonoff B1, quindi ho provato a far lampeggiare questa lampada con quel firmware.

lampeggiante

Si apre la lampada rimuovendo con cura il tappo di plastica, a mano con forza o ruotando un cacciavite tra il metallo e la plastica. Puoi vedere il chip ESP8266 nudo.

Le connessioni necessarie sono esposte tramite piccoli pad sul PCB (3v3, GND, RX, TX e IO0 (GPIO0))

Ho prima saldato i pad e saldato i fili e poi li ho saldati insieme. Ho usato un tiewrap e della colla a caldo per attaccare i fili alla lampada.

GPIO0 è necessario per portare ESP8266 in modalità programma. Collegalo a terra quando accendi ESP8266. È possibile alimentare e flashare ESP8266 utilizzando un programmatore FTDI.

Firmware

Il firmware è basato sul mio firmware Sonoff B1, ma è modificato, perché Sonoff B1 utilizza driver LED MY9231 che sono guidati dal chip ESP8285 e in questa lampada Tuya Smart i 4 canali (RGBW) sono guidati da mosfet commutati direttamente dai segnali PWM dall'ESP8266.

Il canale verde è collegato a GPIO12, rosso a GPIO14, blu a GPIO13 e il canale bianco è collegato a GPIO4. Nel codice lo vedi come: #define GREENPIN 12 #define REDPIN 14 #define BLUEPIN 13 #define WHITEPIN 4.

Il codice completo è sul mio Github.

Passaggio 2: lampadine LED bianche calde generiche - Parte 1

Lampadine LED bianche calde generiche - Parte 1
Lampadine LED bianche calde generiche - Parte 1
Lampadine LED bianche calde generiche - Parte 1
Lampadine LED bianche calde generiche - Parte 1
Lampadine LED bianche calde generiche - Parte 1
Lampadine LED bianche calde generiche - Parte 1

introduzione

Ho comprato queste lampadine a LED da Aliexpress Blue/white box e black box. Devono essere controllati tramite l'app Magic home smart home e l'app Techlife pro. Non ho provato queste app, poiché volevo controllare le lampadine a LED tramite MQTT da Openhab. Dato che avevo già il firmware per le lampadine RGBW, l'ho usato con non quattro canali (RGBW), ma solo un canale.

lampeggiante

Si apre la lampada rimuovendo con cura il cappuccio di plastica. Ho scoperto che il tappo era un po' incollato al metallo, quindi avevo bisogno di forza da un cacciavite tra il metallo e la plastica.

Mi aspettavo di vedere un chip ESP8266 o ESP8285, tuttavia era un modulo Broadlink. Il modulo assomigliava molto a un modulo ESP12, ma ho scoperto che la piedinatura era completamente diversa. Rimuovendo il coperchio di metallo, ho scoperto che era un chip RDA 5981AM.

La mia soluzione per sostituire questo chip con un ESP è mostrata nel passaggio successivo.

Passaggio 3: lampadine LED bianche calde generiche - Parte 2

Lampadine LED bianche calde generiche - Parte 2
Lampadine LED bianche calde generiche - Parte 2
Lampadine LED bianche calde generiche - Parte 2
Lampadine LED bianche calde generiche - Parte 2
Lampadine LED bianche calde generiche - Parte 2
Lampadine LED bianche calde generiche - Parte 2
Lampadine LED bianche calde generiche - Parte 2
Lampadine LED bianche calde generiche - Parte 2

I moduli sono collegati alla base della lampada tramite 3 pin, vedi la prima immagine:

  • 3V3 (3.3V)
  • GND (terra)
  • PWM (modulazione di larghezza di impulso)

Il pin PWM viene utilizzato per impostare la luminosità della lampada tramite un segnale PWM, che può variare da 0 (lampada spenta) a 100 (lampada completamente accesa) e ogni valore intermedio. Vedere questo sito Web per ulteriori informazioni sui segnali PWM.

Poiché i moduli ESP8266 ed ESP8285 funzionano a 3,3 V e possono facilmente generare un segnale PWM, ho cambiato i moduli Broadlink con i moduli ESP8266 o ESP8285 che avevo in giro.

I moduli ESP-01S (ESP8266) vengono lampeggiati tramite un programmatore separato, vedere il passaggio 3 di questo Instructable. Ho saldato i pin dell'intestazione femmina alla lampada con una resistenza di pull-up tra 3V3 e EN (abilitazione). Questo è stato il mio primo esperimento, in seguito sono passato ai moduli ESP8285.

I moduli ESP-M1, ESP-M3 e ESP-01F (ESP8285) vengono flashati saldando i fili alle connessioni necessarie (3V3, GND, RX, TX e GPIO0 (vedi passaggio 1, il lampeggio della lampada intelligente Tuya). saldato un resistore di pull up tra 3V3 e EN (abilitato).

Con il modulo ESP-M3, utilizzo GPIO4 per generare il segnale PWM. All'inizio ho usato GPIO2, ma quando la lampadina LED è spenta, la GPIO2 bassa provoca l'illuminazione del LED di bordo, che dà un bagliore blu indesiderato nella lampadina LED.

Aggiungi del nastro kapton per migliorare l'isolamento tra il modulo e le connessioni della base della lampada.

Modifica: ho scoperto che il modulo ESP-01F non si avvia in modo affidabile, probabilmente a causa dell'instabilità dell'alimentazione all'accensione. Ho risolto questo problema aggiungendo un condensatore al tantalio da 10 uF tra GND e VCC. Degno di nota un condensatore ceramico da 10 uF non ha funzionato.

Passaggio 4: lampadine LED bianche calde generiche - Parte 3

Lampadine LED bianche calde generiche - Parte 3
Lampadine LED bianche calde generiche - Parte 3

Firmware

Il codice è sul mio Github.

Il firmware include un'interfaccia web per controllare il LEDbulb e ha anche un'opzione per aggiornare il firmware OTA tramite Webupdate

Passaggio 5: Smart Plug Sonoff o BSD33 - Parte 1

Spina intelligente Sonoff o BSD33 - Parte 1
Spina intelligente Sonoff o BSD33 - Parte 1
Spina intelligente Sonoff o BSD33 - Parte 1
Spina intelligente Sonoff o BSD33 - Parte 1
Spina intelligente Sonoff o BSD33 - Parte 1
Spina intelligente Sonoff o BSD33 - Parte 1
Spina intelligente Sonoff o BSD33 - Parte 1
Spina intelligente Sonoff o BSD33 - Parte 1

introduzione

Ho acquistato questa presa intelligente WiFi da Aliexpress. Funziona bene con l'app Smart Life, ma volevo controllarlo tramite MQTT da Openhab. Ho già creato il mio firmware Sonoff per spine e prese intelligenti, quindi ho provato a far lampeggiare questa lampada con quel firmware.

Ho anche usato questo firmware per eseguire il flashing dei miei smart plug Sonof S20 e Sonoff S26 e degli smart switch Sonoff basic e Sonoff Basic R3. Come aprire e connettere l'hardware dei dispositivi Sonoff per il flashing è descritto per Tasmota nel wiki di tasmota, quindi non è descritto qui.

Apertura della presa

La presa intelligente è incollata insieme. Per aprirlo metti un cacciavite nell'apertura a terra e applica una certa forza usando l'altro lato della presa come punto di articolazione (suggerimento da netpokin questo argomento). In questo modo dovresti essere in grado di estrarre il piede di porco senza danneggiare la presa.

Nelle foto si vede l'interno della spina. Consiste in una scheda madre con il relè un pcb più piccolo su cui è montato il chip ESP8266 e la memoria. Le schede sono collegate tramite connessioni a saldare accessibili.

Passaggio 6: Smart Plug Sonoff o BSD33 - Parte 2

Spina intelligente Sonoff o BSD33 - Parte 2
Spina intelligente Sonoff o BSD33 - Parte 2
Spina intelligente Sonoff o BSD33 - Parte 2
Spina intelligente Sonoff o BSD33 - Parte 2
Spina intelligente Sonoff o BSD33 - Parte 2
Spina intelligente Sonoff o BSD33 - Parte 2
Spina intelligente Sonoff o BSD33 - Parte 2
Spina intelligente Sonoff o BSD33 - Parte 2

lampeggiante

Ho decodificato le connessioni di saldatura. Vedere l'immagine per la descrizione dei collegamenti. Ho scoperto che:

  • GPIO2 è collegato al LED (nel pulsante della spina).
  • GPIO13 è collegato al pulsante stesso.
  • GPIO15 è collegato al mosfet che commuta il relè principale.

È possibile alimentare e flashare ESP8266 utilizzando un programmatore FTDI. Collegare i cavi dupont femmina alle seguenti connessioni: (VCC (3.3V), GND, RX, TX e GPIO0)

GPIO0 è necessario per portare ESP8266 in modalità programma. Collegalo a terra quando accendi ESP8266.

Sul mio programmatore FTDI ho aggiunto un condensatore da 470uF tra terra e VCC. In un altro progetto ho scoperto che questo aumentava la stabilità.

Il programmatore FTDI ha altri pin GND e VCC inutilizzati, puoi usarli per connettere GPIO0 a GND.

Passaggio 7: Smart Plug Sonoff o BSD33 - Parte 3

Smart Plug Sonoff o BSD33 - Parte 3
Smart Plug Sonoff o BSD33 - Parte 3
Smart Plug Sonoff o BSD33 - Parte 3
Smart Plug Sonoff o BSD33 - Parte 3
Spina intelligente Sonoff o BSD33 - Parte 3
Spina intelligente Sonoff o BSD33 - Parte 3
Spina intelligente Sonoff o BSD33 - Parte 3
Spina intelligente Sonoff o BSD33 - Parte 3

Firmware

Il mio firmware è sul mio Github.

Parti principali del firmware

  • Connessione a WiFi e server MQTT
  • Commutazione manuale quando online e offline (all'avvio)
  • Se il relè viene commutato manualmente quando il dispositivo è offline, invia lo stato tramite MQTT quando viene ricollegato
  • Lo stato del relè è memorizzato nella memoria RTC (vedere questo video sulla memoria RTC dell'ESP8266)
  • Interfaccia web per il controllo dello switch e l'accesso al Webupdate per OTA
  • Il firmware è adatto per questo smartplug BSD33, ma anche per i dispositivi Sonoff: Sonoff S20, Sonoff S26, Sonoff basic, Sonof Basic R3

Integrazioni Openhab

Uso questa presa per controllare la potenza della mia macchina da caffè. Tramite Openhab e Google Home posso controllarlo tramite voce.

Ho implementato un timer che accende la mia macchina del caffè dopo un tempo prestabilito, guarda l'immagine della mia mappa del sito Openhab. L'ora preimpostata viene iniettata in NodeRed, con orari preimpostati diversi nei giorni feriali e nei giorni del fine settimana.

Vedi il mio Github per esempi di elementi, regole e file della mappa del sito.

Consigliato: