Turinys:

Techninė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink“LED lemputė, „Sonoff“, „BSD33 Smart Plug“: 7 žingsniai
Techninė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink“LED lemputė, „Sonoff“, „BSD33 Smart Plug“: 7 žingsniai

Video: Techninė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink“LED lemputė, „Sonoff“, „BSD33 Smart Plug“: 7 žingsniai

Video: Techninė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink“LED lemputė, „Sonoff“, „BSD33 Smart Plug“: 7 žingsniai
Video: ESP8266 Smart Light Switch with Servo Motor 2024, Lapkritis
Anonim
Techninė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink“LED lemputė, „Sonoff“, „BSD33 Smart Plug“
Techninė ir programinė įranga „Hack Smart Devices“, „Tuya“ir „Broadlink“LED lemputė, „Sonoff“, „BSD33 Smart Plug“

Šioje instrukcijoje aš jums parodysiu, kaip aš pažadinau kelis išmaniuosius įrenginius su savo programine įranga, kad galėčiau juos valdyti naudodami MQTT per „Openhab“sąranką.

Pridėsiu naujų įrenginių, kai juos nulaužiau.

Žinoma, yra ir kitų programinės įrangos metodų, skirtų pritaikytos programinės įrangos atnaujinimui, pvz., „Tuya convert“, tačiau man patinka suprasti, kaip prietaisas veikia ir kas yra „po gaubtu“.

Kodas rašomas ir mirksi naudojant „Arduino IDE“.

Aš valdau savo įrenginius per „Openhab“ir „Google Home“(per „Openhab“), jei norite sužinoti daugiau arba jums reikia.items failo ir pan., Praneškite man komentaruose.

Svarbiausia saugumas

Būkite atsargūs, nes dirbame su tinklo įtampa maitinamais įrenginiais. Prieš pradėdami dirbti, atjunkite prietaisus nuo maitinimo šaltinio.

Turiu abejonių, ar prietaisas po pakeitimo yra saugus, išmeskite jį.

Prekės

Daugeliui įsilaužimų jums reikia FDTI programuotojo, prijungto prie kompiuterio, kuriame veikia „Arduino IDE“, kai kurių jungiamųjų laidų, lituoklio, kai kurių rezistorių ir ESP8266 arba ESP8285 modulių.

1 žingsnis: „Tuya“LED RGBW išmanioji lemputė

„Tuya“LED RGBW išmanioji lemputė
„Tuya“LED RGBW išmanioji lemputė
„Tuya“LED RGBW išmanioji lemputė
„Tuya“LED RGBW išmanioji lemputė
„Tuya“LED RGBW išmanioji lemputė
„Tuya“LED RGBW išmanioji lemputė

Įvadas

Aš nusipirkau šią lempą iš „Aliexpress“. Tai gerai veikia su „Smart Life“programa, bet norėjau ją valdyti per „MQTT“iš „Openhab“. Aš jau sukūriau savo „Sonoff B1“programinę -aparatinę įrangą, todėl bandžiau blykstelėti šią lempą ta programine įranga.

Mirksi

Lemputę atidarote atsargiai nuimdami plastikinį dangtelį, ranka, jėga arba sukdami atsuktuvą tarp metalo ir plastiko. Galite pamatyti pliką ESP8266 lustą.

Reikalingos jungtys atskleidžiamos per mažas plokštes ant PCB (3v3, GND, RX, TX ir IO0 (GPIO0))

Pirmiausia įdėjau šiek tiek lituoklio prie trinkelių ir lituoklio prie laidų, o po to lituojau. Laidams prie lempos pritvirtinti naudojau raištelį ir keletą karštų klijų.

Norint įjungti ESP8266 programos režimą, reikalingas GPIO0. Prijunkite jį prie žemės, kai įjungiate ESP8266. Galite įjungti ir įjungti ESP8266 naudodami FTDI programuotoją.

Firmware

Programinė įranga yra pagrįsta mano „Sonoff B1“programine įranga, tačiau yra modifikuota, nes „Sonoff B1“naudoja „MY9231“LED tvarkykles, kurias varo ESP8285 lustas, ir šioje „Tuya Smart“lempoje 4 kanalus (RGBW) valdo PWM signalais tiesiogiai perjungiami mosfetai. iš ESP8266.

Žalias kanalas prijungtas prie GPIO12, raudonas prie GPIO14, mėlynas prie GPIO13, o baltas kanalas prijungtas prie GPIO4. Kode matote, kad: #define GREENPIN 12 #define REDPIN 14 #define BLUEPIN 13 #define WHITEPIN 4.

Visas kodas yra mano „Github“.

2 žingsnis: bendros šiltos baltos spalvos LED lemputės - 1 dalis

Bendrosios šiltos baltos spalvos LED lemputės - 1 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 1 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 1 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 1 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 1 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 1 dalis

Įvadas

Pirkau šias LED lemputes iš „Aliexpress Blue/white box“ir „black box“. Juos galima valdyti naudojant „Magic Home“išmaniųjų namų programą ir „Techlife pro“programą. Nebandžiau šių programų, nes norėjau valdyti LED lemputes per „Openhab“MQTT. Kadangi jau turėjau RGBW lempučių programinę -aparatinę įrangą, naudoju ją ne su keturiais (RGBW) kanalais, o tik su vienu kanalu.

