Sympapaの日記

スマートなんとかはスマートじゃない方法でつくられている

Nature Remo: Remo(第2世代:1W2)でローカルAPIを使うと発生するスリープ問題(対策断念)

こんにちは。
Sympapaです。
我が家では3台の世代やモデルが異なるNature Remo、Remo(第2世代:Remo-1W2)とRemo mini(mini初代:Remo-2W1)とRemo 3(第3世代:Remo-1W3)が稼働しています。
Remo 3には何の不満もありませんが、Remo(第2世代)とRemo mini(初代)にはちょっとした不満があります。
あ、少なくともRemo(第2世代)とRemo mini(初代)ではIPアドレスを固定しないと一日数回数秒間接続が切れるのを経験しているので全てのRemoでIPアドレスを固定した上でのハナシです。

Remo mini(初代)の不満点

f:id:sympapa:20210911133037j:plain
Remo mini(初代)の方は我が家では「リビングの照明(コイズミ)のOFFの信号だけ」なぜか極端に届く距離が短く、Remo mini(初代)を照明に1mくらいまで近づけないと反応しないという持病を抱えています。
もともとキッチンで使用していてIR信号もかなりの距離飛ぶし絶好調!と思っていたのにリビングへ移動させたら「ちょくちょくリビングの照明が消えんな」となったのがきっかけで気づいたわけです。
なので我が家ではRemo mini(初代)はリビングでは使えないということになっています。
他のIR信号であれば例えば同じ照明のONの信号すら5mは余裕で飛びそうな勢いなのでかなり謎ですが、Remo mini(初代)のレビューで「赤外線信号の届く距離が短い!」というレビューをちょいちょい見かけるのはこのせいかなと思ってます。
ちょっぴり気休め程度に改善する方法も見つけてはいるので機会があればまた記事にしたいと思います。

本題のRemo(第2世代)の不満点

f:id:sympapa:20210911133216p:plain
そして本題のRemo(第2世代)の方。
Home Assistantを使い始めるまでは特に不満はなかったのですが、Home Assistantを導入しローカルAPIを使いはじめたところ問題が発生しました。
ローカルAPIでIR信号を送信するコマンドを送った時、Remo(第2世代)が緑色や赤色に点滅してタイムアウトしてしまうことがあるんです。しかも10秒~30秒ほど復活しません。
Remoのサーバーからの指令だとこの問題は発生しないようないので普通に使っていれば発生しない問題ですね。。。
我が家の環境ではRemo 3ではローカルAPIを使用してもこの問題は全く発生しません。Remo mini(初代)はたまーにローカルAPIを使った時に反応してくれないことがありますがごく稀で、また、すぐに復活してくれます。

仕方がないので、リビング、キッチン、私の部屋で使っているRemo達をローテーションして問題のRemo(第2世代)を私の部屋に設置し検証と可能なら対策をすることにしました。
するとRemo mini(初代)は赤外線問題でリビングでは使えないので必然的にRemo 3をリビングに、Remo mini(初代)をキッチンにという配置になりセンサーが多いRemo3をキッチンに置きたいのに置けない(汗
この問題について色々ググった結果、ひとつは「Wi-Fiのチャンネルとかネットワークとの相性問題」説、もうひとつは「長時間使用しないとスリープしローカルAPIではうまく目覚めてくれない」説、があるということがわかりました。後者は「定期的にダミーのIR信号を送ってやればスリープしない」という情報もみつけました。

ネットワーク相性問題

先に「ネットワークの相性問題」について考えました。
我が家ではWi-Fi APが2台稼働しているのですが、問題のあるRemo(第2世代)はBuffaloのWSR-5400AX6に、問題ない残りの2台はNECAterm WG1900HPに接続していることがわかりました。
わかりましたってか、もともと自分がそうしたからそうなってるだけですが(笑)
なのでRemo(第2世代)もNECAterm WG1900HPに繋いで様子を見ることにしました。
しかし何故か余計にひどくなり...元に戻しました。
Wi-Fi接続のスマート電球: YeelightもAterm WG1900HPに繋ぐと調子悪くなるんですよね。。。。Aterm WG1900HPの設定見直さんといかんのかな。


スリープして目覚めてくれない問題

ということでもうひとつの「スリープ問題」説です。
まぁ、とにかく「スリープさせなきゃいいんだろう」ということで一定時間毎にHome AssistantからダミーのIR信号を送信させることにしました。

「スリープ問題」はローカルAPIを使うと発生しクラウドAPI使用時には発生しないようなので、確実にスリープから目覚めさせてくれるのはクラウドAPIを使ってコマンドを送った場合のはずです。
最初は60分に1回、毎時00分にクラウドAPIを使ってダミーのIR信号を送信するオートメーションを作りました。
そして効果があるのかを放置していても検証できるように、クラウドAPIによってダミーのIR信号が送られる1分前の毎時59分にローカルAPIを使ってダミーのIR信号を送信するオートメーションも作りました。
しかしやっぱり日に5回以上はエラーが発生しています。
ダミー信号送信を10分に1回とか5分に1回にしてみてもローカルAPIを使うとエラーが出る時があって、感覚的には暫く使わないと発生すると思っていましたがそうでもなさそうです。

ひょっとして長時間使わないとスリープしローカルAPIでうまく目覚めないのではなく、ローカルAPIを使った後ある程度時間が経つとディープスリープするという仮説も立ててみました。
そこでローカルAPIで操作するデバイスがON/OFFした後にクラウドAPIでダミー信号を送るオートメーションを組みました。
しかし、やっぱりダメです(>

そもそも3台のRemoの温湿度をクラウドAPIで1分間隔で取得しているのにローカルAPIを使うとエラーが出る時があるんだから、ダミー信号を送ったところでダメな予感はしてましたが。。。


結論

Nature Remo(第2世代:Remo-1W2)でローカルAPIを安定して使う術はない。(俺環かも)

まぁ自分の部屋なら多少反応遅くてもいいし自分の部屋にRemo(第2世代)を置いてクラウドAPI運用でいこう!とも思いましたが、メルカリでRemo(第2世代:Remo-1W2)を売ってRemo mini 2(Remo-2W2)へ買い換えました。
Remo mini 2は上で書いた「リビングの照明(コイズミ)のOFFの信号だけ届かない」問題もなくスリープ問題もなさそうです。
その後はたまーにスリープ(?)するRemo mini(初代)を自分の部屋へ移動し、リビングにRemo mini 2、キッチンにRemo 3という配置にしました。
Remo mini(初代)のたまーに起きるスリープ問題が定期的なダミー信号送信で解決するのかは、また検証してみたいと思います。

では。