
많은 스마트 장비는 Apple HomeKit 지원을 건너 뛰고 Alexa, Google 및 기타 플랫폼과 만 통합합니다. 그러나이 Raspberry Pi 핵을 사용하면 오픈 소스 Homebridge 소프트웨어를 사용하여 모든 스마트 장치에 HomeKit 지원을 추가 할 수 있습니다.
모든 스마트 기기를위한 HomeKit
HomeKit에 올인 한 경우 큰 문제 중 하나는 스마트 장치를 지원하는 스마트 장치의 수입니다. 예를 들어, 저렴한 스마트 전구를지지하는 유일한 것은 HomeKit 지원이 없다는 것입니다. “스마트 전구”에 대한 아마존의 선택은 TECKIN의 4 개 팩으로,이 문서를 작성할 때 단일 LIFX 전구보다 약 $ 40 정도입니다.

물론, 그들은 LIFX만큼 프리미엄이 아닙니다. 색상이 생생하지 않고 화장실에서 들리는 윙윙 거리는 소리가 들리지만 팝 10 달러에 매우 저렴한 가격입니다.
그러나 주요 문제는 HomeKit 지원이 없다는 것입니다. Google Home, Alexa, IFTTT 및 제조업체의 앱과 함께 작동하는 것은 완전히 바보가 아닙니다. TECKIN 스마트 전구 만있는 사람에게는 좋습니다.
그러나 HomeKit에서 액세스 할 수 없으므로 홈 앱, 제어 센터의 위젯 또는 Siri에서 제어 할 수 없습니다. 또한 다른 브랜드의 전구가있는 장면에 포함하거나 자동화에서 사용할 수 없습니다. HomeKit에 이미 투자 한 경우, 이는 아마도 거래 중단 일 가능성이 높습니다.
Homebridge 만나기
운 좋게도 이러한 특정 전구를 훨씬 더 유용하게 만드는 해킹이 있습니다. HomeKit API를 사용하면 HuPhilips Hue와 같은 브리지라고하는 장치가 다른 프로토콜에서 작동하는 자식 장치를 연결할 수 있습니다. 브리지를 HomeKit에서 장치로 추가하기 만하면 연결된 각 조명이 HomeKit에 등록됩니다. 조명 업데이트를 요청할 때마다 전화기가 브리지와 통신하고 브리지가 조명과 통신합니다.
따라서 브리지는 한 API에서 다른 API로 정보를 중계합니다. 인터넷을 통해 TECKIN 전구를 제어 할 수 있기 때문에 독점 하드웨어가 필요없이 소프트웨어만으로 HomeKit에 전구를 연결할 수 있습니다.
Raspberry Pi를 둘러싼 경우 ($ 5 $ Pi Zero는 괜찮음) Homebridge라는 프레임 워크가있는 브리지로 설정할 수 있습니다. 이 경량 NodeJS 애플리케이션은 HomeKit API를 에뮬레이트하고 HomeKit이 아닌 스마트 디바이스로 요청을 전달합니다.
기본적으로 Pi에서 실행하고 각 'dumb'기기를 홈 앱에 추가합니다. Home 앱 또는 Siri를 통해 전구를 제어하려고하면 Homebridge가 장치와 통신합니다. 설정 한 후에는 장치가 처음에 HomeKit을 지원 한 것과 같습니다.
이를 위해서는 장치가 항상 Homebridge를 실행해야하므로 랩톱에 설치할 것이 아닙니다. Raspberry Pi가 이상적이지만 오래된 장치가있는 경우 항상 실행되는 서버 또는 데스크톱으로 용도를 변경할 수 있습니다.
Homebridge는 프레임 워크이며 플러그인으로 확장 할 수 있습니다. 커뮤니티 지원이 상당히 크므로 특정 스마트 기기에 홈 브릿지 플러그인이있어이를 지원할 가능성이 높습니다. 기기에 플러그인이 없지만 스마트 기기에 API가 있고 기술에 정통한 사용자라면 직접 작성할 수 있습니다.
그러나 대부분의 사람들에게 설정은 약간의 구성과 함께 Homebridge와 장치의 브랜드 플러그인을 설치하는 것입니다. 커맨드 라인을 사용할 수 있고 시간이 약간 있으면 상당히 쉽습니다.
Homebridge 설치 및 구성
Homebridge는 NodeJS 앱이므로 설치해야합니다 node 과 npm 그것을 사용하십시오. 컴퓨터가 Linux를 실행하는 경우 패키지 관리자에서 얻을 수 있습니다.
Ubuntu에서 다음을 입력하여 노드 저장소를 수동으로 설정 한 다음 설치해야합니다. nodejs:
curl -sL https://deb.nodesource.com/setup_13.x | sudo -E bash - sudo apt-get install -y nodejs
그렇지 않으면 특정 OS에 설치하는 방법에 대한 정보는 노드 다운로드 페이지를 참조하십시오.
Linux를 사용하는 경우 아래와 같이 일부 종속성을 설치해야합니다.
sudo apt-get install libavahi-compat-libdnssd-dev
이후, Homebridge를 통해 전 세계적으로 Homebridge를 설치할 수 있습니다 npm, 아래 그림과 같이:
sudo npm install -g --unsafe-perm homebridge
Homebridge는 프레임 워크 일 뿐이므로 필요한 브랜드 플러그인을 설치하려고합니다. 예를 들어 TECKIN 전구의 경우 플러그인은 homebridge-tuya-web또한 전 세계에 설치됩니다.
다음을 입력하십시오.
npm i homebridge-tuya-web -g
모든 것이 설치되면 실제로 사용할 수 있습니다! Homebridge를 한 번 실행하고 모든 것을 초기화하려면 다음을 입력하십시오.
homebridge
구성 부족으로 인해 불만을 제기 할 수 있습니다. 기본 디렉토리는 ~/.homebridge/을 사용할 수 있지만 -U 당신이 그것을 이동하려는 경우 매개 변수.
이 폴더에 새 JSON 구성 파일을 작성하려면 다음을 입력하십시오.
nano ~/.homebridge/config.json
사용하는 플러그인에 관계없이 다음 기본 구성이 필요합니다.
{
"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": (
)
}
이렇게하면 다른 장치에 할당 할 수있는 기본 포트, 이름, PIN 및 포트 범위로 Homebridge가 구성됩니다.
빈 내부 platforms 각 플러그인에 대해 구성을 배치합니다. 각 플러그인의 GitHub 페이지에서 이에 대한 지침과 예제를 찾을 수 있어야합니다.
아래 예에서 homebridge-tuya-web TECKIN 전구용 플러그인은 전구 앱의 API에 연결하기위한 사용자 이름과 비밀번호를 알고 싶어합니다.
"platforms": (
{
"platform": "TuyaWebPlatform",
"name": "TuyaWebPlatform",
"options":
{
"username": "username",
"password": "password",
"countryCode": "1",
"platform": "smart_life",
"pollingInterval": 10
}
}
)
구성이 완료되면 Homebridge를 사용할 수 있습니다. 다시 실행하면 터미널에 축소 할 수있는 거대한 QR 코드가 표시됩니다. Home 앱으로이를 스캔하여 연결된 모든 장치와 HomeKit에 추가하십시오.

Homebridge는 플러그인을로드하고 찾은 각 장치에 대한 메시지를 화면에 기록해야합니다. 추가 한 후 HomeKit에서 모두 볼 수 있으며 모든 기능을 수행해야합니다.
LIFX 전구에 비해 약간의 지연이 나타났습니다. 전구가 API가 아닌 직접 제어되기 때문일 수 있습니다. 처음에는 전구에 흰색과 따뜻한 흰색이 올바르게 표시되지 않았지만 약간 조정 한 후 적절한 장면을 설정할 수있었습니다.
언제든지 자체 앱에서 장치를 구성하고 홈 앱이 업데이트 될 때까지 기다린 다음 사전 구성된 구성으로 HomeKit에서 장면을 설정할 수 있습니다.
Homebridge를 다시 추가해야하는 경우 persist/ config 디렉토리에 폴더를 넣은 다음“Bridge”탭 아래 연결된 전구 설정에서 HomeKit에서 브리지를 제거하십시오.
홈 브리지를 서비스로 추가
Homebridge를 항상 실행하려면 충돌이 발생하거나 Raspberry Pi가 다시 시작될 때 홈 브릿지를 다시 시작하도록 구성해야합니다. 유닉스 서비스를 통해이를 수행 할 수 있습니다. Homebridge가 의도 한대로 작동하는지 확인한 후에 설정하십시오.
먼저 새로운 서비스 사용자 인 homebridge:
sudo useradd -M --system homebridge
비밀번호를 설정하십시오.
sudo passwd homebridge
다음으로 homebridge개인 홈 디렉토리 외부의 구성. /var/lib/homebridge/ 괜찮을거야:
sudo mv ~/.homebridge /var/lib/homebridge/
사용하는 사람이 homebridge 해당 디렉토리 및 모든 하위 폴더의 소유권이 있습니다.
sudo chown -R homebridge /var/lib/homebridge/
완료되면 서비스를 만들 수 있습니다. 이렇게하려면이라는 새 파일을 만드십시오. homebridge.service 에 /etc/systemd/system/:
sudo nano /etc/systemd/system/homebridge.service
그런 다음 다음 구성을 붙여 넣습니다.
(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
서비스 데몬을 다시로드하여 변경 사항으로 업데이트하십시오.
sudo systemctl daemon-reload
이제 서비스를 활성화 할 수 있어야합니다 (부팅시 실행되도록 설정).
sudo systemctl enable homebridge
그리고 그것을 시작하십시오 :
sudo systemctl start homebridge
서비스 구성에서 발생하는 오류를 디버그해야하는 경우 다음을 입력하여 서비스의 로그를 볼 수 있습니다.
journalctl -fn 50 -u homebridge