Mirksi

Lemputę atidarote atsargiai nuimdami plastikinį dangtelį. Aš sužinojau, kad dangtelis buvo šiek tiek priklijuotas prie metalo, todėl man reikėjo jėgos iš atsuktuvo tarp metalo ir plastiko.

Tikėjausi pamatyti ESP8266 arba ESP8285 lustą, tačiau tai buvo „Broadlink“modulis. Modulis atrodė panašiai kaip ESP12 modulis, tačiau sužinojau, kad kontaktas yra visiškai kitoks. Nuėmęs metalinį dangtelį sužinojau, kad tai RDA 5981AM mikroschema.

Mano sprendimas pakeisti šį lustą ESP parodytas kitame žingsnyje.

3 žingsnis: bendros šiltos baltos šviesos diodų lemputės - 2 dalis

Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 2 dalis

Moduliai yra prijungti prie lempos pagrindo per 3 kaiščius, žr.

  • 3V3 (3.3V)
  • GND (žemė)
  • PWM (impulsų pločio moduliacija)

PWM kaištis naudojamas lempos ryškumui nustatyti per PWM signalą, kuris gali skirtis nuo 0 (lemputė išjungta) iki 100 (lempa visiškai įjungta) ir kiekviena vertė tarp jų. Daugiau informacijos apie PWM signalus rasite šioje svetainėje.

Kadangi ESP8266 ir ESP8285 moduliai veikia 3,3 V įtampa ir gali lengvai generuoti PWM signalą, pakeičiau „Broadlink“modulius į „ESP8266“arba „ESP8285“modulius.

ESP-01S (ESP8266) moduliai mirksi per atskirą programuotoją, žr. Šios instrukcijos 3 veiksmą. Prie lempos litavau antgalių kaiščius su ištraukiamuoju rezistoriumi tarp 3V3 ir EN (įjungti). Tai buvo mano pirmasis eksperimentas, vėliau pakeičiau ESP8285 modulius.

ESP-M1, ESP-M3 ir ESP-01F (ESP8285) moduliai mirksi litavimo laidais prie reikiamų jungčių (3V3, GND, RX, TX ir GPIO0 (žr. 1 veiksmą, išmaniosios lempos „Tuya“mirksėjimas). I lituojamas ištraukiamas rezistorius tarp 3V3 ir EN (įjungti).

Naudodamas modulį ESP-M3, PWM signalui generuoti naudoju GPIO4. Iš pradžių naudojau GPIO2, bet kai LED lemputė dega, žemas GPIO2 apšviečia borto šviesos diodą, kuris LED lemputėje suteikia nepageidaujamą mėlyną švytėjimą.

Norėdami pagerinti izoliaciją tarp modulio ir lempos pagrindo jungčių, pridėkite šiek tiek kaptono juostos.

Redaguoti: sužinojau, kad ESP-01F modulis nėra patikimai paleistas, tikriausiai dėl energijos nestabilumo įjungiant. Aš tai išsprendžiau pridėdamas 10 uF tantalo kondensatorių tarp GND ir VCC. Pažymėtina, kad keraminis 10 uF kondensatorius neveikė.

4 žingsnis: bendros šiltos baltos šviesos diodų lemputės - 3 dalis

Bendrosios šiltos baltos spalvos LED lemputės - 3 dalis
Bendrosios šiltos baltos spalvos LED lemputės - 3 dalis

Firmware

Kodas yra mano „Github“.

Į programinę -aparatinę įrangą įtraukta žiniatinklio sąsaja, skirta valdyti LED lemputę, taip pat yra galimybė atnaujinti programinės įrangos OTA per „Webupdate“

5 žingsnis: „Sonoff“arba „BSD33 Smart Plug“- 1 dalis

„Sonoff“arba „BSD33 Smart Plug“- 1 dalis
„Sonoff“arba „BSD33 Smart Plug“- 1 dalis
„Sonoff“arba „BSD33 Smart Plug“- 1 dalis
„Sonoff“arba „BSD33 Smart Plug“- 1 dalis
„Sonoff“arba „BSD33 Smart Plug“- 1 dalis
„Sonoff“arba „BSD33 Smart Plug“- 1 dalis
„Sonoff“arba „BSD33 Smart Plug“- 1 dalis
„Sonoff“arba „BSD33 Smart Plug“- 1 dalis

Įvadas

Aš nusipirkau šį „WiFi“išmanųjį kištuką iš „Aliexpress“. Tai gerai veikia su „Smart Life“programa, bet norėjau ją valdyti per „MQTT“iš „Openhab“. Aš jau sukūriau savo „Sonoff“programinę -aparatinę įrangą, skirtą išmaniesiems kištukams ir lizdams, todėl bandžiau blykstelėti šią lempą ta programine įranga.

Aš taip pat naudojau šią programinę įrangą, kad mirksėčiau savo išmaniuosius kištukus „Sonof S20“ir „Sonoff S26“bei išmaniuosius „Sonoff Basic“ir „Sonoff Basic R3“jungiklius. Kaip atidaryti ir prijungti aparatinę įrangą „Sonoff“įrenginius mirksėti, „Tasmota“aprašyta „Tasmota“wiki svetainėje, todėl tai čia nėra aprašyta.

Lizdo atidarymas

Išmanusis kištukas yra priklijuotas. Norėdami jį atidaryti, įkiškite atsuktuvą į žemės išpjovą ir šiek tiek paspauskite, naudodami kitą lizdo pusę kaip pasukimo tašką (užuomina iš šios temos „netpokin“). Tokiu būdu turėtumėte sugebėti jį iškišti nepažeisdami lizdo.

Nuotraukose matote kištuko vidų. Jį sudaro pagrindinė plokštė su relė ir mažesnė plokštė, ant kurios sumontuota ESP8266 mikroschema ir atmintis. Plokštės yra sujungtos per prieinamas litavimo jungtis.

6 žingsnis: „Sonoff“arba „BSD33 Smart Plug“- 2 dalis

„Sonoff“arba „BSD33 Smart Plug“- 2 dalis
„Sonoff“arba „BSD33 Smart Plug“- 2 dalis
„Sonoff“arba „BSD33 Smart Plug“- 2 dalis
„Sonoff“arba „BSD33 Smart Plug“- 2 dalis
„Sonoff“arba „BSD33 Smart Plug“- 2 dalis
„Sonoff“arba „BSD33 Smart Plug“- 2 dalis
„Sonoff“arba „BSD33 Smart Plug“- 2 dalis
„Sonoff“arba „BSD33 Smart Plug“- 2 dalis

Mirksi

Aš pakeičiau lydmetalio jungtis. Norėdami pamatyti jungčių aprašymą, žiūrėkite paveikslėlį. Sužinojau, kad:

  • GPIO2 prijungtas prie šviesos diodo (kištuko mygtuke).
  • GPIO13 yra prijungtas prie paties mygtuko.
  • GPIO15 yra prijungtas prie „mosfet“, kuris perjungia pagrindinę relę.

Galite įjungti ir įjungti ESP8266 naudodami FTDI programuotoją. Prijunkite moterų dupontinius kabelius prie šių jungčių: (VCC (3.3V), GND, RX, TX ir GPIO0)

Norint įjungti ESP8266 programos režimą, reikalingas GPIO0. Prijunkite jį prie žemės, kai įjungiate ESP8266.

Prie savo FTDI programuotojo pridėjau 470uF kondensatorių tarp žemės ir VCC. Kitame projekte sužinojau, kad tai padidino stabilumą.

FTDI programuotojas turi keletą kitų nenaudojamų GND ir VCC kaiščių, galite juos naudoti norėdami prijungti GPIO0 prie GND.

7 žingsnis: „Sonoff“arba „BSD33 Smart Plug“- 3 dalis

„Sonoff“arba „BSD33 Smart Plug“- 3 dalis
„Sonoff“arba „BSD33 Smart Plug“- 3 dalis
„Sonoff“arba „BSD33 Smart Plug“- 3 dalis
„Sonoff“arba „BSD33 Smart Plug“- 3 dalis
„Sonoff“arba „BSD33 Smart Plug“- 3 dalis
„Sonoff“arba „BSD33 Smart Plug“- 3 dalis
„Sonoff“arba „BSD33 Smart Plug“- 3 dalis
„Sonoff“arba „BSD33 Smart Plug“- 3 dalis

Firmware

Mano programinė įranga yra mano „Github“.

Pagrindinės programinės aparatinės įrangos dalys

  • Prisijungimas prie „WiFi“ir MQTT serverio
  • Rankinis perjungimas prisijungus ir neprisijungus (paleidžiant)
  • Jei relė rankiniu būdu perjungiama, kai įrenginys neprisijungęs, prijungus ji siunčia būseną per MQTT
  • Relės būsena išsaugoma RTC atmintyje (žr. Šį vaizdo įrašą apie ESP8266 RTC atmintį)
  • Žiniatinklio sąsaja jungikliui valdyti ir prieigai prie OTA „Webupdate“
  • Programinė įranga tinka šiam BSD33 išmaniajam kištukui, bet ir „Sonoff“įrenginiams: „Sonoff S20“, „Sonoff S26“, „Sonoff basic“, „Sonof Basic R3“

„Openhab“integracijos

Aš naudoju šį kištuką savo kavos aparato galiai valdyti. „Openhab“ir „Google Home“galiu jį valdyti balsu.

Aš įdiegiau laikmatį, kuris perjungia mano kavos aparatą po iš anksto nustatyto laiko, žr. Mano „Openhab“svetainės schemos paveikslėlį. Iš anksto nustatytas laikas įšvirkščiamas „NodeRed“, o darbo dienomis ir savaitgaliais skirtingas iš anksto nustatytas laikas.

Elementų, taisyklių ir svetainės schemos failų pavyzdžių ieškokite mano „Github“.

Rekomenduojamas: