BRAVIAでの再生でかくかく動きが時々とまる を 解決

結論は、BRAVIAの2023年3月ころにアップデートされたソフトウェアのバグと推測します。設定で回避できました。

さて、1年以上問題なく使えて動いていたBRAVIAですが、急にときどきとまる事象が発生しました。
hsbox(ホスボックス)のせいじゃないかと濡れ衣を着せられたhsboxですが、予想どおり濡れ衣でした。 hsboxはBRAVIAと組み合わせても何も問題ないのでつかってみてください。話がずれてしまいました。

最初、電波状態が悪いのではないかとアンテナケーブル等を変えてみましたが、並列でつながっているHDDレコーダでの受信は問題ないので、局所的な問題ということは明らかでした。テレビでアンテナレベルと確認すると”60”で、低いかなと思われるレベルですが、テレビの表示では「受信可能範囲内」でした。 念のためテレビにつながっているアンテナケーブルを4K/8K用の最新のものに交換してみましたが、レベルは全く変わりませんでした。 → ある意味予想通り。。。

 ネット検索の結果、次のような情報を発見
https://bbs.kakaku.com/bbs/K0001247735/SortID=24293158/

モーションフローの設定を カスタム → オートに 変更して直ったという情報もみつけた。

モーションフローの設定を確認したところ「オート」になっていた。
これを「オフ」に切り替えて試してみると。
→ かくかく の動きはなくなりました。

以上。

→ これはどうみてもモーションフローのソフトウェアのバグなんじゃないでしょうか。。。 
  

2022/3/10 に発生した地震の緊急地震速報のプッシュ通知状況、揺れる8秒前には状況が見えそう

2022/3/10 21:40頃に発生したM3程度の地震(規模が小さいので公開情報で規模等を正確に確認できていません)のhsboxの地震速報通知システム(システムについてはこっちを参照してください)でテレビに映した映像です。

最初に表示した映像は上の画像ですが、実はこれを表示する前にYouTubeの広告映像が10秒程度流れています。YouTubeが広告を流さないか、YouTubeプレミアムの契約をしていれば、本格的に揺れる8秒前には、つまり上の画像での赤の円のS波到達の8秒前にはどのくらい揺れそうなのかを把握できそうです。

今回通知の状況を記録した地震の震源は、三陸沖200kmほどのところでした。想定する震源やその場所によって状況は変わるでしょうが、南海トラフ巨大地震でも似たような距離で、似たような観測機器の整備状況であれば同様な結果になると推測されます。

下は実際に撮影した動画です。黒画面からスタートしますが、これは普通にテレビ番組を見ていて緊急通報画面に切り替わったところです。切り替わったところからカメラを置いて撮影開始しているのでその分の時間(だいたい2、3秒くらい)がかかっています。

このようにYouTube広告が流れるのは、2,3回に1回くらいの頻度です。広告が流れなければそれだけの時間余裕をもって情報確認ができそうです。

YouTubeさんには緊急性が要求されるコンテンツには再生開始時には広告を入れない(長時間流している途中であれば流れてもいいかなと思いますが。。)とか、検討して抱けると嬉しいですねぇ。

備えはしておくとして、本当に大きく揺れる数秒前にでも直前にこれから何が起こるのか分かれば少しは役に立つ何かできるのではないでしょうか? 

南海トラフ地震 :揺れだす前(S波が来る前)に状況把握できるようにしておきたい

南海トラフ巨大地震が 今後40年以内に発生する確率は「90%程度」 といわれている。明日にも起こるかもしれないかもしれないが、だいぶ先かもしれない。かといってずっと身構えているわけにもいかない。ちょっと揺れたからと言ってびくびくするのも疲れる。そこで、揺れる前にそれが巨大地震かどうか、どの程度の地震かわかるようにできれば、本当に揺れ始めるまえ数秒間に準備ができるだろう。かなり前から揺れ始める前にエリアメールで警報を受け取れる状態にはなっている。しかし、震源地や地震規模の情報は揺れ終わってから受け取る感じになっている。つまりアラートが鳴ってもどの程度の規模の揺れなのかを把握できていないので大げさな回避行動をとることはないだろう。これでは、本当に大きく揺れたときにその場にとどまるので精一杯かもしれない。

 そこで、実際に揺れだす、どの程度前に状況把握できるのかトライしてみます。具体的には普通に生活している状態で、リアルタイムで監視されている地震観測網の情報での地震検知をキーにしてテレビに表示する。最初にテレビに表示された情報で、どの程度余裕をもって確認できそうか見る。

 構成は次の通り。

