홈어시스턴트와 샤오미 스마트 허브를 성공적으로 연동하였고
이제 홈어시스턴트와 스마트싱스를 연동할 차례다.
2019년 2월부터 홈어시스턴트와 스마트싱스가 연동이 된다고 하지만
스마트싱스 -> 홈어시스턴트만 가능하다고 한다.
나는 스마트싱스를 메인으로 사용하려고 하기 때문에
스마트싱스 <-> 홈어시스턴트 양방향 연동이 가능하도록
ha-connector를 사용하려고 한다.
ha-connector 또한 mi-connector와 설치 방식이 동일하다.
1. Smartthings IDE - [My SmartApps] 혹은 [My Device Handlers] 메뉴에서 [Settings] 선택
2. fison67 / HA-Connector / master 입력
3. [Update from Repo] - [HA-Connector] 선택
4. [New] 이하 모두 체크
[Publish] 체크 - [Execute Update] 선택
5. 설정 페이지 접속 - OAuth 설정
6. 홈어시스턴트 장기 액세스 토큰 발급
홈어시스턴트에서 더이상 api_password나 auth_providers를 사용하지 않고
장기 액세스 토큰을 발급해서 사용하도록 하고 있다.
이름은 임의로 입력하고
그 후에 나오는 토큰을 복사하여 보관하고 있어야 한다.
7. 스마트싱스 앱 설정
[HA Address]에는 내부아이피:8123을 입력하고
[HA Token]은 6번에서 발급한 장기 액세스 토큰을 입력하면 된다.
설정 완료 후 [Config]를 선택하고
화면에 나오는 [app_url], [app_id], [access_token] 을 8번 과정에서 입력해야 한다.
8. custom_components 파일 추가, 홈어시스턴트 configuration 설정
github에서 일부 파일을 받아서 홈어시스턴트 config 폴더에 넣어줘야 하는데
한줄 스크립트로 만들어보았다.
git clone https://github.com/fison67/HA-Connector && \
sudo mkdir ~/home-assistant/custom_components && \
sudo mv ./HA-Connector/homeassistant/* ~/home-assistant/custom_components && \
rm -rf ./HA-Connector
실행하면 필요한 파일만 이동하고 나머지 폴더는 자동으로 삭제된다.
홈어시스턴트 config 폴더의 configuration.yaml 파일도 수정해야 한다.
포스트 시작부분에 얘기했지만 HA Connector는 양방향을 모두 지원한다.
ST -> HA는 공식 지원하는 것도 있고 HA Connector도 있어서
두개 중에 원하는대로 골라서 세팅하면 된다.
나는 일단 HA -> ST만 필요하기 때문에 해당 부분만 설정할텐데
두개 이름만 다르고 똑같이 설정해주면 된다.
추가해야 할 내용은 다음과 같다.
homeassistant:
customize: !include customize.yaml
# HA->ST
ha_connector:
app_url: [본인 app_url]
app_id: [본인 app_id]
access_token: [본인 access_token]
# ST->HA
ha_connector2:
app_url: [본인 app_url]
app_id: [본인 app_id]
access_token: [본인 access_token]
switch: !include switches.yaml
sensor: !include sensors.yaml
customize.yaml, switches.yaml, sensors.yaml 파일은 내용이 없어도 파일이 존재해야 한다.
아래 명령어로 파일을 생성한다.
sudo touch customize.yaml && \
sudo touch sensors.yaml && \
sudo touch switches.yaml
최종 configuration.yaml
homeassistant:
customize: !include customize.yaml
# Configure a default setup of Home Assistant (frontend, api, etc)
default_config:
# Uncomment this if you are using SSL/TLS, running in Docker container, etc.
# http:
# base_url: example.duckdns.org:8123
# Text to speech
tts:
- platform: google_translate
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
# HA->ST
ha_connector:
app_url: [본인 app_url]
app_id: [본인 app_id]
access_token: [본인 access_token]
# ST->HA
ha_connector2:
app_url: [본인 app_url]
app_id: [본인 app_id]
access_token: [본인 access_token]
switch: !include switches.yaml
sensor: !include sensors.yaml
위와 같이 작성했지만 순서는 상관없는 듯 하다.
sudo docker exec -it home-assistant python -m homeassistant --config /config --script check_config
위 명령어로 config 파일에 문제가 없는지 확인한다.
9. 스마트싱스에 기기 추가
[Get HA Devices] - [Add HA Device]를 선택하고
원하는 센서 - 종류를 순서대로 선택하면 된다.
온습도 센서를 각각 온도, 습도로 두번 추가해주었고
스마트싱스 앱에서 정보를 잘 가져오고 있다.
'IoT' 카테고리의 다른 글
스마트 홈 구축 - 미 리모트 설치 및 스마트싱스 연동 1 (0) | 2020.06.09 |
---|---|
스마트 홈 구축 - mi connector를 위한 샤오미 기기 토큰 추출 (4) | 2020.06.04 |
스마트 홈 구축 - home-assistant, xiaomi 스마트 허브 연동 (2) | 2020.05.24 |
스마트 홈 구축 - mi connector 설치, 스마트싱스 허브 연결 (1) | 2020.05.21 |
스마트 홈 구축 - 샤오미 미지아 Mi 스마트 허브, 온습도계 설치 (0) | 2020.05.19 |