Мазмуну:

Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?: 6 кадам (сүрөттөр менен)
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?: 6 кадам (сүрөттөр менен)

Video: Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?: 6 кадам (сүрөттөр менен)

Video: Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?: 6 кадам (сүрөттөр менен)
Video: Aqara E1 CH-C01E - беспроводная wi-fi 2К IP камера с поддержкой Apple Homekit 2024, Ноябрь
Anonim
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?
Apple HomeKit Wi-Fi нымдагычтары ESP8266 негизинде?

Тилекке каршы, Apple HomeKitти колдогон бир же эки DeHumidifiers бар, бирок алар чындап эле жогору бааларга ээ (300 $+). Ошентип, мен өзүмдүн Wi-Fiга жөндөмдүү Apple HomeKit нымдагычын мурунтан бар арзан баага негиздөөнү чечтим?

Бул HomeKit менен ESP8266 аркылуу иштей алат, андыктан homebridge, HAP-NodeJS кереги жок! ?

Код абдан татаал болгондуктан, мен көптөгөн жеке китепканаларды колдонгонум үчүн, мен алдын ала түзүлгөн камтылган файлдарды жасадым. HomeKit жергиликтүү долбоорлорун жасоого кызыккандар үчүн esp-homekit булак коду бул жерде. Эгерде сиз менин программамды колдонууну каалабасаңыз, GPIO pinout төмөндө жеткиликтүү, аны өзүңүз жасаңыз?

Көбүрөөк маалымат алуу үчүн тиешелүү GitHub баракчасына баш багыңыз! ?

Өзгөчөлүктөрү:

  • SHT3x сенсорунун жардамы менен нымдуулукту өлчөө
  • Максаттуу нымдуулукту орнотуу
  • Күйөрман ылдамдыгын көзөмөлдөө
  • Суунун деңгээли (LED аркылуу жана танк толгондо автоматтык түрдө өчүрүү)
  • Power/Reset баскычы

PCB бөлүктөрү:

  • ESP12F/E/S
  • XROW600B нымдагыч
  • SHT3x Temepreature/Нымдуулук сенсору
  • SMD 0805 каршылыгы
  • SMD 0805 конденсаторлор
  • AMS1117-3.3
  • Тийүү баскычы
  • 1x4P 2.54mm баш (милдеттүү эмес)
  • IRF540NS
  • SMD 10x10.5 50V 100uF конденсатору
  • SMD 6x7 6, 3V 330uF Конденсатор
  • LM2575S-5.0
  • 330uH CRDH74 индуктору
  • 1N4007 диод
  • 2N3904
  • VH3.96-2P
  • XH2.54 2P, 4P, 5P
  • 3MM Кызыл/Жашыл LED
  • 3мм (бийиктиги) LED нейлон аралыгы
  • 4P Эркек XH2.54 кабели менен (нымдуулук сенсору үчүн)

Жабдуулар

  • Ширетүүчү темирOR
  • Кодду жүктөө үчүн USB TTL адаптерин сатып алышыңыз керек.
  • Нымдандыргычты ажыратуу үчүн сизге кээ бир отверткалар керек болот.
  • Ыңгайлаштырылган PCB
  • XROW600B нымдандыргыч

1 -кадам: ажыратуу

Ажыратуу
Ажыратуу
Ажыратуу
Ажыратуу
Ажыратуу
Ажыратуу

Нымдандыргычты ажыратуу үчүн сизге бир гана нерсе керек - бул отвертка, ал аппараттын артындагы тешиктерге батат! ?

  1. Аспаптын астындагы 2 бураманы ажыратыңыз
  2. Аспаптын артындагы 4 бураманы ажыратыңыз
  3. Эми сиз пластикалык корпусту ажырата аласыз
  4. PCBдеги ар бир туташтыргычты сууруңуз
  5. ПХБ кармап турган 2 бураманы ажыратыңыз

2 -кадам: Ыңгайлаштырылган PCB

Ыңгайлаштырылган PCB
Ыңгайлаштырылган PCB
Ыңгайлаштырылган PCB
Ыңгайлаштырылган PCB
Ыңгайлаштырылган PCB
Ыңгайлаштырылган PCB
Ыңгайлаштырылган PCB
Ыңгайлаштырылган PCB