「イベント通知」、「緊急地震速報ライブ」は複数方法がありそれぞれ選択することができます。
ここでは、すべて無料で構成できて、もっとも早く情報を得ることができるものを試してみます。

■システム構築、設定方法、設定手順
0)「イベント通知」方法の選択。 気象庁から提供されるリアルタイムデータなどをもとにしたイベントを使用します。いろいろなAPIでイベント情報が提供されていますが、できるだけ早いタイミングで(エリアや震度など)自分が欲しい情報拾えるものであればと何でもよいです。状況によっては有料のものを選択してください。IFTTTなどの連携Webサービスと組み合わせて連携する方法もあります。
ここでは、無料のものうちでも早い「強震モニタExtension」を選択しました。

1)Chromeにプラグイン 「強震モニタ Extension」追加します。
  1-1)右上の「:」(点は3つ)をクリック
   →「その他のツール」→「拡張機能」
1-2) 拡張機能の上の検索欄で 「強震モニタ」を検索
    ” 強震モニタ Extension”が見つかるのでこれを有効化する。
2) 「強震モニタ Extension」の設定
  2-1)Chromeを再起動
2-2)右上の金槌のようなアイコン(拡張機能)をクリック。
  2-3)一覧の中より「強震モニタ」をクリック
2-4)開いた 「強震モニタ」 ウインドウの真ん中下の「設定」をクリック
2-5) ”設定1”タブでエリアや通知震度などを設定
2-6)”設定2”タブで地震情報の送信URLを設定
※設定するURLは後述
3)hsbox(freeBox)を構築します。
詳細手順はつぎのURLを参照:利用開始までの準備
4)テレビに表示したい「緊急地震速報ライブ」などの対象を選択します。
URLを確認します。
例:https://www.youtube.com/watch?v=tcRvI1rSokk
このURLのパラメータ部分「 tcRvI1rSokk 」をコピーしておきます。
※このURLは時々変わるのでそのたびに更新が必要です。
5)hsbox(freeBox)での設定確認
  パラメータでYouTubeをhsbox(freeBox)でテレビに表示できるか確認します。 スマホ向けの画面”コマンドボタン”を使ってテレビに表示するボタンを作成します。作成したコマンドボタンにポイントして、hsbox(freeBox)の操作用URLを確認します。
6) 「強震モニタ Extension」のURL設定
  上の 2-6)のURL設定に 5)の操作用URLを設定します。
  操作用URLの大体のパラメータ構成はつぎのとおりです。
http://<hsboxのIP>/sp/cbtn.php?tgt=<対象のデバイス名>&p2=<テレビに表示するYouTubeのパラメータ>&cmds=1

設定は以上です。

■検証状況
震度0未満の地震はかなり頻繁に発生しています。ゆれが到達する範囲が狭く、あまり参考にならないので、震度2以上の場合にイベントを飛ばして確認中です。映像データが取れたら公開しようと考えています。これまでに何回か震度3クラスの表示を見ることができています。震源地がどこなのかにもよりますが、感触としては揺れる3から5秒前に表示できそうです。継続して確認してみます。

2022/3/11追記 ■2022/3/10に発生した地震での検証結果を掲載しました。→ こちらへどうそ

Google home,nest でプッシュ通知、リモートから操作してみる(hsbox使用)

以前にプッシュ通知について紹介しました。

今回は、リモートからの操作ということで、色々操作してみる方法の紹介です。
先に紹介したhsboxの使い方は高度なメニューを利用する方法でプッシュ通知をする方法でした。今回リリースされた無料版hsbox(freeBox)ではWeb画面からスマートディスプレイやスマートスピーカーを操作できます。

freeBoxでは、次の操作を利用することができます
・URL指定での動画(mp4)、音声(mp3)、画像(jpg)を再生する
・YouTube動画をYouTubeのパラメータで再生する
・文面(テキスト文字列)で指定した音声を再生する

操作方法の詳細はhoscmのサイトを参照してください

※画像:hoscmサイトより

  

