自宅の照明が他人のサーバー頼み?「ネットなしで動かない機器は入れない」10年守るルール
Smart home devices should work without the internet

NestのAPIがGoogleに壊され、Samsungの冷蔵庫は自前の画面にTLS証明書エラーを出す。一度買ったハードが企業の都合で止まる現実を踏まえ、著者はTasmotaを載せたESPボード、MQTTブローカー、Raspberry Pi上のNode-REDで家のロジックを自前のハードに置く。ネットが切れても家は動き続ける。10年で培ったルールと2つの講演をスライドごとに振り返る。
一度買ったハードウェアが、企業が方針を変えたせいで動かなくなるべきではない。それなのに実際は起きている。
HNでの議論
301- mountain_peak
家を買ったのはほぼ20年前で、前の持ち主は(どうやら)今はなきホームオートメーション事業を営んでいたらしい。良かったのは、X10/Insteonの電源・照明制御、最高級の警報パネル、環境制御などが壁掛けの「SmartLinc」タッチパネルから動いていたことだ。私はAxisのカメラと、IndigoとSecuritySpy(サブスクなし)を動かすMac Serverでシステムを拡張し、遠隔監視・制御を可能にしたが、すべてローカルで動作している。
弱気になった瞬間、D-Linkの無線(wifi)漏水検知器を貯水槽(サンプピット)用に買ってしまった(クリアランスで30ドルだった)。それはD-Link Homeクラウドサービス(無料)に依存していて、数年前に終了してしまった。
捨てるのは嫌だったので、リサイクルに出すつもりだった予備のChromebook 14を再利用し、漏水検知器用のAlpineモニターに仕立てた。電力はChromebookのUSBポートから取っている(豪雨で停電したら、サンプピットが満杯になる前にそれを知る必要があるからね)。
すぐに問題になったのは、D-Linkのファームウェアが24時間ごとに「ホームに電話」しようとし、サーバーが死んでいるのでローカルネットワークから落ちてしまうことだった。サーバーからどんな応答を期待して生き続けようとしているのか、皆目見当がつかなかった。解決策は、23時間ごとにUSB電源を(PicoとMOSFETで)遮断してユニットを「再起動」すること。ホームオートメーションはインターネットなしで動くべきだというのは間違いない。
- scosman
HomeAssistantはすべてのインテグレーションについて「Local Push」から「Cloud Polling」までの範囲で「IoT Class」を公開している:https://www.home-assistant.io/blog/2016/02/12/classifying-th...
私は「Local Polling」以上しか使わず、「Local Push」を強く好んでいる。
- bluegatty
希望はある。顧客がこれを望んでおり、そうなればPMはサービスなどの内部戦略と衝突しても考慮するだろう。特にサービスの収益が乏しければなおさらだ。
こうした分野はどこも激しい競争にさらされている。
必要なのは、このムーブメントに「名前」をつけることだ。IoTが一大潮流を生み出したのと同じように——分析者、CEO、PM、戦略、業界などに溶け込み概念を生み出したように——「No Connection Required(接続不要)」も、それを定義する核となる概念と言語さえあれば、同じことを容易に成し遂げられる。
アナリストは論文を書き、CEOはそれを読み、カンファレンスのパネルが開かれ、Twitterで議論が噴出し、PMはロードマップを正当化したがり、CEOは取締役会を喜ばせたがり、新しい製品がそのカテゴリに投入される——そしてそれは実現しうる。
多くの場合、こうしたものには変化の火花を散らすきっかけが必要で、たとえばセキュリティ侵害などがそれだ。今まさに「旬」である。セキュリティ問題に関する記事がいくつか、大手メディアの報道が少し、そして周縁での画期的な製品がいくつかあれば、潮流を作り出せる。これには大いに正当性があると思う。
- reasonabl_human
最近私が使うようになった新しいルールはこうだ:
- 仕事を成し遂げる最も安いハードウェアを買う
- ソフトウェア関連の否定的レビューは無視する
- デバイスが届いたら、claudeにローカルファーストのcfw(カスタムファームウェア)を尋ねる
- 数時間、肉のプロキシとして楽しむ
- ドーン、安上がりなローカルのみのスマートホームの完成
Home AssistantにはSBCかNASを使う。このプロセスはスイッチ、サーモスタット、空気品質モニター、温度計、窓用ファンで私にはうまくいった。
適切なローカルファースト機能を最初から備えたハードウェアなら、約2.5倍払っていただろう。代わりにこれらすべては、推論プロバイダへの既存の月20ドルサブスクに収まった。ローカルで動くDS 4.1も軌道に乗りつつあったが、ただより遅かっただけだ。
- driverdan
私にはシンプルだが厳格なルールがある:
1. 市販デバイスはオフライン専用プロトコル、ZigbeeかZwaveを使わなければならない。WiFi専用なら、ファームウェアがオープンソースか、オープンソースのローカルのみの代替品に容易に置き換えられない限り買わない。
2. センサー以外のデバイスは、そのIoT機能なしで完全に動作しなければならない。サーモスタット、冷蔵庫、コンロなどを外部インターフェースなしで制御できなければならない。
オープンソースでないWiFi IoTデバイスは決して使わない。ローカルで制御できたとしても、あなたのデータを抜き取るスパイデバイスかもしれない。そう、VLANや別ネットワークを設定することもできるが、それだけの価値はない。財布で投票しよう。
- augment_me
どうかどうかどうか、最初の草稿を使うか、LLMなしで自分で推敲してください。
私はこう辿り着きました:
The cloud is the weak link
- No internet, no problem. ...
---
他のマシンに取り込ませるために書いているなら、どうでもいい。でも人に向けて書いているなら、少なくとも私には、伝えたいメッセージを本当には気にかけておらず、薄められたLLMの平均で構わないと思っているというサインになる。
- sholladay
Threadデバイスは私にとって素晴らしかった。自己修復メッシュで、インターネットが落ちても、ハブが落ちても、ブレーカーが落ちても、さらには完全停電でも、Threadルーターになれるデバイスを一つだけ電源供給し続けられれば生き残る(自前のバッテリーに頼らないデバイスはほぼすべて該当)。
昨冬、長い停電があった。そこでJackeryでスマートプラグに電源を供給して一時的なルーターにすると、メッシュが自己再構成し、すべてがただ動いた。バッテリー式のドア・窓センサー、漏水センサー、Eve Flareのようないくつかの照明、さらにはEve Aquaの水バルブまで——つまり停電中でも文字通りスマホから庭に水をやれた(iPhoneにはThread無線が内蔵されている)。
もちろん家全体用のバッテリーがあればもっと良いが、あれはとてもクールで、ほとんど手間もかからなかった。
- tehlike
1. zigbee/zwaveを買う
2. zigbee/zwaveが不可能なら、tasmotaを書き込めるものを好む。
2. もしかしたらeMudhraをmitmに使って、サポート外のデバイスに書き込む。
- anotherevan
ローカルのみという要件は、私がホームオートメーションを真剣にいじるまでに至らなかった非常に強い理由だった。大抵のデパートにあるものは、私が見る限りすべてホームに電話している。調査の投資やその他の面倒な作業(例:Tasmotaを書き込むための細かい方法)が、私を尻込みさせてきた。
しかし、転がっていた予備のRPiをいくつか見て、とりあえず見てみようと一つにHome Assistantを入れることにした。今はもう少し足を踏み入れることにして、Zigbee USBアダプタ、Zigbeeベースのボタンとリードスイッチ、そしてMatterベースの電源スイッチをいくつか注文した。すべてうまく動いてくれることを願っている。
OpenwrtルーターにIOT VLANも設定する必要がある。(ネットワーク畑の人間ではないので、これもまた面倒だ!)
今までの私のホームオートメーションの試みはこうだった:
- 玄関近くの天井に接着された赤い点滅LED。リードスイッチに接続され、ガレージのドアが開いているかを知らせる。
- ライトスイッチ¹。Tasmotaを書き込むことに成功し、テレビのリモコンから居間の照明をオン・オフできる。
- モニターの上に置かれた超音波距離センサー。私がコンピュータの前に座っているかを検知する²。離れて戻ると音楽を一時停止し再開する。コンピュータの前に長時間いすぎると小言も言う。
¹ 自動化された電球には価値を見出さない。欲しいのは自動化されたライトスイッチだ。残念ながらオーストラリアの電気認証基準はなかなかの難物で、これを[…]
- everdrive
私たちは根本的におかしな状況に自ら陥ってしまった:利便性を高め時間を節約するはずの発明が、どちらも果たしていない。しばらくは「まあまあ」動き、そのうちアップデートがあり、何がどう変わったかを解明する必要が出てくる。そして壊れ、何がまだ動くか(動くならだが)何がもう動かないかをトラブルシュートしなければならない。より便利ではなく、ただより複雑になっただけだ。