Sisukord:

Riist- ja tarkvara häkkivad nutiseadmeid, Tuya ja Broadlink LEDbulb, Sonoff, BSD33 nutikas pistik: 7 sammu
Riist- ja tarkvara häkkivad nutiseadmeid, Tuya ja Broadlink LEDbulb, Sonoff, BSD33 nutikas pistik: 7 sammu

Video: Riist- ja tarkvara häkkivad nutiseadmeid, Tuya ja Broadlink LEDbulb, Sonoff, BSD33 nutikas pistik: 7 sammu

Video: Riist- ja tarkvara häkkivad nutiseadmeid, Tuya ja Broadlink LEDbulb, Sonoff, BSD33 nutikas pistik: 7 sammu
Video: Kuidas tõmmata ja kasutada torrenteid 2024, November
Anonim
Riist- ja tarkvara häkkivad nutiseadmeid, Tuya ja Broadlink LEDbulb, Sonoff, BSD33 nutikas pistik
Riist- ja tarkvara häkkivad nutiseadmeid, Tuya ja Broadlink LEDbulb, Sonoff, BSD33 nutikas pistik

Selles juhendis näitan teile, kuidas välgutasin mitu nutiseadet oma püsivara abil, nii et saan neid OpenQabi seadistuse kaudu MQTT abil juhtida.

Lisan uued seadmed, kui neid häkkisin.

Loomulikult on kohandatud püsivara välkimiseks muid tarkvarapõhiseid meetodeid, näiteks Tuya convert, kuid mulle meeldib mõista, kuidas seade töötab ja mis on „kapoti all”.

Kood kirjutatakse ja vilgutatakse Arduino IDE abil.

Ma juhin oma seadmeid Openhabi ja Google Home'i kaudu (Openhabi kaudu). Kui soovite rohkem teada saada või vajate faili.items jne, andke mulle sellest kommentaarides teada.

Ohutus ennekõike

Olge ettevaatlik, kuna töötame võrgupingega seadmetega. Enne nende kallal töötamist ühendage seadmed vooluvõrgust lahti.

Mul on kahtlusi, kas seade on pärast muutmist ohutu, visake see ära.

Tarvikud

Enamiku häkkide jaoks vajate FDTI programmeerijat, mis on ühendatud arvutiga, kus töötab Arduino IDE, mõned hüppajajuhtmed, jootekolb, mõned takistid ja ESP8266 või ESP8285 moodulid.

Samm: Tuya LED RGBW nutipirn

Tuya LED RGBW nutipirn
Tuya LED RGBW nutipirn
Tuya LED RGBW nutipirn
Tuya LED RGBW nutipirn
Tuya LED RGBW nutipirn
Tuya LED RGBW nutipirn

Sissejuhatus

Ostsin selle lambi Aliexpressist. See töötab Smart Life'i rakendusega hästi, kuid tahtsin seda juhtida Openhabi MQTT kaudu. Tegin juba oma Sonoff B1 püsivara, nii et proovisin seda lampi selle püsivaraga välgutada.

Vilkuv

Lambi avamiseks eemaldage ettevaatlikult plastkork, käsitsi, jõuga või keerates kruvikeerajat metalli ja plasti vahele. Näete paljast ESP8266 kiipi.

Vajalikud ühendused paljastatakse trükkplaadil olevate väikeste padjade kaudu (3v3, GND, RX, TX ja IO0 (GPIO0))

Panin esmalt padjakeste juurde jootet ja juhtmetele jootet ja siis jootsin need kokku. Juhtmete kinnitamiseks lambi külge kasutasin paela ja mõnda kuuma liimi.

GPIO0 on vajalik ESP8266 programmirežiimi viimiseks. Ühendage see maandusega, kui toite ESP8266. ESP8266 saate FTDI programmeerija abil sisse lülitada ja välgutada.

Püsivara

Püsivara põhineb minu Sonoff B1 püsivaral, kuid seda on muudetud, kuna Sonoff B1 kasutab MY9231 LED -draivereid, mida juhib ESP8285 kiip ja selles Tuya Smart -lambis juhivad 4 kanalit (RGBW) otse PWM -signaalidega lülitatud mosfetid alates ESP8266.

Roheline kanal on ühendatud GPIO12 -ga, punane GPIO14 -ga, sinine GPIO13 -ga ja valge kanal on ühendatud GPIO4 -ga. Koodis näete järgmist: #define GREENPIN 12 #define REDPIN 14 #define BLUEPIN 13 #define WHITEPIN 4.

Täielik kood on minu Githubis.

2. samm: üldised sooja valged LED -lambid - 1. osa

Üldised sooja valged LED -lambid - 1. osa
Üldised sooja valged LED -lambid - 1. osa
Üldised sooja valged LED -lambid - 1. osa
Üldised sooja valged LED -lambid - 1. osa
Üldised sooja valged LED -lambid - 1. osa
Üldised sooja valged LED -lambid - 1. osa

