ロジテック ハーモニー(Logitech Harmony) コントローラー SmartApp~~~

ロジテック ハーモニー ハブ(Logitech Harmony Ultimate Hub)と、
コントローラーセットをイギリスのアマゾンから買った。
(今までもその時の価額は来てない~~~1万円)

BTやIrDAを使ってる製品はほとんどコントロールできる。
学習機能があってリモートを使う製品は全部利用可能。

私の場合は下の製品を登録して使ってる。
– TV & U+ G TV
– PS4
– BALMUDA S
– LG Aircon
– LG Roboking
– Apple TV

 

開発背景


ロジテックで公式SmartAppを提供してSmartThingsで連動して自動化はできるが、
問題は’Activity’だけコントロールできることだ

’Acitivity’ってロジテックアプリで作られる自動化だ。
例えば映画’Activity’を作って、
中にテレビ‐オン、モードチェンジ、ヴィデオオンコマンドを入ってる。
’Activity’中に入れたコントロールコマンドを順番に実行することだ。

これは問題ないけど、
SmartThingsで自動化をするとき
一つ一つコントロールするのはできないんだ。
(ロジテックのアプリでは一つ一つコントロールできる)

SmartThingsでは直接DTH(Device Type Handler)と
SmartAppを開発できるように提供してるし
どのプログラマがロジテックハーモニーをコントロールできるように
ライブラリを作っておいてくださったから
一度挑戦して’KuKu Harmony’を作ってみました。

 

使用中に色んなバグがあるかもしれません!!!

設置方法


1. Harmony-API Server 設置


「X86 サーバ」 ’Harmony-API’ Githubを参考しながら設置
https://github.com/maddox/harmony-api


ここではラズベリーパイに設置する方法を説明します。

1-1) Raspberry用 Docker 設置(設置してなかった方)

下のサイトでDockerが設置されてるラズベリーパイイメージをもらったり
ラズベリーパイでそのままdebファイルを利用方法もある。
https://blog.hypriot.com/downloads/


ここではdebファイルを利用してDockerを設置することを説明します。

‘Hypriot Docker Debian Packages for Raspberry Pi’ ところで
’Download Link’を押して入ったら設置コマンドが見える。
それをコピーしてラズベリーパイで実行すればOK.

# curl -s https://packagecloud.io/install/repositories/Hypriot/Schatzkiste/script.deb.sh | sudo bash
# sudo apt-get install docker-hypriot=1.11.1-1

1-2) ‘turlvo/harmony-api’ docker imageをダウンロード

# docker search turlvo/harmony-api
# docker pull turlvo/harmony-api

1-3) ダウンロードしたdocker imageを dockerコマンドで ‘Harmony-API’ 実行

下のコマンドで’harmony-api’ コンテイナー作成と実行

# docker run -ti --net=host --name harmony-api turlvo/harmony-api:latest /home/harmony-api/harmony-api/script/server

 

下のコマンドでharmony-apiデーモンがラズベリーパイリブート際
自動に実行されるようにする

# cd /etc/systemd/system/
# vi harmony-api.service

[harmony-api.service]

[Unit]
Description=Harmony-API container
Requires=docker.service
After=docker.service

 

[Service]
Restart=always
ExecStart=/usr/bin/docker start -a harmony-api
ExecStop=/usr/bin/docker stop -t 2 harmony-api

 

[Install]
WantedBy=multi-user.target

 

# systemctl enable harmony-api.service

 

1-

4) ウェブブラウザでharmony-apiを確認

‘harmony-apiを設置したサーバのIP address:8282/hubs’
ex) 192.168.1.137:8282/hubs

2. SmartThings IDEサイトで DTH/SmartApp 設置


https://github.com/turlvo/KuKuHarmony

2-1) Repository 追加

SmartThings IDE サイトでDTH/SmartApp Menu ->S ettings -> KuKu Harmony 追加

2-2) ‘KuKu Harmony’ DTHを ‘Update from Repo’を通じて設置

2-3) ‘KuKu Harmony’ SmartAppを ‘Update from Repo’を通じて設置

3. SmartThings アプリでSmartApp 設置と設定


SmartThings アプリで ‘Automation’ タップ ‘ -> ‘+ Add a SmartApp’
-> ‘My Smartapp’  -> ’KuKu Harmony’ SmartAppを選択

 

’harmony-api’を設置したサーバのIPとポートを入れてから
’SAVE’を押したら’KuKu Harmony’SmartApp設置が終わり。

 

SmartThings -> Automation -> SmartAppタップで設置した’KuKu Harmony’を選択
’Add a device…’ -> ‘Select Hub’選択

 

自分のハーモニーハーブを選択
追加したいデバイスを選択

 

デバイスタイプを選択
(デバイスタイプによってDTHとUIが変わる)

 


DTHののコマンドに実際のコマンドをマッピングする
終わったら’Save’で完了

 

’KuKu Harmony’から設置したTVデヴァイス
オン・オフボタンを押して動作を確認

今から自動化でボタン一つ一つを使えることになった。

 


コメントを残す