Uključite bilo koji pametni uređaj u Apple HomeKit
Mnogi pametni uređaji ne podržavaju Apple HomeKit i funkcionišu samo sa platformama kao što su Alexa i Google. Međutim, zahvaljujući ovom triku sa Raspberry Pi-jem, možete omogućiti HomeKit podršku za bilo koji pametni uređaj koristeći softver otvorenog koda Homebridge.
Ako ste se u potpunosti posvetili HomeKit-u, primetićete da mali broj pametnih uređaja nativno podržava ovaj sistem. Na primer, mnoge pristupačne pametne sijalice ne mogu se povezati sa HomeKit-om upravo zbog nedostatka podrške. Komplet od četiri TECKIN sijalice, koje su često preporučivane, koštaju znatno manje od jedne premium LIFX sijalice.
Iako ove sijalice nisu tako kvalitetne kao LIFX, sa nešto manje živim bojama i potencijalnim zujanjem, njihova cena po komadu je vrlo povoljna. Ipak, najveći problem je izostanak HomeKit podrške. One rade sa Google Home, Alexa, IFTTT i aplikacijom proizvođača, što je dovoljno za korisnike koji su se opredelili samo za TECKIN proizvode.
Međutim, pošto se ne mogu kontrolisati iz HomeKit-a, ne možete ih aktivirati putem aplikacije Home, kontrolnog centra ili Siri. Takođe, ne mogu se uključiti u scene sa drugim brendovima ili koristiti u automatizacijama. Za korisnike HomeKit sistema, ovo predstavlja veliki nedostatak.
Upoznajte Homebridge
Srećom, postoji rešenje koje značajno poboljšava upotrebljivost ovih sijalica. HomeKit API podržava uređaje koji se nazivaju mostovi, kao što je Philips Hue Bridge. Oni povezuju uređaje koji koriste druge protokole. Most se dodaje kao uređaj u HomeKit-u, koji registruje sve povezane uređaje. Kada se zatraži ažuriranje svetla, vaš telefon komunicira sa mostom, koji zatim komunicira sa sijalicom.
Dakle, most samo prevodi informacije sa jednog API-ja na drugi. Pošto se TECKIN sijalice mogu kontrolisati putem interneta, moguće je povezati ih sa HomeKit-om pomoću softvera, bez potrebe za dodatnim hardverom.
Ako imate Raspberry Pi (čak i jeftini Pi Zero je dovoljan), možete ga koristiti kao most pomoću okvira zvanog Homebridge. Ova jednostavna Node.JS aplikacija emulira HomeKit API i prosleđuje zahteve vašim pametnim uređajima koji nisu kompatibilni sa HomeKit-om.
Jednostavno pokrenete aplikaciju na Pi-ju i ona dodaje sve „nespretne“ uređaje u aplikaciju Home. Kada kontrolišete sijalicu putem aplikacije Home ili Siri, Homebridge komunicira sa uređajima umesto vas. Nakon podešavanja, uređaj se ponaša kao da ima nativnu HomeKit podršku.
Ova aplikacija mora konstantno da radi na Homebridge-u, pa nije pogodna za laptop. Raspberry Pi je idealan, ali možete koristiti i stariji računar koji vam služi kao server ili desktop koji je uvek uključen.
Homebridge je fleksibilan okvir koji možete proširiti pomoću dodataka. Postoji velika zajednica korisnika, tako da je velika verovatnoća da postoji dodatak za vaš pametni uređaj. Ako dodatak ne postoji, a vaš uređaj ima API, možete ga sami napisati ukoliko ste tehnički potkovani.
Za većinu korisnika, instalacija se svodi na instaliranje Homebridge-a i odgovarajućeg dodatka za brend, uz minimalnu konfiguraciju. Ako ste upoznati sa komandnom linijom, ovo je relativno jednostavan proces.
Instalacija i konfiguracija Homebridge-a
Homebridge je Node.JS aplikacija, pa morate prvo instalirati Node i npm. Ako koristite Linux, verovatno ih možete dobiti putem menadžera paketa.
Na Ubuntu sistemu, potrebno je da unesete sledeće komande da ručno podesite Node repo, a zatim instalirate nodejs:
curl -sL https://deb.nodesource.com/setup_13.x | sudo -E bash - sudo apt-get install -y nodejs
U suprotnom, posetite stranicu za preuzimanje Node-a da biste pronašli uputstva za vaš operativni sistem.
Ako koristite Linux, potrebno je instalirati i neke zavisnosti:
sudo apt-get install libavahi-compat-libdnssd-dev
Nakon toga, možete instalirati Homebridge globalno putem npm-a:
sudo npm install -g --unsafe-perm homebridge
Takođe, potrebno je instalirati dodatke za brendove vaših uređaja. Na primer, za TECKIN sijalice, dodatak je homebridge-tuya-web, koji se takođe instalira globalno.
Unesite sledeću komandu:
npm i homebridge-tuya-web -g
Kada je sve instalirano, spremni ste za korišćenje! Unesite sledeće da biste pokrenuli Homebridge i inicijalizovali sve:
homebridge
Prikazaće se upozorenje o nedostatku konfiguracije, koju morate kreirati. Podrazumevani direktorijum je ~/.homebridge/, ali možete koristiti parametar -U ako želite da ga premestite.
Kreirajte novu JSON konfiguracionu datoteku u ovom direktorijumu pomoću sledeće komande:
nano ~/.homebridge/config.json
Bez obzira na dodatke koje koristite, potrebna vam je sledeća osnovna konfiguracija:
{ "bridge": { "name": "Homebridge", "username": "CC:22:3D:E3:CE:30", "port": 51826, "pin": "031-45-154" }, "description": "Custom HomeBridge Server", "ports": { "start": 52100, "end": 52150, }, "platforms": [ ] }
Ova konfiguracija podešava Homebridge sa podrazumevanim portom, imenom, PIN-om i rasponom portova dostupnih za dodeljivanje drugim uređajima.
Unutar praznog niza platformi, postavljate konfiguraciju za svaki dodatak. Uputstva i primere možete pronaći na GitHub stranici svakog dodatka.
Na primer, dodatak homebridge-tuya-web za TECKIN sijalice zahteva korisničko ime i lozinku za povezivanje sa API-jem aplikacije za sijalice i još nekoliko stvari:
"platforms": [ { "platform": "TuyaWebPlatform", "name": "TuyaWebPlatform", "options": { "username": "username", "password": "password", "countryCode": "1", "platform": "smart_life", "pollingInterval": 10 } } ]
Kada je sve konfigurirano, Homebridge bi trebalo da bude spreman za rad. Pokrenite ga ponovo i vaš terminal će prikazati veliki QR kod. Skenirajte ga pomoću aplikacije Home da biste dodali Homebridge i sve povezane uređaje u HomeKit.
Homebridge učitava vaše dodatke i trebalo bi da prikaže poruku za svaki pronađeni uređaj. Trebalo bi da ih vidite u HomeKit-u nakon što se dodaju, i da budu potpuno funkcionalni.
Primećeno je blago kašnjenje u poređenju sa LIFX sijalicama, verovatno zato što se sijalice kontrolišu putem API-ja, a ne direktno. U početku, sijalice nisu ispravno prikazivale belu i toplu belu boju, ali nakon prilagođavanja, scene su postavljene kako treba.
Uvek možete da konfigurišete uređaje u njihovim aplikacijama, sačekate da se aplikacija Home ažurira, a zatim podesite scenu u HomeKit-u.
Ako treba ponovo da dodate Homebridge, obrišite direktorijum persits/ u konfiguracionom direktorijumu, a zatim uklonite most iz HomeKit-a u podešavanjima bilo koje povezane sijalice na kartici „Most“.
Dodavanje Homebridge-a kao usluge
Ako želite da Homebridge radi stalno, konfigurišite ga da se ponovo pokrene u slučaju pada ili ponovnog pokretanja Raspberry Pi-ja. To možete postići putem Unix servisa. Podešavanje uradite tek kada potvrdite da Homebridge radi kako treba.
Prvo dodajte novog korisnika servisa, koji se zove homebridge:
sudo useradd -M --system homebridge
Postavite lozinku:
sudo passwd homebridge
Zatim premestite konfiguraciju Homebridge-a iz ličnog kućnog direktorijuma. /var/lib/homebridge/ bi trebalo da bude u redu:
sudo mv ~/.homebridge /var/lib/homebridge/
Proverite da korisnik koji koristi Homebridge ima vlasništvo nad ovim direktorijumom i poddirektorijumima:
sudo chown -R homebridge /var/lib/homebridge/
Kada to uradite, možete kreirati servis. Kreirajte novu datoteku pod nazivom homebridge.service u /etc/systemd/system/:
sudo nano /etc/systemd/system/homebridge.service
Zalepite sledeću konfiguraciju:
[Unit] Description=Homebridge service After=syslog.target network-online.target [Service] Type=simple User=homebridge ExecStart=/usr/bin/homebridge -U /var/lib/homebridge Restart=on-failure RestartSec=10 KillMode=process [Install] WantedBy=multi-user.target
Ponovo učitajte demon usluga da biste ažurirali promene:
sudo systemctl daemon-reload
Sada možete da omogućite servis (podesite ga da se pokreće prilikom pokretanja sistema):
sudo systemctl enable homebridge
I pokrenite ga:
sudo systemctl start homebridge
Ako treba da rešite probleme sa konfiguracijom servisa, možete pregledati logove tako što ćete uneti:
journalctl -fn 50 -u homebridge