Sissejuhatus

Ostsin need LED -lambid Aliexpress Blue/white box ja black boxist. Neid saab juhtida nutika kodu Magic Home rakenduse ja rakenduse Techlife pro kaudu. Ma ei proovinud neid rakendusi, kuna tahtsin LED -pirne juhtida Openhabi MQTT kaudu. Kuna mul oli RGBW pirnide püsivara juba olemas, kasutasin seda mitte nelja (RGBW) kanaliga, vaid ainult ühe kanaliga.

Vilkuv

Avage lamp, eemaldades ettevaatlikult plastkorgi. Sain teada, et kork oli metallile veidi liimitud, nii et vajasin kruvikeeraja jõudu metalli ja plasti vahel.

Ootasin näha ESP8266 või ESP8285 kiipi, kuid see oli Broadlink moodul. Moodul nägi välja nagu ESP12 moodul, kuid sain teada, et pinout oli täiesti erinev. Metallist katte eemaldamisel sain teada, et see on RDA 5981AM kiip.

Minu lahendus selle kiibi asendamiseks ESP -ga on näidatud järgmises etapis.

3. samm: üldised sooja valged LED -lambid - 2. osa

Üldised sooja valged LED -lambid - 2. osa
Üldised sooja valged LED -lambid - 2. osa
Üldised sooja valged LED -lambid - 2. osa
Üldised sooja valged LED -lambid - 2. osa
Üldised sooja valged LED -lambid - 2. osa
Üldised sooja valged LED -lambid - 2. osa
Üldised sooja valged LED -lambid - 2. osa
Üldised sooja valged LED -lambid - 2. osa

Moodulid on ühendatud lambi alusega 3 tihvti kaudu, vt esimest pilti:

  • 3V3 (3.3V)
  • GND (maa)
  • PWM (impulsi laiuse modulatsioon)

PWM -tihvti kasutatakse lambi heleduse seadmiseks PWM -signaali kaudu, mis võib varieeruda vahemikus 0 (lamp on välja lülitatud) kuni 100 (lamp on täielikult sisse lülitatud) ja iga vahepealne väärtus. Sellelt veebisaidilt leiate lisateavet PWM -signaalide kohta.

Kuna ESP8266 ja ESP8285 moodulid töötavad 3,3 V pingega ja suudavad hõlpsalt PWM -signaali genereerida, muutsin Broadlink -moodulid ESP8266 või ESP8285 mooduliteks, mis mul olid.

ESP-01S (ESP8266) mooduleid vilgutatakse eraldi programmeerija kaudu, vt käesoleva juhendi 3. sammu. Jootsin lambi külge naissoost päisepoldid tõmbetakistiga vahemikus 3V3 kuni EN (lubage). See oli minu esimene katse, hiljem läksin üle ESP8285 moodulitele.

