홈 오토메이션용 허브인 Home Assistant (HA)를 설치해보았습니다.
설치 환경
보통 라즈베리 파이(Raspberry Pi)에 많이 설치하는데 저는 홈 서버를 운영 중이라서 도커(docker)에 컨테이너로 올렸습니다.
홈 서버에 가상화 호스트 OS인 ESXi가 올라가 있고, 도커용 OS인 CoreOS가 게스트 OS로 구동 중
설치
CoreOS 터미널에 접속하여 아래 명령만 내려주면 바로 설치에 실행까지 됩니다. 물론 포트나 볼륨 설정 등은 각자 환경에 맞게 수정해야 됩니다.
1 2 3 |
docker run -d -p 8123:8123 --restart always --name=home-assistant -v /volume1/docker/volumes/homeassistant/:/config -v /etc/localtime:/etc/localtime:ro homeassistant/home-assistant |
설정
HA의 기본 설정 파일인 configuration.yaml의 내용 중 특별한 것만 표시하였습니다.
설정 내용 중 __는 공백(스페이스)으로 바꿔 설정하면 됩니다. HA 설정 파일에 공백 사용이 아주 중요한 것 같습니다. 탭 같은 거 사용하면 문법 에러가 발생됩니다.
아래는 도커(Docker) 환경일 경우 설정해야 됩니다. 설정 안하고 사용해보니 구글홈(Google Home)에게 TTS 명령을 내릴 수 없었습니다.
http:
# Uncomment this if you are using SSL or running in Docker etc
# base_url: example.duckdns.org:8123
__base_url: 192.168.0.3:8123
아래는 구글홈(Google Home) 연동을 위한 설정입니다.
tts:
__platform: google
media_player:
__-_platform: cast
____host: 192.168.0.6
____mac: F4:F1:A2:D3:3C:8E
____name: living_room_home
위 설정에서 host에는 구글홈(Google Home)의 아이피주소를, mac에는 MAC Address를, name에는 앞으로 각종 설정에서 호출할 이름을 설정합니다.
구글홈에서 음성으로 기기를 제어하기 위한 필립스 휴(HUE) 에뮬레이터는 비활성화 했습니다.
여기서 설정해도 되지만 HA Bridge를 이용하는 것이 관리가 편합니다.
#emulated_hue:
HA Bridge 설치
구글홈(Google Home)이나 아마존 에코 등을 이용하여 음성으로 명령을 내려 각종 기기 또는 SW 명령을 실행시키기 위해서 필요한 과정입니다.
최근 나오는 유명한 스마트홈 기기들은 구글홈(Google Home)이나 아마존 에코 같은 음성 AI 기기를 지원하여, 음성 AI 기기에서 바로 해당 기기를 제어할 수 있지만, 아직까지 지원하지 않는 기기들이 많습니다.
이때 HA Bridge를 이용하면 음성 AI 기기에게 일반 스마트홈 기기나 각종 SW 명령을 필립스 휴인 것처럼 속일 수 있습니다.
HA Bridge 웹 사이트에서 아래와 같이 설명하고 있습니다.
구글홈(Google Home)에 음성명령을 내리면 HUE API를 제공하는 HA Bridge가 그 명령을 받고, HA Bridge는 기타 기기(Device to control
)를 제어하는 것입니다.
여기서 저는 기타 기기가 Home Assistant (HA)가 되게 처리했습니다. 즉 Home Assistant (HA) 연결된 각종 기기를 제어할 수 있게 됩니다.
설치
역시나 도커 환경에서 구동하기 위하여 CoreOS 터미널에 접속하여 아래 명령으로 설치 및 구동 시켰습니다.
1 2 3 |
docker run -d --restart always --name="Home-Automation-Bridge" --net=host -e SERVERIP="192.168.0.3" -e SERVERPORT="80" -v /volume1/docker/volumes/Home-Automation-Bridge/:/config:rw -v /etc/localtime:/etc/localtime:ro aptalca/home-automation-bridge |
–net=host 옵션으로 호스트 OS의 네트워크를 사용하게 했고, 아이피는 도커 호스트의 아이피, 포트는 80으로 지정하였습니다. 구글홈(Google Home)은 현재 80 포트로 된 HUE와만 통신할 수 있습니다.
설치가 완료되었으면 http://도커 호스트 아이피/로 접속하면 설정 UI가 표시됩니다.
설정
Home Assistant (HA)와 연결을 위해서는”Bridge Control” 메뉴로 들어가서 스크롤바를 중간쯤 내리면 “HomeAssistant Names and IP Addresses“가 나오며, 거기에 HA의 아이피 주소, 포트, 암호를 입력하고 제일 위로 올라가서 “Save” 버튼을 눌러주면 됩니다.
그럼 “HomeAssistant Devices“란 메뉴가 표시되고, 그 메뉴로 들어가면 HA에 설정한 각종 스위치나 스크립트가 표시됩니다. 여기서 필립스 Hue로 속일 것들을 선택해주고 “Bulk Add” 버튼을 눌러주면 “Bridge Devices” 메뉴에 선택된 것들이 표시됩니다.
* HA 연결 설정 부분은 홈IoT(사물인터넷)-홈네트워크,스마트홈,아마존에코,구글홈,허브 카페(http://cafe.naver.com/amazonecho)의 하우마루님의 게시글(http://cafe.naver.com/amazonecho/1926)을 참고하였습니다.
필립스 Hue 연결용 Link 버튼 활성화 설정
“Bridge Control” 메뉴로 들어가서 “Update Security Settings” 버튼을 눌러 “Use Link Button“에 체크합니다.
아래와 같이 “Bridge Devices” 메뉴로 들어가면 “Link” 버튼이 추가로 표시됩니다.
구글홈을 관리하기 위한 모바일 앱에서 필립스 Hue를 연결시킬 때 링크 버튼을 눌러달라는 메시지가 나올 때 위 화면의 “Link” 버튼을 눌러주면 됩니다.
참고 사이트
홈IoT(사물인터넷)-홈네트워크,스마트홈,아마존에코,구글홈,허브 카페(http://cafe.naver.com/amazonecho)의 af950833님의 각종 게시글
Home Assistant (HA) – https://home-assistant.io/
HA-Bridge – https://github.com/bwssytems/ha-bridge