HEMS

ロックUltra

2022年9月末に設置したSwitchBot スマートロック。

SwitchBot ロックUltra

SwitchBot ロックUltra

ドアの都合で逆さに取り付けざるを得なかった不運もあり、強力両面テープがちょいちょい脱落して難儀していたのだが、本体の厚みが約半減したSwitchBot ロックUltraが5月に出た。

楽天スーパーセールで速攻調達しておいたのだが、スマートロックのCR123A電池残量アラートが出てきたので、交換。

取り付けたあとの、サムターンの位置校正も簡単になって良かった。

キーパッドタッチはそのままでOK。

時折キーパッドで認証が通って解錠信号を送信している気配があるのに「ロックUltra」が無反応な事があるが、そのうちアップデートで治るかな…?

参照

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

家電 Watch https://gadgerba.com/

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

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

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を叩くようにできたので、SwitchBotもSwitchBot 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のターミナルからエアコンの停止に成功。