ESP-M1, ESP-M3 ja ESP-01F (ESP8285) mooduleid vilgutatakse jootetraatidega vajalike ühenduste juurde (3V3, GND, RX, TX ja GPIO0 (vt 1. samm, Tuya nutivalgusti vilkumine). I joodetud tõmbetakisti 3V3 ja EN vahel (lubage).

ESP-M3 mooduliga kasutan PWM-signaali genereerimiseks GPIO4. Alguses kasutasin GPIO2, kuid kui LED-pirn on sisse lülitatud, põhjustab madal GPIO2 rongisisese LED-i valgustust, mis annab LED-pirnis soovimatu sinise sära.

Lisage mõni kaptonlint, et parandada isolatsiooni mooduli ja lambi aluse ühenduste vahel.

Edit: sain teada, et ESP-01F moodul ei käivitu usaldusväärselt, tõenäoliselt toite ebastabiilsuse tõttu sisselülitamisel. Lahendasin selle, lisades GND ja VCC vahele 10 uF tantaalkondensaatori. Tähelepanuväärne on keraamiline 10 uF kondensaator.

4. samm: üldised sooja valged LED -lambid - 3. osa

Üldised sooja valged LED -lambid - 3. osa
Üldised sooja valged LED -lambid - 3. osa

Püsivara

Kood on minu Githubis.

Püsivara sisaldab LED -pirni juhtimiseks veebiliidest ja sellel on ka võimalus uuendada püsivara OTA Webupdate kaudu

5. samm: Sonoff või BSD33 nutikas pistik - 1. osa

Sonoff või BSD33 nutikas pistik - 1. osa
Sonoff või BSD33 nutikas pistik - 1. osa
Sonoff või BSD33 nutikas pistik - 1. osa
Sonoff või BSD33 nutikas pistik - 1. osa
Sonoff või BSD33 nutikas pistik - 1. osa
Sonoff või BSD33 nutikas pistik - 1. osa
Sonoff või BSD33 nutikas pistik - 1. osa
Sonoff või BSD33 nutikas pistik - 1. osa

Sissejuhatus

Ostsin selle WiFi nutipistiku Aliexpressist. See töötab Smart Life'i rakendusega hästi, kuid tahtsin seda juhtida Openhabi MQTT kaudu. Tegin juba oma Sonoffi püsivara nutikate pistikute ja pistikupesade jaoks, seega proovisin seda lampi selle püsivaraga välgutada.

Kasutasin seda püsivara ka oma Sonof S20 ja Sonoff S26 nutipistikute ning Sonoff basic ja Sonoff Basic R3 nutikate lülitite välgutamiseks. Kuidas Sonoffi seadmeid vilkumiseks avada ja riistvaraga ühendada, on Tasmota jaoks kirjeldatud tasmota wikis, seetõttu pole seda siin kirjeldatud.

Pistikupesa avamine

Nutikas pistik on kokku liimitud. Selle avamiseks pange kruvikeeraja maanduslõikusse ja rakendage jõudu, kasutades pöördepunktina pistikupesa teist külge (vihje selle teema netpokinilt). Sel moel peaksite saama selle välja tõmmata ilma pistikupesa kahjustamata.

Piltidel näete pistiku sisemust. See koosneb põhiplaadist, mille relee on väiksem trükkplaat, millele on paigaldatud ESP8266 kiip ja mälu. Plaadid on ühendatud juurdepääsetavate jooteühenduste kaudu.

6. samm: Sonoff või BSD33 nutikas pistik - 2. osa

Sonoff või BSD33 nutikas pistik - 2. osa
Sonoff või BSD33 nutikas pistik - 2. osa
Sonoff või BSD33 nutikas pistik - 2. osa
Sonoff või BSD33 nutikas pistik - 2. osa
Sonoff või BSD33 nutikas pistik - 2. osa
Sonoff või BSD33 nutikas pistik - 2. osa
Sonoff või BSD33 nutikas pistik - 2. osa
Sonoff või BSD33 nutikas pistik - 2. osa

Vilkuv

Ma muutsin jooteühendused vastupidiseks. Ühenduste kirjeldust vaata pildilt. Sain teada, et:

  • GPIO2 on ühendatud LED -ga (pistiku nupus).
  • GPIO13 on nupuga ise ühendatud.
  • GPIO15 on ühendatud mosfetiga, mis lülitab põhirelee.

ESP8266 saate FTDI programmeerija abil sisse lülitada ja välgutada. Ühendage naissoost dupontkaablid järgmiste ühendustega: (VCC (3.3V), GND, RX, TX ja GPIO0)

GPIO0 on vajalik ESP8266 programmirežiimi viimiseks. Ühendage see maandusega, kui toite ESP8266.

Lisasin oma FTDI programmeerijale maa ja VCC vahele 470uF kondensaatori. Teises projektis sain teada, et see suurendas stabiilsust.

FTDI programmeerijal on veel mõned kasutamata GND ja VCC tihvtid, saate neid kasutada GPIO0 ühendamiseks GND -ga.

Samm 7: Sonoff või BSD33 Smart Plug - 3. osa

Sonoff või BSD33 nutikas pistik - 3. osa
Sonoff või BSD33 nutikas pistik - 3. osa
Sonoff või BSD33 nutikas pistik - 3. osa
Sonoff või BSD33 nutikas pistik - 3. osa
Sonoff või BSD33 nutikas pistik - 3. osa
Sonoff või BSD33 nutikas pistik - 3. osa
Sonoff või BSD33 nutikas pistik - 3. osa
Sonoff või BSD33 nutikas pistik - 3. osa

Püsivara

Minu püsivara on minu Githubis.

Püsivara põhiosad

  • Ühendus WiFi ja MQTT serveriga
  • Käsitsi vahetamine võrgus ja võrguühenduseta (käivitamisel)
  • Kui relee lülitatakse käsitsi välja, kui seade on võrguühenduseta, saadab see uuesti ühendamisel oleku MQTT kaudu
  • Relee olek salvestatakse RTC mällu (vt seda videot ESP8266 RTC mälu kohta)
  • Veebiliides lüliti juhtimiseks ja juurdepääsuks OTA Webupdate'ile
  • Püsivara sobib sellele BSD33 nutipistikule, aga ka Sonoffi seadmetele: Sonoff S20, Sonoff S26, Sonoff basic, Sonof Basic R3

Openhabi integratsioonid

Kasutan seda pistikut oma kohvimasina toite juhtimiseks. Openhabi ja Google Home'i kaudu saan seda juhtida hääle kaudu.

Ma kasutasin taimerit, mis lülitab kohvimasina etteantud aja möödudes sisse, vaata minu Openhabi saidiplaani pilti. Eelseadistatud aeg sisestatakse rakendusse NodeRed, tööpäevadel ja nädalavahetustel on erinevad eelseadistatud ajad.

Üksuste, reeglite ja saidiplaanifailide näiteid leiate minu Githubist.

Soovitan: