Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?: 6 koraka (sa slikama)
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?: 6 koraka (sa slikama)
Anonim
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?
Apple HomeKit Wi-Fi odvlaživač zraka temeljen na ESP8266?

Nažalost, postoji samo jedan ili dva odvlaživača zraka koji podržavaju Apple HomeKit, ali oni imaju zaista visoke cijene (300 USD+). Pa sam odlučio napraviti vlastiti Apple HomeKit odvlaživač zraka s Wi-Fi funkcijom na temelju jeftinog koji već imam?

Može raditi izvorno s HomeKitom koristeći ESP8266 pa nije potreban kućni most, HAP-NodeJS! ??

Pošto je kod vrlo složen i koristio sam mnogo prilagođenih biblioteka, napravio sam unaprijed kompajlirane datoteke firmvera. Za one koji žele napraviti domaće HomeKit projekte, izvorni kod za esp-homekit dostupan je ovdje. Ako ne želite koristiti moj firmver, dolje je dostupan GPIO pinout za izradu vlastitog?

Za više informacija posjetite srodnu stranicu GitHub! ??

Karakteristike:

  • Mjerenje vlažnosti pomoću SHT3x senzora
  • Postavite ciljnu vlažnost
  • Kontrola brzine ventilatora
  • Nivo vode (preko LED dioda i automatskog isključivanja kada je rezervoar pun)
  • Dugme za uključivanje/isključivanje

PCB dijelovi:

  • ESP12F/E/S
  • XROW600B Odvlaživač zraka
  • SHT3x Senzor temperature/vlažnosti
  • SMD 0805 otpornici
  • SMD 0805 kondenzatori
  • AMS1117-3.3
  • Taktilno dugme
  • 1x4P 2,54 mm zaglavlje (opcionalno)
  • IRF540NS
  • SMD 10x10.5 50V 100uF Kondenzator
  • SMD 6x7 6, 3V 330uF Kondenzator
  • LM2575S-5.0
  • 330uH CRDH74 induktor
  • 1N4007 dioda
  • 2N3904
  • VH3.96-2P
  • XH2.54 2P, 4P, 5P
  • 3 mm crvena/zelena LED
  • 3 mm (visina) LED najlonski odstojnik
  • 4P muški XH2.54 sa kablom (za senzor vlažnosti)

Supplies

  • LemilicaORStajnica za lemljenjeORI Topioni vazdušni lemni pištolj
  • Za učitavanje koda vjerovatno morate kupiti i USB TTL adapter.
  • Za rastavljanje odvlaživača treba vam nekoliko odvijača.
  • Prilagođena PCB
  • Odvlaživač zraka XROW600B

Korak 1: Rastavljanje

Rastavljanje
Rastavljanje
Rastavljanje
Rastavljanje
Demontaža
Demontaža

Za rastavljanje odvlaživača zraka samo vam je potreban odvijač koji može stati u rupe na stražnjoj strani uređaja! ??

  1. Odvijte 2 vijka na dnu uređaja
  2. Odvijte 4 vijka na stražnjoj strani uređaja
  3. Sada možete rastaviti plastično kućište
  4. Isključite svaki konektor na PCB -u
  5. Odvijte 2 vijka koji drže PCB

Korak 2: Prilagođena PCB

Prilagođena PCB
Prilagođena PCB
Prilagođena PCB
Prilagođena PCB
Prilagođena PCB
Prilagođena PCB
Prilagođena PCB
Prilagođena PCB

Dizajnirao sam prilagođenu PCB ploču koja može zamijeniti originalnu, vrlo osnovnu. To je u osnovi samo napajanje / stepeni pretvarač od 12V do 3.3V, dva MOSFET-a za pogon ventilatora i peltiera, sam ESP8266, dvije LED diode i taktilno dugme kao na izvornom.

Dodao sam i iste konektore za novu PCB kao i na originalnoj i dodatni 4 -pinski konektor za SHT3x senzor vlažnosti. 9V napajanje koje dolazi s odvlaživačem zraka također se može koristiti! Sve je plug 'n' play?

Više informacija o PCB -ovima možete pronaći ovdje

PCB datoteke možete pronaći na PCBWay

SHT3x Senzor vlage

Morate spojiti SHT3x senzor pomoću muškog XH2.54-4P konektora sa žicama (povezanim na popisu dijelova) jednostavno povezujući sve kako treba: VCC na VCC, GND na GND, SDA na SDA i SCL na SCL ??

Trenutno u mojim postavkama senzor samo visi izvan kućišta odvlaživača, na vama je gdje/kako ćete postaviti senzor, ali unutar kućišta odvlaživača uhvaćena vlaga/voda može utjecati na očitanje senzora! ??

GPIO Pinout

Ako želite koristiti vlastiti firmver, evo isječka:

  • Dugme - GPIO0 (D3 na wemosu D1 mini)
  • SHT3x SDA - GPIO4 (D2 na wemosu D1 mini)
  • SHT3x SCL - GPIO5 (D1 na wemosu D1 mini)
  • Ugrađena LED GPIO2 (D4 na wemos D1 mini)
  • LED za napajanje - GPIO14 (D5 na wemos D1 mini)
  • Ventilator - GPIO15 (D8 na wemosu D1 mini)
  • Peltier - GPIO12 (D6 na wemosu D1 mini)
  • Senzor spremnika - GPIO13 (D7 na wemosu D1 mini)

Korak 3: Postavljanje softvera

Postavljanje softvera
Postavljanje softvera
Postavljanje softvera
Postavljanje softvera
Postavljanje softvera
Postavljanje softvera

Možete preuzeti firmver sa moje stranice GitHub

Windows

Za Windows možete koristiti službeni Espressif -ov alat za preuzimanje firmvera!

Postavljanje adresa bljeskalice (0x2000), veličine bljeskalice (4MB/32mbit) i načina rada bljeskalice (DIO/QIO) je vrlo važan korak, ali ove postavke se mogu promijeniti ovisno o modulu koji koristite! Takođe preporučujem da obrišete blic kada prvi put instalirate firmver pre postavljanja.bin datoteka!

Postavke:

  • Brzina prijenosa 115200
  • Veličina blica 4MB ili 32mbit (u zavisnosti od vašeg modula)
  • Način rada blica QIO (ili DIO, ovisno o vašem modulu)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 main.bin
  • 40MHz

MacOS

Za MacOS možete koristiti ovaj alat za bljeskanje!

  • Postavke: Obriši blic - da (samo pri prvoj instalaciji)
  • Brzina prijenosa 115200
  • Veličina blica 4MB ili 32mbit (u zavisnosti od vašeg modula)
  • Način rada blica QIO (ili DIO, ovisno o vašem modulu)
  • Datoteka: main.bin
  • 40MHz

Ručno blic

Moramo instalirati esptool.py na naš Mac kako bismo mogli fleširati naš ESP modul. Za rad s esptool.py trebat će vam ili Python 2.7, Python 3.4 ili novija Python instalacija na vašem sistemu. Preporučujemo korištenje najnovije verzije Pythona, pa idite na web stranicu Python i instalirajte je na računalo. S instaliranim Pythonom, otvorite prozor terminala i instalirajte najnovije stabilno izdanje esptool.py s pipom:

pip install esptool

Napomena: kod nekih Python instalacija ta naredba možda neće raditi i dobit ćete grešku. U tom slučaju pokušajte instalirati esptool.py sa:

pip3 install esptool python -m pip install esptool pip2 install esptool

Nakon instalacije, esptool.py će biti instaliran u zadani direktorij izvršnih programa Python i trebali biste ga moći pokrenuti pomoću naredbe esptool.py. U prozoru terminala pokrenite sljedeću naredbu:

esptool.py

S esptool.py instaliranim na vašem računaru, možete jednostavno fleširati svoju ploču ESP8266 s firmverom. Prvo morate preuzeti tri bin datoteke: rboot.bin i blank_config.bin i najnovije izdanje. Rboot.bin sadrži pokretački program za ESP8266, a blank_config.bin samo u praznoj konfiguracijskoj datoteci, a ledstrip.bin sadrži firmver. Sada povežite svoj uređaj s FTDI adapterom u flash modu.

Da biste omogućili ESP8266 firmver, GPIO0 iglica koja treperi mora biti povučena nisko pri napajanju uređaja. Sa mojim prilagođenim PCB -om postoji dugme koje morate pritisnuti i držati dok povezujete FTDI adapter sa računarom. Nasuprot tome, za normalno pokretanje GPIO0 mora biti povučen visoko ili plutajući. Pokreni u FLASH MODE Idite u direktorij koji ste napravili u koji ste stavili prethodno preuzete datoteke rboot.bin blank_config.bin (npr. Preuzimanja) Otvorite aplikaciju Terminal. Kliknite ikonu Finder na vašoj podlozi. Kliknite Idi. Kliknite Uslužni programi. Dvaput kliknite Terminal.

Promijenite u direktorij za preuzimanje.

Napomena: Ako za spremanje tri.bin datoteke koristite drugu biblioteku, idite do te biblioteke pomoću naredbe `cd`: Upotrijebite esptool.py za bljeskanje uređaja.

cd preuzimanja

Za povezivanje s ESP8266 trebat će vam USB TTL adapter. Ako koristite Wemos D1 Mini, potreban je samo microUSB kabel, Wemos ima ugrađen TTL adapter.

Prilikom prve instalacije firmvera moramo izbrisati blic:

esptool.py -p / dev / erase_flash

Obično će vaš ESPPort biti nešto poput /dev /cu.usbserial-`xxxxxx`. Zatim ponovo postavite uređaj u flash način rada i bljesnite novi firmver:

esptool.py -p /dev/cu.wchusbserial1420 --baud 115200 write_flash -fs 32m -fm dio -ff 40m 0x0 rboot.bin 0x1000 blank_config.bin 0x2000 main.bin

Wi-Fi i HomeKit postavljanje

Wi-Fi podešavanje

Morate konfigurirati WiFi mrežu prije dodavanja dodatne opreme u HomeKit. Za konfiguriranje Wi-Fi postavki uređaj generira vlastiti Wi-Fi u načinu rada AP. Morate se povezati s njim da biste postavili svoju Wi-Fi mrežu. Jednostavno uzmite svoj iOS uređaj, idite na Postavke-> Wi-Fi i potražite SSID pod nazivom HomeKid, a zatim MAC adresu modula i povežite se s njim. Iz sigurnosnih razloga AP je zaštićen lozinkom!

Zadana AP lozinka: 12345678

Pričekajte nekoliko sekundi dok se na webu ne prikaže sve Wi-Fi mreže koje je uređaj pronašao. Odaberite svoju i unesite lozinku! Zatim kliknite na dugme Pridruži se! Modul će pokušati povezati odabranu Wi-Fi mrežu, što će potrajati nekoliko sekundi.

Napomena: Ako je zadana lozinka pogrešna, možete resetirati Wi-Fi postavke držanjem tipke 10 sekundi

Postavljanje HomeKita

Na iOS uređaju otvorite aplikaciju Home i slijedite uobičajene korake za dodavanje nove dodatne opreme. Podešavanje uparivanja traje oko 30 sekundi.

Kod HomeKita je 586-84-417

Također možete skenirati ovaj HomeKit QR kôd.

Napomena: Ako uparivanje ne uspije, možete isključiti uređaj, ponovo ga uključiti i ponovo pokrenuti postavljanje HomeKit -a (postavke Wi -Fi -ja moraju biti konfigurirane). Nakon uspješnog uparivanja LED za napajanje će treptati bijelo 3 puta!

Korak 4: PCB veze

PCB veze
PCB veze
PCB veze
PCB veze

Za dizajn PCB -a odabrao sam iste konektore kao i oni na originalnom PCB -u! ??

Dakle, ovaj korak bi trebao biti jednostavan:

  • Spojite ventilator na konektor za ventilator
  • Spojite TEC (peltier modul) na odgovarajući konektor
  • Priključite 5 -polni konektor za napajanje u odgovarajući konektor
  • Spojite SHT3x modul na vlastiti konektor

Korak 5: Sastavite to zajedno

Sastavljajući to zajedno
Sastavljajući to zajedno
Sastavljajući to zajedno
Sastavljajući to zajedno

Sklapanje uređaja je isti proces kao i demontaža obrnutim redoslijedom?

Korak 6: Korisne napomene?

Korisne napomene?
Korisne napomene?

Odvlaživač ima neke sigurnosne značajke kada je spremnik pun i uređaj radi:

  • Automatski isključuje ventilator/Peltier sve dok se spremnik ne isprazni
  • Odmah uključuje crvenu LED diodu
  • Treperi LED za napajanje 3 puta svakih 30 sekundi

Također ima sigurnosnu funkciju u slučaju da senzor SHT3x ne radi ispravno:

  • Automatski isključuje ventilator/Peltier sve dok se spremnik ne isprazni
  • Postavljanje trenutne vlažnosti na 0%
  • Treperi LED dioda za napajanje 2 puta svakih 30 sekundi

Kada i SHT3x ima grešku i spremnik je pun LED dioda za napajanje će bljeskati 6 puta svakih 30 sekundi.

U ESP8266 postoji neka greška koju ne morate isključiti iz napajanja, trostrukim pritiskom na dugme ponovno ćete pokrenuti ESP8266!

Kada je odvlaživač uključen, a trenutna vlažnost zraka jednaka i/ili manja od ciljane vlažnosti, uređaj će preći u stanje mirovanja. U aplikaciji Home prikazat će se "Postavljeno na …" kada uređaj radi u praznom hodu i prikazat će "Snižavanje na …" kada radi!

Ažuriranje firmvera

Planirao sam implementaciju Over-The-Air (OTA) ažuriranja firmvera, ali to nije tako pouzdano pa ažuriranje treba obaviti ručno kao pri prvom postavljanju! Jedina razlika je što ne morate brisati blic, jednostavnim bljeskanjem novijeg firmvera bez brisanja sačuvat će se vaše Wi-Fi / HomeKit postavke! ??