※ 우리 부부가 열심히 일하고 야근해서 받은 머니로 구입한 후기입니다
붱이 Story
[붱이 Story/IoT] - SmartThings와 Home Assistant 연동하기 1탄 - Home Assistant 설치
[붱이 Story/IoT] - SmartThings와 Home Assistant 연동하기 2탄 - SmartThings Bridge 설치
[붱이 Story/IoT] - SmartThings와 Home Assistant 연동하기 3탄 - SmartThings 기기들 HA에 연결
이사로 인해 4탄이 많이 늦어졌다
하지만 4탄을 해야 비로소 ST와 HA연동을 다했다고 말할수 있다
3탄이 ST에서 HA 연결이라면
4탄은 HA에서 ST로 연결이다.
예제로 HA에서만 할수있는 Router 재실센서를
ST 가상 센서와 연결할 것이다.
물론 이건 SmartApp과 개인 서버로 가능하다 (HA 없이)
하지만 지금 내가 하는 방법이 한 100배 쉽다고 말할수있다
GPS 재실센서 추가하는법은 여기 링크 참조
[붱이 Story/IoT] - Samsung Connect 사용기 2탄 -본인폰을 재실센서로 사용하기
결과 화면 부터 보자~
ST에서 화면과 Samsung Connect App(이하 SCApp)에서 화면
SCApp에서 보이게한건 다음 포스팅에~
이번 글만 따라해선 SCApp에선 보이지않는다
SC App에 보이게 하는건 꿈을위한 계획님 글 참고
http://cafe.naver.com/stsmarthome/411
GPS/WIFI 은쟈와 내꺼 총 4개가 추가되어 있는것을 확인할수 있다.(위)
1단계 HA에 라우터(WIFI) 재실센서 만들기
configuration.yaml에 아래 device_tracker 추가
...생략
mqtt:
broker: !secret server_ip
switch: !include switchs.yaml
sensor: !include sensors.yaml
light: !include lights.yaml
device_tracker: !include device_trackers.yaml
group: !include groups.yaml
script: !include scripts.yaml
automation: !include automations.yaml
... 생략
device_trackers.yaml을 생성하고 아래와 같이 추가
ip는 자신의 폰이나 와이프가 공유기 붙었을때 할당받은 ip를 넣는다
앞에 이름도 자신이 원하는데로 기입
- platform: ping
hosts:
Booung_S8_WIFI: 192.168.0.17
Eunja_G6_WIFI: 192.168.0.6
== 2017.09.01 내용 추가 ==
혹시 집에 공유기가 asus라면
위에 ping 방법보다 이방법을 선호
host에 공유기 관리자페이지들어갈때 ip(NAS ip가 아니다)
username은 관리자 페이지 들어갈때 id
password 관리자 페이지 들어갈때 비번
protocol: telnet
- platform: asuswrt
host: 192.168.1.1
username: your admin id
password: your admin password
interval_seconds: 30
consider_home: 180
track_new_devices: no
protocol: telnet
그리고 마지막으로 관리자페이지로 가서 telnet을 on
https://www.asus.com/support/faq/1005449/
다적고 HA 재시작
그러면
known_devices.yaml 이라는 파일이 생성되어있을것이다
열고 기입
중요사항은 각 device mac address 잘보고 적자~
booung_s8_wifi:
hide_if_away: false
icon:
mac: 9e:dB:해당mac address
name: Booung S8 WIFI
picture:
track: true
vendor: SAMSUNG
eunja_g6_wifi:
hide_if_away: false
icon:
mac: da:0g:해당mac address
name: Eunja G6 WIFI
picture:
track: true
vendor: LG
그리고 HA 재시작
잘따라했다면 HA Dashboard에 보일것이다
1단계 끝
2단계 ST에서 Simulated Presence Sensor 만들기
이제 이쯤되면 다들 SmartThings IDE는 익숙해졌을거라고 본다
https://graph.api.smartthings.com
My devices로 이동
+ New Device
Device Network Id는 아무거나 막적되
다른 device와 중복되지 않게 적으면된다
핵심은 Type을
"Simulated Presence Sensor"
로 설정한다 그리고 Create
3단계 Automation 이용하여 HA->ST 연동하기
위에 device_tracker 만든것처럼 automations.yaml 만들고
configuration.yaml에 아래와같이 기술
...생략
mqtt:
broker: !secret server_ip
switch: !include switchs.yaml
sensor: !include sensors.yaml
light: !include lights.yaml
device_tracker: !include device_trackers.yaml
group: !include groups.yaml
script: !include scripts.yaml
automation: !include automations.yaml
... 생략
그리고 automations.yaml 에 아래와 같이 기술
- alias: S8 Presence to ST
trigger:
platform: state
entity_id: device_tracker.booung_s8_wifi
action:
- service: mqtt.publish
data_template:
topic: "smartthings/Booung S8 WIFI/presence"
payload: >
{% if is_state('device_tracker.booung_s8_wifi', 'home') %}present{% else %}not present{% endif %}
- alias: G6 Presence to ST
trigger:
platform: state
entity_id: device_tracker.eunja_g6_wifi
action:
- service: mqtt.publish
data_template:
topic: "smartthings/Eunja G6 WIFI/presence"
payload: >
{% if is_state('device_tracker.eunja_g6_wifi', 'home') %}present{% else %}not present{% endif %}
각 라인 설명
- alias: S8 Presence to ST // 걍 Automation 이름
trigger: // 상태조건? 트리거를 뭘로 사용할거냐?
platform: state // 센서의 state 값을 이용할거다~~
entity_id: device_tracker.booung_s8_wifi // 센서 뭘할거냐 난 아까 만든 device_tracker중에 booung_s8_wifi
action: // 위의 트리거에 따른 action 지정
- service: mqtt.publish // service는 mqtt의 publish를 사용할거다~~~
data_template: // data template 구성
topic: "smartthings/Booung S8 WIFI/presence" //smartthings의 Booung S8 WIFI를 사용할건데 얜 presence 센서다 이건 3탄에서 말한 state.json에 보면 어떤 값을 사용하면 될지 감이 온다 거길 열어보면됨
payload: >
{% if is_state('device_tracker.booung_s8_wifi', 'home') %}present{% else %}not present{% endif %}
// 어떤걸 언제 무슨값을 보낼것인지에 대한 룰 HA에서 만든 device_tracker.booung_s8_wifi의 상태가 home이면
st에 present를 보내고 그밖에 상태면 not present를 보내라
위에 entity_id에 뭘 넣어야할지 모를땐
HA 홈페이지를 가자 아래 노란음영 "<>" 를 선택하면 본인이 만든 기기와 sensor들의 entity 값을 볼수있다.
위에 까지 설정을 다하고 HA 다시시작
그리고 본인 폰을 wifi에 붙였다 떼었다 해보자
붙일때 인식시간은 약 10초 내외
좋은 공유기는 3초만에도 반응이 온단다
떨어진거에 대한 인식 시간은 최소 2분이상
보통 3분에서 5분
ST App에서 값이 HA의 값에 의해 변화되고 있는지 확인~~
끝
※ 공감 및 댓글 한마디는 포스팅하는데 큰 힘이 됩니다.