Мен оригиналдуу, эң негизги бирин алмаштыра турган ыңгайлаштырылган ПХБны иштеп чыктым. Анын негизинен 12Втан 3.3Вга чейин электр менен камсыздоо / басаңдатуучу конвертер, желдеткичти жана пельтьерди башкаруучу эки MOSFET, ESP8266 өзү, эки LED жана тийүү баскычы.

Мен дагы жаңы ПХБ үчүн ошол эле туташтыргычтарды түпнускадагыдай жана SHT3x нымдуулук сенсоруна кошумча 4 пин туташтыргыч коштум. Dumumififier менен келген 9V электр менен камсыздоону да колдонсо болот! Баары плагин ойнобойбу?

Бул жерден ПКБ жөнүндө көбүрөөк маалымат ала аласыз

PCB файлдарын PCBWayден тапса болот

SHT3x нымдуулук сенсору

Сиз SHT3x сенсорун эркектердин XH2.54-4P коннекторун зымдар менен (бөлүктөр тизмесине шилтемеленген) колдонуп, бардыгын жөн эле туташтырууңуз керек: VCCден VCCге, GNDден GNDга, SDAдан SDAга жана SCLден SCLге. ?

Учурда менин орнотуумда сенсор жөн эле кургаткычтын корпусунун сыртында илинип турат, сенсорду кайда/кантип жайгаштыруу өзүңө, ал эми кургаткычтын корпусунун ичиндеги нымдуулук/суу сенсордун көрсөткүчүнө таасир этиши мүмкүн! ?

GPIO Pinout

Эгерде сиз өзүңүздүн камтылган программаңызды колдонууну кааласаңыз, анда пинту:

  • Баскыч - GPIO0 (D1 wemos D1де)
  • SHT3x SDA - GPIO4 (D2 wemos D1де)
  • SHT3x SCL - GPIO5 (D1 wemos D1 мини)
  • Камтылган LED GPIO2 (D4 wemos D1 мини)
  • Power LED - GPIO14 (D1 wemos D1 мини)
  • Күйөрман - GPIO15 (D1 wemos D1 мини)
  • Peltier - GPIO12 (D1 wemos D1 мини)
  • Танк сенсору - GPIO13 (D1 wemos D1 мини)

3 -кадам: Программаны орнотуу

Программалык камсыздоону орнотуу
Программалык камсыздоону орнотуу
Программалык камсыздоону орнотуу
Программалык камсыздоону орнотуу
Программалык камсыздоону орнотуу
Программалык камсыздоону орнотуу

Программаны менин GitHub баракчамдан жүктөп алсаңыз болот

Windows

Windows үчүн сиз Espressif тарабынан орнотулган программалык камсыздоону колдоно аласыз!

Жарк даректерин (0x2000), флештин өлчөмүн (4МБ/32мбит) жана флеш режимин (DIO/QIO) коюу өтө маанилүү кадам, бирок бул жөндөөлөр сиз колдонгон модулга жараша өзгөрүшү мүмкүн! Ошондой эле.bin файлдарын жүктөөдөн мурун, микрофонду биринчи жолу орноткондо, жаркыроону өчүрүүнү сунуштайм!

Орнотуулар:

  • Бод ылдамдыгы 115200
  • Жарыктын өлчөмү 4МБ же 32мбит (модулуңузга жараша)
  • Flash Mode QIO (же DIO, модулуңузга жараша)
  • 0x0000 rboot.bin
  • 0x1000 blank_config.bin
  • 0x2000 main.bin
  • 40 МГц

MacOS

MacOS үчүн бул жаркыраган куралды колдоно аласыз!

  • Орнотуулар: Жарыкты тазалоо - ооба (биринчи жолу орнотулганда гана)
  • Бод ылдамдыгы 115200
  • Жарыктын өлчөмү 4МБ же 32мбит (модулуңузга жараша)
  • Flash Mode QIO (же DIO, модулуңузга жараша)
  • Файл: main.bin
  • 40 МГц

Кол менен Flash

