아이폰을 사용하다 보면, 기본 앱에 Home 앱이라는 것이 있다.
애플에서 기본 제공하는 스마트홈 플랫폼으로,
애플 기기를 통해 다양한 스마트 기기를 제어하고 자동화 할 수 있게 만들어 준다.
하지만, Homekit을 지원하는 기기는 한정적이므로
Homebridge라는 오픈 소스를 이용하여,
지원하지 않는 기기들도 Homekit 생태계에 통합 할 수 있도록 해주도록 해보자
설명에 앞서, Homebridge 서버를 구축하기 위해서는 하드웨어와 OS가 필요하다.
대개 Rasberry Pi 와 같은 초소형 컴퓨터에 구축해서 사용하지만,
필자는 개인용 서버에 리눅스가 있으므로, Linux(Ubuntu) 기준으로 기술하도록 하겠다.
Rasberry Pi를 사용하는 사람도 같은 방법으로 따라하면 될 것이다.
Node.js 설치
homebridge는 Node.js 기반으로 동작한다, 따라서 Node.js를 설치를 해주어야 한다.
Node.js — Node.js® 다운로드
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
nodejs.org
현재 LTS 버전은 22, 안정적인 LTS 버전으로 설치하도록 하자
먼저, Ubuntu의 패키지 목록 업데이트, build-essential 패키지 설치, curl 도구를 설치한다.
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install curl

curl 명령어로, node.js에서 LTS 버전을 다운 받은 후 설치
curl -sL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt-get install nodejs
버전 확인 결과, 정상적으로 설치 된 것을 확인할 수 있다.

Homebridge, Homebridge UI 구축
Node.js가 설치가 완료 됐다면, 홈브릿지를 설치해보도록 하자
homebridge와 함께, 웹에서 쉽게 관리 할 수 있는 homebridge-ui도 함께 다운로드 후 설치해준다.
Homebridge
Homebridge adds HomeKit support to your non-HomeKit smart home devices.
homebridge.io
sudo npm install -g --unsafe-perm homebridge homebridge-config-ui-x
sudo hb-service install
설치가 완료되었다면, 서비스 시작 후 상태 확인
추가로, sudo systemctl enable homebridge 명령어로
서버 실행 시, 자동으로 homebridge가 실행되게 설정해줄 수 있다.
sudo systemctl start homebridge
sudo systemctl status homebridge # 상태 확인
sudo systemctl enable homebridge # 부팅 시 자동 실행

http://domain:8581 로 접속해서 homebridge가 정상 설치 되었는지 확인한다.
(homebridge-ui 기본포트는 8581이고, 사용자 재량으로 포트를 바꿔서 사용해도 된다.)
접속 결과 정상적으로 설치가 완료되었다.
필자는 이미 계정 생성을 마친 상태지만,
기본적으로 초기 설정 시, 계정 생성 화면이 나올 것이다.

Homebridge 수동 설정
추가로 간혹 수동 설정이 필요한 경우,
직접 홈브릿지 설정과, 서비스파일 및 환경변수 설정을 해주어야 한다.
이 과정이 필요 없다면, 넘어가도 좋다.
홈브릿지 기본 설정은 다음과 같다.
sudo useradd --system homebridge # homebridge 전용 사용자 생성
sudo mkdir /var/homebridge # 디렉터리 생성
sudo cp ~/.homebridge/config.json /var/homebridge/ # config 파일 복사
sudo cp ~/.homebridge/persist /var/homebridge/persist # persist 파일 복사
sudo chown -R homebridge:homebridge /var/homebridge # homebridge로 소유권 변경
sudo chmod -R 755 /var/homebridge # 권한 설정
서비스 파일 생성 후, 다음과 같이 작성한다.
sudo nano /etc/systemd/system/homebridge.service
[Unit]
Description=Homebridge
After=syslog.target network-online.target
[Service]
Type=simple
User=homebridge
EnvironmentFile=/etc/default/homebridge
ExecStart=/usr/bin/homebridge $HOMEBRIDGE_OPTS
Restart=on-failure
RestartSec=10
KillMode=process
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
[Install]
WantedBy=multi-user.target
마지막으로 환경 파일 생성후, 환경변수를 설정한다.
sudo nano /etc/default/homebridge
HOMEBRIDGE_OPTS=-U /var/homebridge
Homekit 연동
이제 Homebridge 설정을 마쳤으니, Homekit과 연동을 해보도록 하자
iPhone의 Home앱에서 Add Accessory를 누른 후,
설치된 Homebridge 웹 페이지에 나온 QR코드를 인식해주면 연동이 완료된다.


연동이 완료되었다면,
이와 같이 정상적으로 연동이 된 것을 확인할 수 있다.

이렇게 Homebridge 구축이 완료 됐다.
이제 Homekit에서 지원하지 않는 기기들은 Homebridge에 하나하나 등록 해 보도록 하겠다.
원본 게시글
애플 Homekit의 확장 Homebridge 구축하기
아이폰을 사용하다 보면, 기본 앱에 Home 앱이라는 것이 있다. 애플에서 기본 제공하는 스마트홈 플랫폼으...
blog.naver.com
'IoT' 카테고리의 다른 글
Homebridge 웹 훅과, 브라우저에서 이벤트 발생시키기 (0) | 2025.03.21 |
---|---|
교통정보 CCTV를 Homebridge에 넣어보기 (0) | 2025.02.26 |
Homebridge와 LG ThinQ 연동하기 (0) | 2025.02.25 |