hsbox1.1.4 無料版リリース

下の動画:YouTubeより hsbox起動時にスマートディスプレイを見つけるとこの動画を再生します。

hsboxやfreeBoxはあまり手間をかけることなく今回紹介した以外にもいろいろ応用ができるのでプッシュ通知やスマートディスプレイの活用をしてみたいかたは試してみるのもよいでしょう。

hsboxでインストールなしでLinuxを使う かつ 設定変更や編集したファイル、コンテンツも保存する

USB に構築し、インストールなしにUbuntuを使う方法です。
ちょっとイレギュラーな使い方ですが、hsboxをライセンスなしで使う方法です。hsboxのライセンスがないのでhsboxのフル機能は使えませんが、Ubuntuは普通に使えます。 もちろん、下の手順はhsboxのライセンス有でも可能です。

■構築方法

hsboxの「利用開始までの準備」の手順に従い、ライセンス登録の手前(Ubuntuへのログイン)まで行います。

■GUIの起動

次のコマンドを実行します。
sudo systemctl isolate graphical.target

これでGUIモードに切り替わります。
  以上で、普通に使える状態になります。

■hsboxのライセンスが有る場合は、QRコードをスマホのカメラでスキャンすることでアクセスできます。そしてスマホのブラウザ操作で、GUIモードに切り替え可能です。

また、アクセス先URLは上部に記載しているので、このURLを手入力してアクセスすることも可能です。

ぐるぐるnest hub その1 インターネット未接続となる問題  徹底調査で解決 

「WiFiに繋がらない」、「インターネット未接続となる」などで検索すると多数の記事が見つかり、そこには「使用デバイスの不具合」、「無線LANルーターに不具合」などの記載があり、その対処は「スマートフォンの機内モードのONとOFFを切り替える」とか「スマートフォンのネットワーク設定をリセット・再設定」とか書いている。その対処で動くようになることがあるかもしれないが、原因が特定できておらず、再発する可能性が高い。つまり解決したことにはならないことが多々あるに違いない。

  ここでは、ほかのサイトに書かれていない(稀な?)パターンの調査&解析とその解決までの記録である。 タイトルを「ぐるぐるnest 」としたが”その1”ではnestの話を書こうとしていたところ発生した別パターンのトラブルについて書く。

症状:

AndroidスマホをWiFiにつないで使用していた。ある時点までは問題なくWiFiを利用できていたが、部屋を移動して別の無線LANを使用して元の部屋に戻ってきWiFi接続を切り替えるとWiFi(無線LAN)には接続できているが「インターネット接続なし」となりネット利用できなくなる。
 同じ無線LANに接続してほかのIoT機器(Google home、SiwtchBotHubやNature Remo)はインターネットに接続できている。

 この状態で、他のサイトの記事を参考に対処するなら、Androidスマホの再起動や、WiFiオンオフの設定や無線LANの再起動だろう。 いずれの対処も効果なく症状に変化はなかった。過去には似たような症状のときに、無線LAN再起動することで復旧したことはあったが、今回はそのパターンではなさそう。
「原因特定なくして解決なし」ということで原因調査を開始した。

解析編:

まず大まかな切り分けから。
 よくあるサイトの対処手順を参考に切り分けてみる。
1. まずスマートフォンそのものが壊れていないかを確認
  他の無線LANにつないで使う分には問題なく使える
→ 「 スマートフォン そのものの故障」ではない
2.「スマートフォンの機内モードのONとOFFを切り替える
  OFFにするとつながらない。ONに戻しても「インターネット接続なし」の状態に変化はない。 →「機内モード」の問題ではない
3.「スマートフォンのwi-fiのONとOFFを切り替える
OFFにするとつながらない。ONに戻しても「インターネット接続なし」 の状態に 変化はない。 →「WiFi ON/OFF」の問題ではない
4. 「スマートフォンのネットワーク設定をリセット・再設定
 無線LANに接続できているので、スマートフォン側の設定の可能性は極めて低い。もし、設定の問題だとしてもいきなり再設定ではなく設定が妥当か確認する作業が必要だろう。 ということで、後で確認する。
5.「スマートフォンを再起動
スマートフォンが異常な状態になっているなら、これで復旧するかもしれない。
 再起動しても 「インターネット接続なし」 の状態に 変化はない。 →  一時的な異常な状態という問題ではない。

 ということで、よくあるWiFi接続問題を取り扱うサイトには書かれていない何らかの問題が発生していると推測された。

戻って、スマートフォンのネットワーク設定を詳細確認してみた。 設定詳細を開くと、スマートフォンに払いだされたIPとゲートウェイIPは目を疑うものだった。いや、これではインターネットにつながるはずがない。これで、無線LANに接続できているのにインターネットに接続できない直接的な原因は理解できた。
 なぜそうなったかの調査と根本対策は。ここから始まる。
とりあえず復旧させてみよう。”プライバシー….” という項目を長押しするとMACアドレスをランダムにするかデバイス固有のものにするか切り替えることができる。これを使ってIPアドレスをDHCPに再払い出しを要求してみる。 とりあえずIPアドレスは想定通りのものに変わりインターネット接続は復旧した。
 →これで、 「インターネット接続なし」 の直接の原因は”割り振られたIPアドレスにある”ことが確認できた。

 問題の「目を疑ったIPアドレスとゲートウェイIP」は、遠く離れた場所に最近追加した無線LANの無線LAN側のDHCP設定で指定したものだった。
 ここまでの状況を図で整理すると次のようになる。


この挙動は、かなりありえないことが起きていそうなことが理解できるだろう。ただ、事実起きているのだから、この事象発生には何か原因があるのは間違いない。こういう問題は、”ありえない”と最初から起こりそうにないことを除外してしまうと永遠に解決できなくなる。切り分け調査を一歩一歩進めるのが解決への近道である。

 さて切り分けをどうするかを考えようとしていた矢先、「インターネット接続なし」問題が再発した。 今度は、  ”プライバシー….”を使ってIP再払い出しを試みるも復旧しなかった。なおかつ、IP再払い出し要求をするたびに確かにIPが変わっている。そのIPは無線LAN③用のものだ。無線LAN③からIPが払い出されているのは間違いなさそうだ。では、どのような経路で払い出されているのだろう。WiFi接続の認証後、IP払い出し要求するときに無線LAN③からの電波を受け取っているのだとしたら、… 
 無線LAN③の電源を切ることで解決できそうだ。しかし、必要だから無線LAN3を用意したわけで、いつも電源を切っておくわけにはいかない。そこで、まず電源は切らずに無線LAN③のWAN側のケーブルを抜線してみる。

暫定対処

無線LAN③のWAN側のケーブルを抜線して 、スマホで「 IP再払い出し要求 」をすると正しいIPが払い出されて、インターネット接続に成功した。
 これで、このトラブルのメカニズムを理解できた。
ここまでの文面で分かる人は理解できたかもしれない。少し難解なところもあるので、再度整理しておこう。

トラブル原因と仕組み

仕組みは上の図の通りである。 問題は、無線LAN③のDHCP動作である。DHCPはLAN側設定であって、WAN側に流れるものではない。 無線LAN①に接続した機器は通常ブロードバンドルータが払い出したIPを利用する。これにより、IPは192.168.1.xxx、ゲートウェイIPは192.168.1.254となる。しかし問題発生時はIPが192.168.80.xxx、ゲートウェイIPが192.168.80.1となっていた。
 192.168.1.xxとなるか、192.168.80.xxとなるかは、どちらのDHCPからの応答が早いかなど運しだいという状況だったわけだ。スマホ以外のIoT機器に問題がなかったのはたまたまといってよいだろう。いつかは同じ状態に陥っていたかもしれない。また、IoT機器は設計上リトライ回数を増やすなどが我慢強い復旧策を実装しているのが効いているかもしれない。
 いずれにしても、根本原因は判明した。

根本対策

問題原因は分かり、無線LAN③のWANケーブルを抜くことで解決したが、192.168.80.x系のIoT機器が使えない状態なので、いつまでもこの状態にしとくわけにもいかない。
 
 無線LAN③の設定を見直してみる。 そもそも192.168.80.x系の通信がWAN側に漏れるのを防ぐべきで、基本的にはガードできているようだ。 だが、実際にDHCPのUDPパケットはWAN側から無線LAN③に到達して、それに対する応答をしている。 無線LAN③のWAN側パケットフィルタを見るとデフォルトで多数の設定が組み込まれているがDHCPパケットの破棄設定はなかった。

  そこで、DHCPパケットをフィルタリングすることとした。根本対策は、「ネットワーク構成変更jする際は、境界を越えてDHCPパケットが流れないように設定を確認する、また設定を行う」とする。
 ※ネットワーク機器メーカは妥当になるように製品開発を行う際は十分に検討・検証してほしい。

最後に

トラブルの対処法は、小手先の対処では再発する。根本原因を調査して根本対策しましょう。
  ちょっと、長くなりました。 タイトルの「ぐるぐるnest」は次の機会に書きます。このネタも今回と同じくらい長くなる予感がします。。。

音声コマンドで、Google Nestやテレビ(Chromecast)にスマート非対応のWebカメラの画像を表示してみる(hsbox使用)

スマート対応されたIPカメラも登場してきていますが、現時点のWebカメラのほとんふどは未対応でしょう。そこでスマート非対応のWebカメラからGoogle Nestやテレビに映し出すことにトライします。もう一つポイントは”プログラミングしない”ということです。hsboxを使用し、設定だけで実現します。

システム構成:
IFTTTで 「Google Assistant」 をトリガに使用。
※機種によっては監視カメラ自体のアラームをトリガにできます

②IFTTTの 「Webhooks」で、hsboxのAPIを操作。

③ hsboxのメニューのコマンドで画像をURL指定指定して
スマートデバイスに 「cast」を実行

  ④ Google Nestなどの スマートディスプレイや、
Chromecastが WebカメラにURLにアクセスし
ディスプレイやテレビに画像を表示

ここでは、hsboxのスマートサービス連携機能クイックスタートガイドの設定が完了している前提で書きます。 つまり、「メニュー ゼロ」の呼び出しで、ディスプレイや テレビにhsboxのトップメニューが表示されるところまでの設定が完了している前提です。

■①トリガの設定、② 「Webhooks」 の設定

①、②は上記の前提条件の設定状態で完了しています。個別の「シングルワード」での呼び出し設定を行うことで、より操作しやすくなります。

■③メニューのコマンド設定

hsboxのメニューファイルをダウンロードします。設定変更していないなら、どのファイルも同じです。すでに変更していて、追加したい場合は、boxmenu.txtをダウンロードして編集します。

設定例:
 メニューの 625番に 玄関に着けたWebカメラ(http://192.168.20.50:80/snapshot.jpg)を表示するコマンドを登録してみます。

625番なので、 boxmenu.txt ファイルの626行目をつぎのように更新します。※ boxmenu.txt ファイル の行は追加削除しないでください。行番号がメニュー番号に対応しています。先頭行(1行目)が、メニュー0番なので、メニュー625番は、626行目に相当します。

302,http://192.168.20.50:80/snapshot.jpg,-,625: 監視カメラ (玄関),カメラ,-


Google home ,nestに プログラミングなしでプッシュ通知をやってみる(hsbox使用)

以前、「雨が降りだしたら自動で排水」という記事を書きました。今回は、これを拡張して、”排水”の前に、「雨が降り出しました」と音声でプッシュ通知することにトライします。もう一つポイントは”プログラミングしない”ということです。hsboxを使用し、設定だけで実現します。

※hsbox無料版がリリースされました2022/1/24追記

システム構成:
    IFTTTで 「Weather Underground」 のトリガを使用。
※このイベントの精度を向上できるほかの方法がないか後日検討

IFTTTの 「Webhooks」で、hsboxのAPIを操作。

hsboxのメニューのコマンドでスマートデバイスでの
「文字列読み上げ」を実行

  Google home や Google Nestなどのスマートスピーカー、
スマートディスプレイ、 Chromecastを備えたテレビで
音声によるプッシュ通知

ここでは、hsboxのスマートサービス連携機能クイックスタートガイドの設定が完了している前提で書きます。 つまり、すでに「メニュー ゼロ」の 発話でhsboxのトップメニューが、ChromecastをつないだテレビやGoogle Nestに表示される状態ということです。
 
前提条件はここまでです。 以下は、プッシュ通知の設定方法です。

■プッシュ通知の設定する

まず、通知するためのイベントを設定します。
以前に作成したレシピに追加します。

以前「雨が降りだしたら自動で排水」レシピを作成したときは、まだ1つのレシピに1つのサービスしか実行できず、複数実行したいときはすこし技が必要でした。
現在は、下のように「+」を押すと実行するサービスを追加できます。
  降雨イペントの作り方は、以前に作成したレシピを参照してください。

複数のスマートデバイスへのプッシュ通知は、複数サービスを書くことで実現できます。

■通知サービスの設定

Webhooksの設定でつぎのようにURLを設定します。
自ドメインはグローバルIPアドレスでも可能ですが、通常は動的にIPアドレスが変わるのでDDNSを利用して取得したドメイン名を利用してください。
ポート番号は、ルータで指定したポート番号を指定してください。ルータで家庭内LANのIP、ポートに変換する良いでしょう。変換先はhsboxのIPとポート番号を指定してください。hsboxのIPは、ルータでのIP払い出しを固定化するか、hsboxの固定IP追加機能を使用して動的に変わらないようにするとよいでしょう。hsboxのポート番号は、hsboxの仮想サーバ機能のポート番号指定で任意のポート番号を指定してください。

上記の①から③についての設定について説明します。
①hsboxのboxapiキーです。
hsboxの「スマートサービス連携」で指定したキーを設定します。
②プッシュ通知を設定したメニューの番号です。
  「雨が降りだしました」 は、デフォルトで 333番に登録されているのでこれを指定します。 メニューに任意の通知メッセージを設定できるのでそれを使うこともできます。また、動的にメッセージを変えることも可能です。
③プッシュ通知を実行するターゲットのスマートデバイスコードです。
   「スマートサービス連携」の「グループ」設定に登録したスマートデバイスのコードを設定します。 tgtは指定しない方法もあります。指定しない場合は、hsboxに設定されているカレントグループにプッシュ通知されます。

POSTで設定する場合は、上のようにBodyを設定します。 GETでURLのみで指定することも可能です。

以上で、プッシュ通知をプログラミングなしで実現できました。
他にも工夫次でいろいろできそうです。

活動量計 T-PRO Lifesense band2 切れたバンドの対処について

暫定的にビニールテープで補修して使用していたが、他のところがプッチと切れてしまいどうしようか検討中です。ネット上を探すとすぐ切れたという情報が多数見つかりました。バンドが切れるのは”あるある”なのですね。残念ながら、Lifesense bandはもう販売されておらず、交換用のバンドも品切れとのこと、困った。
 本体部分は、問題なく使えているのに、バンドが原因でリタイアとなるとは想定外でした。ほかの製品用のバンドで代替できるものがないか探してみたが、コネクタ部分の仕様が違うようだUSBに直接突き刺す仕様なので、寸法が合いそうなものはあるが、引っ掛ける部分の機構に違いがあるようだ。
 
 諦めて、バッテリーの持ちと、バンドの耐久性を考慮して代わりの製品を探してみた。
 相変わらずApple Watchは駆動時間が短いようだ。2台持ちで問題解決ってどうなのよ。という感じ。バンドについてはいろいろ選べるので、どうにでもなりそうだが、電池の持ちだけはどうにもならん感じがする。ということで、 AppleWatchは 選択肢から外れた。
 そうなると、バンドの耐久性がありそうな活動量計は皆無にちかい。そんなこんなで、fitbitということになった。 fitbitなら、革製や金属製のバンドも存在する。

さてどうなるか、結果は追ってレポートします

太陽光発電のデータチェックをAI化

太陽光発電のデータを定期的にチェックしています。夜間だけ街灯を点灯するので夜昼の変動はありますが、これまで半年ほど一定であった電力消費がある時点から階段状に増加していることに気が付きました。調べると使用する必要のないポンプに電源が入れられ無駄な電気が使われる状態になっていました。これはもっと早く気づきたい事象です。
 以前、太陽光発電システムの故障を検知してメール通知する仕掛けを紹介しましたが、今回のような未知のパターンの異常は検知することができません。未知のパターンの異常であっても検知できる仕掛けであれば、今回の事象ももっと早く気が付くことができたのではないかと考えました。いわゆる今どきのAIの活用です。もっと的確に表現するとディープラーニングの活用です。この方法なら、以前に自動化した故障判断アルゴリズムもまとめることができるでしょう。
 ということで、太陽光発電のデータチェックをAI化してみます。