ESP модулубузду жаркырата алуу үчүн, биз Macка esptool.py орнотушубуз керек. Esptool.py менен иштөө үчүн сизге Python 2.7, Python 3.4 же тутумуңузга жаңы Python орнотуусу керек болот. Pythonдун акыркы версиясын колдонууну сунуштайбыз, андыктан Python вебсайтына кирип, аны компьютериңизге орнотуңуз. Python орнотулганда, Терминал терезесин ачып, pip менен акыркы esptool.py релизин орнотуңуз:

esptool орнотуу

Эскертүү: кээ бир Python орнотуулары менен иштебей калышы мүмкүн жана сиз ката аласыз. Эгер андай болсо, esptool.py менен орнотууга аракет кылыңыз:

pip3 esptool python -m pip орнотуу esptool pip2 орнотуу esptool

Орноткондон кийин, сизде esptool.py демейки Python аткарылуучу каталогуна орнотулган болот жана сиз аны esptool.py буйругу менен иштете алышыңыз керек. Терминал терезеңизде төмөнкү буйрукту аткарыңыз:

esptool.py

Компьютериңизге esptool.py орнотулганда, сиз ESP8266 тактаңызды микробелгилер менен оңой эле жаркырата аласыз. Башында үч бин файлын жүктөө керек: rboot.bin жана blank_config.bin жана акыркы версиясы. Rboot.bin ESP8266 үчүн жүктөгүчтү жана бош_config.bin бош конфигурация файлында жана ledstrip.bin камтылган программаны камтыйт. Эми түзмөгүңүздү FTDI адаптерине Flash режиминде туташтырыңыз.

ESP8266 күйгүзүү үчүн GPIO0 жаркылдаган микробдору аппаратты күйгүзүп жатканда төмөн тартылышы керек. Менин ыңгайлаштырылган ПХБда FTDI адаптерин компьютериңизге туташтырып жатканда басып туруу керек болгон баскыч бар. Тескерисинче, кадимки жүктөө үчүн GPIO0 бийик же калкып турушу керек. FLASH РЕЖИМДЕН баштаңыз Мурда жүктөлгөн rboot.bin blank_config.bin файлдарын койгон каталогго өтүңүз (мис. Жүктөөлөр) Терминал колдонмосун ачыңыз. Доктагы Finder сөлөкөтүн чыкылдатыңыз. Барууну басыңыз. Утилиттерди чыкылдатыңыз. Терминалды эки жолу чыкылдатыңыз.

Жүктөөлөр каталогуна өзгөртүү.

