HEMS

Nature Remo 障害

この7月、Nature Remoで2回の障害が発生していた模様。

この夏の酷暑とは関係なさそうだが、7月19日のブルースクリーン多発事件もあり、やな感じだ。

当初はIoTという名前の通り、何でもかんでもInternet接続させて喜んでいたものの、必要以上にクラウド依存になってしまう反動からIRkitのローカル対応などに取り組んでいる今日このごろ。ローカル対応が抜本的な対策となると考えていますというNatureを応援したい。

参照

ITmedia NEWS https://www.itmedia.co.jp/news/

Nature https://nature.global/

Nature Remoシステム稼働状況 https://status.nature.global/

Wikipedia https://ja.wikipedia.org/wiki/

SwitchBotハブ2

5日に導入したSwitchBot Hub 2

SwitchBotハブ2

SwitchBotハブ2

新規格Matter対応の実証実験はまだ未着手だが、タイムセールで10%OFFだったので、追加調達。

参照

SwitchBot https://www.switchbot.jp/

INTERNET Watch https://pc.watch.impress.co.jp/

PC Watch https://pc.watch.impress.co.jp/

ITmedia PC USER https://www.itmedia.co.jp/pcuser/

Qiita https://qiita.com/

Amazon.co.jp https://www.amazon.co.jp/

Wikipedia https://ja.wikipedia.org/wiki/

SwitchBotハブ2

2020年に導入したSwitchBot

SwitchBotハブ2

SwitchBotハブ2

昨年末に延命したIRKitもいよいよ挙動不審になってきたこともあり、リビングに新規格Matter対応のSwitchBot Hub 2を投入。

温湿度計内蔵だと電池切れの心配もなくていいね。

アプリでSwitchBot Hub 2本体とエアコンを登録したあと、エアコン停止用のスクリプトにも新しいデバイスIDを追加して完了。

参照

SwitchBot https://www.switchbot.jp/

INTERNET Watch https://pc.watch.impress.co.jp/

PC Watch https://pc.watch.impress.co.jp/

ITmedia PC USER https://www.itmedia.co.jp/pcuser/

Qiita https://qiita.com/

Amazon.co.jp https://www.amazon.co.jp/

Wikipedia https://ja.wikipedia.org/wiki/

スマートロック

7月にポチったSwitchBot スマートロック キーパッドタッチ

SwitchBot スマートロック キーパッドタッチ

SwitchBot スマートロック キーパッドタッチ

8月25日に届いていたものの、ようやく時間ができたので設置。

ドアはセキスイのGOAL(ゴール) LX-5。

サムターンに高さを合わせたところスマートロックの高さが77mmほどになり、横方向(左向き)設置だとレバーハンドルが回らくなってしまったので、ドアチェーンの受け具を外して縦方向(下向き)の設置空間を確保。

元々ドアチェーンはズボンやスカートの裾に引っかかるだけだったので外していたので問題なし。

取り付けたあとに、サムターンの解錠位置と施錠位置を校正して終了。

キーパッドタッチはドアではなくすぐそばの壁にネジで固定。

特に指紋認証はちょっとタイムラグがあるものの、ポケットから鍵の束を取り出して目当ての鍵を探す手間と時間を考えたら十分早い。すぐに合鍵を無くす小学生を抱える悩めるファミリーにももってこい。

スマートプラグは結局壊れてしまったが、スマートロックはいい感じだ。

参照

SwitchBot (スイッチボット) https://www.switchbot.jp/

ガジェルバ https://gadgerba.com/

鍵の鉄人本店 http://www.kagiyasan.jp/

Amazon.co.jp https://www.amazon.co.jp/

Wikipedia https://ja.wikipedia.org/wiki/

スマートプラグ

大変不自然な折れ線グラフ

冷蔵庫の消費電力

Gosundのスマートプラグに置き換えて、浮いたSwitchBotプラグを4月の中旬からは冷蔵庫に移設し、アプリでモニタしたところリアルタイム値は4~140Wで遷移していたのだが、月単位の消費電力値は5~8Kwhでしかないことに気づいた。

日毎のグラフで見るとゼロの日も少なくなく「テレビだからそんなもんかと思ってたのだが、冷蔵庫なのにゼロな日があるわけないやろ」と突っ込みたくなった。

2020年から贔屓にしているSwitchBotシリーズだが、なかなか難しいなぁ。

参照

SwitchBot https://www.switchbot.jp/

Amazon.co.jp https://www.amazon.co.jp/

Wikipedia https://ja.wikipedia.org/wiki/

Nature Remo

昨年6月に復活したIRKitの不調具合が加速してきた折、3,980円であらゆる家電をIoT化。Matterリモコン「Nature Remo nano」というニュースで、一つ前世代のNature Remo miniを調達してたのを思い出し、慌てて投入。

yano@haswell:~/smarthome$ Token=zjKKjfAL6X36SJvKtuqqXxm2SHMFeAjBnTHxZUhdzjKKjfAL6X36SJvKtuqqXxm2SHMFeAjBnTHxZUhd
yano@haswell:~/smarthome$ curl -X GET "https://api.nature.global/1/devices" -H "accept: application/json" -k --header "Authorization: Bearer ${Token}" | jq
[
  {
    "name": "Remo mini",
    "id": "deb07f72-a5ab-4262-915b-ABCDEFG",
    "created_at": "2023-08-09T01:31:06Z",
    "updated_at": "2023-08-09T02:15:12Z",
    "mac_address": "98:cd:ac:XX:YY:ZZ",
    "bt_mac_address": "98:cd:ac:XX:YY:ZZ",
    "serial_number": "2W221070012345678",
    "firmware_version": "Remo-mini/1.12.2",
    "temperature_offset": 0,
    "humidity_offset": 0,
    "users": [
      {
        "id": "c376a287-5300-4c8b-b793-ABCDEFG",
        "nickname": "ホゲホゲフーガ",
        "superuser": true
      }
    ],
    "newest_events": {
      "te": {
        "val": 32,
        "created_at": "2023-08-09T05:03:19Z"
      }
    }
  }
]
yano@haswell:~/smarthome$

Nature Developer PageによるとIRKitのような「Local API」も公開されているらしい。

SwitchBot API

IFTTT不発事故に起因する2021年版AirconShutdownの善後策。

SwitchBotハブミニ

SwitchBotハブミニ

これまではTwitter経由のIFTTTで家電リモコンSwitchBotを制御していたところ、2022年版IRKitでは直接APIを叩くようにできたので、SwitchBotSwitchBot Open APIを叩くことに。

SwitchBot Open API

https://api.switch-bot.com/v1.0/devices/**<deviceId>**/commands

というRESTエンドポイントに制御データをPOSTする枠組み。****で指定する対象装置は

curl --request GET 'https://api.switch-bot.com/v1.0/devices' \
  --header 'Authorization: 認証トークン' \
  --header 'Content-Type: application/json; charset=utf8'

で一覧を取得できる。なお、認証トークンはSwitchBotをHub経由でAPIから操作するに倣い、SwitchBotアプリの「開発者向けオプション」から取得できる。

ちなみに、エアコンの制御データのパラメータは

deviceType
commandType
Command
command parameter
Description
…となっているので、、エアコン停止用の
{  "command": "setAll", "parameter": "25,1,1,off", "commandType": "command"}

というデータを"switchbot_aircon_off.json"というファイルにして

#!/bin/bash
BASEPATH=$(dirname $0);
SWITCHBOT_API="https://api.switch-bot.com/v1.0"
SWITCHBOT_TOKEN="90edf....3431"
hdr_auth="Authorization:${SWITCHBOT_TOKEN}"
hdr_type="Content-Type: application/json"
# BODY="@${BASEPATH}/switchbot_aircon_off.json"
BODY='{"commandType": "command", "command": "setAll", "parameter": "25,1,1,off"}'
AIRCON_1F="01-2020XXXXXXXX-32"  # 1F
AIRCON_2F="01-2020YYYYYYYY-52"  # 2F
AIRCON_3F="01-2020ZZZZZZZZ-82"  # 3F
for DEVICE_ID in $AIRCON_1F $AIRCON_2F $AIRCON_3F;
do
    URL="${SWITCHBOT_API}/devices/${DEVICE_ID}/commands"
    curl "${URL}" \
         --silent -O /dev/null \
         -H "${hdr_auth}" -H "${hdr_type}" \
         -X POST -d "${BODY}"
done

というスクリプトを回せばエアコン3台が順次停止になる運びだ。

IFTTT解約

IFTTT不発事故で存在意義の見直しを余儀なくされたIFTTT。

トリガー失敗しました

IFTTT

家電リモコンSwitchBotの複数デバイスを制御してた事もあり、有償プランで契約していたのだが、期待していたGoogle HomeへのPush通知については一向に光明が見いだせない一方で、IRKitでローカルAPIを叩く方向も見えてきたので、IFTTTの有償プラン解約することに。

As you requested, your Pro subscription has been cancelled and you will lose access to the Pro features at the end of your current term. You’re always welcome back. If you’d like access to the Pro features again, go to your account and reactivate your subscription. Best, The IFTTT Team

参照

INTERNET Watch https://internet.watch.impress.co.jp/

IFTTT https://ifttt.com/

Wikipedia https://ja.wikipedia.org/wiki/

IRKit復活

先日エアコン自動停止不発問題。

IRKit

2016年に購入したIRKit

IFTTTが不発という事で善後策の検討していたのだが、iPhoneで家電を操作できるリモコンデバイス IRKitのアプリが実は直接叩いていて、そのDevice HTTP APIも公開されている事がわかった。

なんと、curlコマンド一発で赤外線データをJSON形式で取得できて、それをまたcurlで送りつければいいらしい。

というわけで、2016年に調達したIRKitを復活。

まずはBonjourを使ってIPアドレスを求める必要があるので、UbuntuではAvahiなツールを使って

yano@GT110b:~$ IRKIT=$(avahi-resolve -n $(avahi-browse -t _irkit._tcp | awk '{print $4"."$6}') | awk '{print $2}');echo ${IRKIT};

てな感じでIPアドレスを調べておく。

それから、IRKitに向けてリモコンボタンを押したあと、curlで

yano@GT110b:~$ curl -H "X-Requested-With: curl" -i "http://$IRKIT/messages"
HTTP/1.0 200 OK
Access-Control-Allow-Origin: *
Server: IRKit/3.0.0.0.g85190b1
Content-Type: text/plain
{"format":"raw","freq":38,"data":[843,843,935,843,935,843,,,,,935,787,935]}

てな感じで赤外線データが採れる事を確認。

IRKitの赤外線データはGET応答と引き換えに消去される仕様なので、もう一度IRKitに向けて同じリモコン操作を行い

yano@GT110b:~$ curl -H "X-Requested-With: curl" "http://$IRKIT/messages" --output ${HOME}/IRKit/urusara_off.json

てな感じでボディだけをファイルに保存したあと、

yano@GT110b:~$ curl -i "http://${IRKIT}/messages" -H "X-Requested-With: curl" -d @${HOME}/IRKit/urusara_off.json
HTTP/1.0 200 OK
Access-Control-Allow-Origin: *
Server: IRKit/3.0.0.0.g85190b1
Content-Type: text/plain
yano@GT110b:~$

とする事で、Ubuntuのターミナルからエアコンの停止に成功。

Nature Remo E Lite

Nature Remo E Lite

Nature Remo E Lite

2017年11月に調達したArmadillo-Box WS1をベースにしたIIJのWi-SUN対応Bルートアダプター「SA-M0」

瞬時電力の取得が数分空いたり、少々挙動が怪しくなってきた事もあり「Nature Remo E Lite」を調達。11,840円也。

NatureスマホHEMS「Nature Remo E(ネイチャーリモイー)」にはECHONET Liteを使って"エネルギー機器の制御"までできる高機能版もあるが、ECHONET Liteの受信に特化した廉価版で十分。

「Nature Remo E / E lite のスマートメーターに関するAPI」も公開されているようだが、まだローカルAPIが無いっぽいのが残念。

瞬時電力を使ったオートメーションが作れるようなので「ブレーカーが落ちる前にエアコンを止める」くらいはスマホアプリ単体で実装できるので、まぁいいか。

参照

家電 Watch https://kaden.watch.impress.co.jp/

Nature https://nature.global/

Nature Developer Page https://developer.nature.global/

Wikipedia https://ja.wikipedia.org/wiki/