Эскертүү: Эгерде сиз үч.bin файлын сактоо үчүн башка китепкананы колдонуп жатсаңыз, ошол китепканага cd` буйругу менен өтүңүз: Түзмөгүңүздү жаркыратуу үчүн esptool.py колдонуңуз.

CD жүктөөлөрү

ESP8266га туташуу үчүн сизге USB TTL адаптери керек болот. Эгерде сиз Wemos D1 Mini колдонуп жатсаңыз, microUSB кабели гана керек болсо, Wemosко TTL адаптери орнотулган.

Камтылган программаны биринчи жолу орнотуп жатканда, биз жарк эттиришибиз керек:

esptool.py -p / dev / erase_flash

Адатта, сиздин ESPPort /dev /cu.usbserial-`xxxxxx` сыяктуу болот. Андан кийин, түзмөгүңүздү кайра флеш режимине коюп, жаңы камтылган программаны жаркылдатыңыз:

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

Wi-Fi жана HomeKit орнотуу

Wi-Fi орнотуу

Аксессуарды HomeKitке кошуудан мурун wifi тармагын конфигурациялашыңыз керек. Wi-Fi орнотууларын конфигурациялоо үчүн, түзмөк AP режиминде өзүнүн Wi-Fi чыгарат. Wi-Fi тармагыңызды орнотуу үчүн ага туташууңуз керек. Жөн гана iOS түзмөгүңүздү алып, Setting-> Wi-Fi бөлүмүнө өтүңүз жана HomeKid деп аталган SSIDди издеңиз, андан кийин модулдун MAC дареги жана ага туташыңыз. Коопсуздук максатында AP сырсөз менен корголгон!

Демейки AP сырсөзү: 12345678

Түзмөк тапкан бардык Wi-Fi тармактарын көрсөткөн веб пайда болгонго чейин бир нече секунд күтө туруңуз. Өзүңүздү тандап, сырсөздү киргизиңиз! Андан кийин Кошулуу баскычын чыкылдатыңыз! Модуль тандалган Wi-Fi тармагын туташтырууга аракет кылат, бул бир нече секундга созулат.

Эскертүү: Эгерде берилген сырсөз туура эмес болсо, баскычты 10 секунда кармап Wi-Fi орнотууларын баштапкы абалга келтире аласыз

HomeKitти орнотуу

IOS түзмөгүңүздө Home колдонмосун ачыңыз жана жаңы аксессуарды кошуу үчүн кадимки кадамдарды аткарыңыз. Жупташтырууну орнотуу болжол менен 30 секундду талап кылат.

HomeKit коду 586-84-417

Ошондой эле бул HomeKit QR кодун сканерлей аласыз.

Эскертүү: Эгерде жупташуу ишке ашпай калса, анда сиз түзмөгүңүздү кубаттан ажыратып, кайра кубаттап, HomeKit орнотуусун кайра баштасаңыз болот (Wifi жөндөөлөрү конфигурацияланат). Ийгиликтүү жупташкандан кийин Power LED 3 ирет ак түстө күйөт!

4 -кадам: PCB байланыштары

PCB байланыштары
PCB байланыштары
PCB байланыштары
PCB байланыштары

PCB дизайны үчүн мен баштапкы ПКБдагыдай эле туташтыргычтарды тандап алдым! ?

Ошентип, бул кадам түз болушу керек:

  • Күйөрманы күйөрман туташтыргычына туташтырыңыз
  • ТЕКти (peltier модулун) тиешелүү коннекторго туташтырыңыз
  • 5 пин Power туташтыргычын тиешелүү коннекторго туташтырыңыз
  • SHT3x модулун өзүнүн туташтыргычына туташтырыңыз

5 -кадам: Аны бириктирүү

Аны бириктирүү
Аны бириктирүү
Аны бириктирүү
Аны бириктирүү

Түзмөктү бириктирүү, тескери тартипте эле ажыратуу процессине окшошпу?

6 -кадам: Пайдалуу эскертүүлөр?

Пайдалуу эскертүүлөр?
Пайдалуу эскертүүлөр?

Танк толуп, түзмөк иштеп турганда нымдагычтын кээ бир коопсуздук функциялары бар:

  • Вентилятор/Пельтиер автоматтык түрдө танк бошогонго чейин өчүрүлөт
  • Ошол замат кызыл LED күйөт
  • Жарык диоду 30 секунд сайын 3 жолу жаркырайт

SHT3x сенсору туура иштебей калганда коопсуздук функциясы бар:

  • Вентилятор/Пельтиер автоматтык түрдө танк бошогонго чейин өчүрүлөт
  • Учурдагы нымдуулукту 0% га коюу
  • Жарык диоду 30 секунд сайын 2 жолу жаркырайт

SHT3x экөө тең ката кетиргенде жана танк толгондо, кубаттуулуктун LEDы 30 секундда 6 жолу жарк этет.

ESP8266да кандайдыр бир ката бар, сиз аппаратты кубаттан ажыратуунун кажети жок, баскычты үч жолу басуу ESP8266ди кайра жүктөйт!

Demumidifier күйгүзүлгөндө жана учурдагы нымдуулук максаттуу нымдуулуктан бирдей жана/же андан аз болгондо, түзмөк Бош режимге өтөт. Home колдонмосунда ал түзмөк бош турганда "Орнотуу…" жана иштей баштаганда "Төмөндөө …” көрсөтүлөт!

Микропрограмманы жаңыртуу

Мен Over-The-Air (OTA) программалык камсыздоонун жаңыртууларын киргизүүнү пландап жатам, бирок бул анча ишенимдүү эмес, ошондуктан жаңыртуу биринчи орнотуудагыдай кол менен жасалышы керек! Жалгыз айырмачылык, флешти өчүрүүнүн кажети жок, жөн гана өчүрбөстөн жаңы микрофонду жаркылдатып, Wi-Fi / HomeKit жөндөөлөрүңүз сакталат! ?

Сунушталууда: