2023/12/06

転記 作業中

 あちこち、リンク切れあり。Blogger は、久しぶり。映画の記事は、画像多くて、挫折した。Blogger の画像の扱いは面倒くさすぎだろう。

 転記しきれていない分のアーカイブは、https://sakura.rdoz.net にある。

 SSL対応の関係で、URLは、変更になる可能性あり。Blogger も、もう一つのサーバも無料SSLが設定できるらしい。

2023/10/18

サーバOS(ファイルサーバ)に、LibreELECを使う

 LibreELECは、最小限の Linux 上で、Kodi を動作させるメディアセンタ向けのディストリビューション。どんなデバイスでも動くわけではなくて、ラズパイや TVBOX(Android タブレットからディスプレイを無くして、有線LANをつけたような奴)向け。

 PC用もあるが、Intel NUC 辺りを想定していて、意図的に新しめの小さなプラットフォーム向けらしい。ここしばらく、色々なPCにインストールしてテストしてみたが、あえて、サーバPCのOSに、LibreELEC を採用してみることにした。

 サーバといっても、ファイル共有の機能だけあればいいので、LibreELEC の標準機能に、Samba が含まれているので超簡単に導入できる。グラボも載せたので、そのままHTPCとしても使える。モニタの電源がはいってなければ、samba でファイルサーバになる。


 僕のように、大量の動画ファイルの再生だけ出来れば良し、というのならば、これがおススメ。ライブラリの有り無しに関わらず、初回にキャッシュをつくるので、しょぼいマシンでは(古いアンドロイドとか)ダメ。大量のファイルを扱うには、それなりのスペックのPCが必要。ライブラリ完成、もしくはキャッシュ完成後なら、しょぼくても使えないことは無いので、そこだけは注意。

2023/06/11

サーバ経由のリモコンで操作する

 Windowsタブレット + Bluetooth リモコンの Kodiは、特に困ることもなく、慣れつつあったが、ケーブルに足を引っ掛けて画面にヒビを入れてしまった。結構重量もあってバッテリー燃費もよくはない。それなら、軽くて、壊しても泣かない Android のタブレットを使えばいいじゃない。

 今まで使ってこなかったのは、やはり、タッチ操作だけってのは使い勝手が悪いから。市販されている Bluetooth リモコンは、試すまでもなく、ボタン数が足りないし、マウスっぽく操作するタイプは使いづらい。Bluetooth リモコンを自作するしかないのか、と思っていたが。


 発想の転換、気づいてしまった。

 Android に直接、リモコンを接続する必要はない。リモコン&レシーバを動作させるのは、動画ソースのあるファイルサーバでいい。

 そもそも、USBレシーバと、Kodi 間の rmx という自作ソフトがやっていたのは、TCP/IPのソケット通信。今までは、レシーバと kodi が同一PC内で完結していたが、別の PC だろうと、ルータ越しのワイヤレス接続された端末でも問題ない。スマホをリモコン代わりにするアプリがあったが、それの逆パターン。



 問題は、そのプログラムを、Linux サーバで動かさないといけないこと。とりあえず、四苦八苦しながらも、それっぽいものは作れたが、しばらくは、テスト。

2023/06/10

HTPC なんていらない、必要なのはファイルサーバだ!

 切っ掛けは、電気代高騰。無駄に電気代高そうなプロジェクタを毎日動かすのはよろしくない、というわけで、Windowsタブレットで動画を観るようになった。

 HTPCだったものから、グラボを外し、TDP25Wの CPU に交換し、OS を Linux に入れ替え、省電力?ファイルサーバとする。現時点では、ファイル共有さえできればいい。Linux なんぞ頭のおかしい奴しか使わない、って言ってる僕でも、Windowsのファイルサーバはありえない。

 HDD は、8TBx3体制。バックアップx3は手動。RAIDなんぞ不要。NTFS で、交換ベイタイプなので、6台のHDD毎にマウント先を、正しく振り分ける必要がある。

 キーボードもマウスも無しで、USBの無線レシーバのみ。リモコンでの電源操作のためと、後述するネット内の端末のコントロールに使う。サーバ上の作業は、telnet か、VNCのリモートで行う。RDP じゃないのは、作業PCが、Win10日本語の英語キーボードなんだが、これが RDP + リモートデスクトップ接続 だと強制的に、日本語キーボードとして入力されてしまう、なんで?


追記 2023-06-11
 Windows10 を英語でインストールした PC で試してみたら、RDP でも英語キーボードで正しく入力できた。別に日本でも英語キーボードを使っている人は、珍しくないはずなんだがねぇ。

2023/06/09

FPC-USB-HID ライブラリ

 Jedi JVCL library の、TJvHidDeviceController(USBデバイス制御)を、Linux の Free Pascal(Lazarus)で使えるようにしたライブラリをみつけた。本来、ハードウェア絡みのプログラムは、OS毎の違いがあって、手も足も出ない。ライブラリで違いを吸収してくれれば、Linux の中身など知らない僕でも大丈夫。

 そういうわけで、今までプログラム環境の都合上、Windows でしか動かせなかったものが、Linux OS上でも可能になる・・・、かもしれない。



 もはや、ライフワークになりつつある自作の無線リモコンシステムを、LibreELEC(中身は Linux)で動かすテスト中。Linux のバイナリ互換性ってどうなってるんだろう。ディストリビューションの違う他のPCでコンパイルしても動くけど、そういうものなのかな?
参考リンク
 FPC-USB-HID USB HID library for FPC

2023/05/06

USBaspで、マザボのBIOSチップを読み書き

 HTPCをファイルサーバに変更する作業中。ついでに行った CPU交換の BIOSアップデートに失敗した。別に書き込み中に停電したとかでもなく、無事?に書き込みが終わったのに、再起動後、CPUファンが回るだけで一切反応しなくなった。こういうときの為に、各PCを2セットづつもっているはずなんだが、しくじって何故か2台目も起動しなくなるという恐ろしい事態に。

 結論からいうと、丸2日かけて復旧できた。バックアップしていたBIOSを、USBaspを使って書き戻して、さらに起動した実機で最新のに更新した。失敗したアップデートとの違いは、BIOSメニュー内のアップデートツールか、DOSから実行したものかの違い。深く追求しても、又、動かなくなるのも困るので余計なことはしないでおく。

 BIOSチップは、Winbond の W25Q64FVAIG という8ピンDIP仕様。ソケットで、付け外しが自由。マザボによって型番、仕様は違うので要注意。電子部品として別途購入も可能。

 Arduino の書き込みで使う USBasp を使ったが、メジャーなのは、CH341aのライタらしい。治具もブレッドボードも不要で、そんなに高くもない。DIP タイプの BIOSチップなら加工なしで使えそう。

 3.3Vで指定通り結線して、AsProgrammer というライタソフトを使う。USBasp だとやたら遅いが、何度も使うものでもないしね。

参考リンク
 UsbAsp-flash USBasp とかで使えるプログラマ
 AsProgrammer  バイナリ


 一応、起動するようにはなったが、怪しいかも。しばらく様子見。ダメなら、HDDの交換ベイを諦めて、NECスリムサーバに戻すか。電源の性能の違いか、NECの方が省電力。しょぼくても、サーバ(本物)だしな。

 それにしても、小さなチップ一つで、動作不能とか、書込み手段を知らなければ、マザボ自体を捨てるしかなかったろうに。何事も知識は大事。

2023/04/19

Sony PS3用 BDリモートコントローラ (CECHZR1J)


 プレステ3用のBluetooth リモコン、赤外線無しの古いタイプ。後期型ほどじゃないが、普段使っている自前の無線リモコンよりも、デカくて厚い。小さなリモコンに慣れた今となっては、すごい違和感。一般的なボタンの裏側に導電ゴムが貼り付いているのではなく、別に導電用の独立したシートが使われている。後期型に比べると、基板サイズはそこそこ大きいが、単3電池2本仕様なのはすごく良い(後期型は単4)。

 Windows で、普通に認識できる。元々、プレステ用だから、PCに接続したときに余計なことをしない、ってのが最大の利点。ボタンの入力に対して、何らかの処理を割り当てるドライバなり、ソフトウェアが別途必要になる。

 Lazarus で作っているメディアセンタ用のリモコンソフトに、ざっくりと、このリモコンの処理を追加してみたが、まぁまぁ使えそう。プログラム的には、ただの HIDデバイス。

 今更、Bluetooth リモコンをやっているのは、タブレットやノートパソコンだと、USBの無線レシーバを使うのは邪魔で現実的ではないし、目の前に端末があるなら、そもそもリモコンで電源操作とか不要なわけで。



 Bluetooth だから使っていなくても電波が出ていそう?なので、物理的な電源スイッチを追加した。スライドスイッチを電池端子に割り込ませて、ホットボンドで止めた。電源オフにすればデバイスは切断され、再度オンにして、適当なボタンを何度か押すと再接続される。面倒だが確実。

2023/03/26

Sony DUALSHOCK 3(ワイヤレスコントローラ) をPCで使う


 プレステ3用の Bluetooth ゲームコントローラ。アナログスティックが必要な時は、Wii のコントローラを使ったりすればいいが、こちらのほうが単体で使えて便利。PS3のリモコンと同様、Windows で認識は出来るが、そのままでは使えない。いくつか、仮想ドライバ的なソフトがあって、それを経由すれば通常のコントローラと同じように使える。Windows 標準のペアリングは使わない。


参考リンク
 DsHidMini 仮想ドライバ、コントローラのマネージャ的なもの
 BthPS3 Bluetooth ドライバ


 このコントローラの何が良いかというと、ジャンクが安いこと。新品の互換品も安いので、わざわざジャンクを買う必要があるかと考える人もいるだろうが、互換コントローラと純正コントローラは別物で、そもそもの出来が違う。

 ジャンクが安いのは、経年劣化で、メンブレンシート的なフィルムを基板側に押し付けるスポンジが変形して正常動作しなくなるから。なので、高い中古品は意味が無い。いずれ不具合が起きるので、結局、買いなおすか、分解・整備が必要になる。

2023/03/20

Sony PS3用 BDリモートコントローラ (CECH-ZRC1J)


 プレステ3用のBluetooth リモコン。PS3なんて最先端w のゲーム機は、持っていないが、PC でも使えるということで、前から気になっていた。PS4や PS5で同じようなタイプの新リモコンが出るだろうと待っていたが、出る気配無し。あきらめてジャンクのボロボロの汚いのを買ってきた。

 早速、掃除も兼ねて、ばらしてみたが、リモコンというより、ゲームコントローラのリモコン型な感じ。当時、新品が3000円ほどだったらしいのだが、今はプレミア価格となっている。

 Windows10 でペアリング後、そのままでは、リモコンが何かに影響を与えることはない。プログラム的には、Bluetooth とか気にせず、HIDデバイスから、押されたボタンのデータが送られてくるので、それを読み取って処理すればいい。自作しなくても、すでに KODI 用含めて、色々とあるみたい。

 プレステ3のリモコンは、2種類あって、これは後期の、TVとアンプ用の赤外線も発信できるタイプ。赤外線受信デバイスは、自作もそれほど難しいわけでもないので、Bluetooth リモコンの弱点であるPCの電源の操作とかにも使えるかも。

 僕は、さんざん苦労して自前の 2.4Ghz のリモコンシステムを作っているが、ソニー様のリモコンをベースにすれば、少なくても送り側は完璧だろうから、開発は受信側だけでいい。

 少し試しただけだが、ボタンの反応も良いし、電池の持ちがどの程度か分からないが、単純な入力デバイスとしては、優秀だと思う。

2023/02/11

サーキュレーターの効果



 効果あると思っていても、実際のところどうなのよ、ってのも実測してみるとハッキリする。赤線は、部屋の天井近くのセンサ。青線は、床置きしているセンサ。2mくらいしか離れてなくても結構違う。グラフの青線が、突然上昇するのは、床から天井へ向けてサーキュレータを動かしたから。

 高気密、高断熱住宅に住んでるなら気にしなくてもいいかもしれないが、天井と床との温度差が大きな場合は、空気をかき混ぜる効果はすごく高い。


 高いものでもないし、夏でも、エアコンと併用すると涼しいし、洗濯ものの部屋干しにも使えて便利。

2022/12/27

ワイヤレス温度計 #4


 デスクトップガジェットに、ワイヤレス温度計の受信機能を取り込んだ。2つのBLEデバイスからのデータを受信する度に、MYSQL データベースを更新し、温度とバッテリ残を表示する。

 データベースに記録しているので、適当なグラフ表示のソフトで、温度変化も読み取れる。BLEのデータ取得は、仕組み的にキッチリとした時間では取れない。数秒毎のランダムなタイミングとなる。勝手に発信し、勝手に受信しているのでそうなる。



 ESP32 の受信デバイスも、2個分の温度表示出来るようにした。こちらは、PCは関係無く、電源があれば動く。スマホとかの充電ケーブルでよい。

 本格的に温度の記録をとりたいなら、ESP32 からデータベースに接続するのが普通かもしれない(そういうIoT向けのサービスが既にある)。でも、やる気はしないな。既にファイルサーバを動かしてるとか、省電力PCをローカルに用意できるなら、PC上で完結したほうがトラブルは少ないよね、たぶん。

2022/12/21

Lazarus 2.2.0 + MySQL Community Server 8.0.31 でエラー

 たまには、まともなデータベースでも使ってみるかと、MySQL をインストールして、Lazarus からアクセスしようとしたら、実行時に、libmysql.dll が無いといわれて動かない。ちゃんとコピーしてるのに…。

 TMySQL80Connection コンポーネントがダメなのかと、MySQL Ver 5.7 に入れ替えて、TMySQL57Connection を使ったら、あっさり動いた。もぅ。


参考リンク
 MySQL Community Server  データベース
 HeidiSQL データベース管理ソフト

ワイヤレス温度計 #3

 Delphi の BLEが不安定すぎだし、RSSI 取得できないし。何気に検索したら、SimpleBLE Library というのを、パスカル向けに変換してくれてる人がいた。まぁ、これはこれで、生のアドバタイズ データにアクセス出来ない?のがイマイチだが、一応動作はする。

 アドバタイズ に、ADタイプ 0xFF の Manufacturer Specific Data に自分で使うデータを入れとけば、SimpleBlePeripheralManufacturerDataGet() で読み込める。


参考リンク
 Pascal Bindings For SimpleBLE Library Lazarus でも使える

2022/12/12

ワイヤレス温度計 #2

 温度センサDS18B20の話。

 温度測定の際の分解能を、9~12ビットで設定できる。数字が大きいほど、細かな単位で取得できるが(9bit で、0.5℃刻み、10bit で、0.25、11bitで、0.125、12bitで、0.0625)、そもそもの精度が、±0.5℃なので、12bit とか指定しても意味がないように思う。それに、12bit を指定すると、1回の測定に、750 ms もかかる。ま、意味はなくても、小数点以下1ケタを完全に表示したいなら、12bit が必要。

 手持ちのケーブル付きのセンサは、下記リンクのプログラムを動かしてみたら、本物?らしい。複数接続も、2線式も試していないが、少なくとも単体で使う分には問題なさそう。まぁ、クローンとか同じ動きをするのなら、たとえ中身が違っていても実質的に問題はないが、同じように動かないのでは問題外だよね。
参考リンク
 DS18B20 Datasheet 温度センサ資料
 How to tell original from fake DS18B20 temperature sensors.  偽物があるらしい

2022/12/06

ワイヤレス温度計 #1

 夏に、無線な水温計を作ろうと思っていたら、もう年末だ。ようやく取り掛かったが、キーボードや、リモコンでの実績のある2.4GHzの通信ではなく、今までチョロチョロと実験してきた BLE(Bluetooth Low Energy)でやってみることにした。

 温度センサ は、DS18B20 にケーブルがついたのを調達。ステンレスパイプの中にセンサが入れられて、熱収縮のチューブで防水処理されている。本物は、センサだけで、数百円するそうだから、パチもんだろうけど。0度(氷)、100度(沸騰水)を試したぶんには、正確だった。

 送信側は、nRF51822 の BLE ビーコンもどき。ひたすら、測定温度をアドバタイズパケットに乗せて垂れ流すだけ、接続もさせない。

 受信側は、なんでも出来るESP32。とりあえず、7セグメントの LED に温度表示できるようにした。最初、Windows PC + Delphi でのソフトウェアで処理させようとしたが、まともに動かなかった。

 温度とバッテリ量を表示するだけなら、スマホやタブレットなんかの nordic の Androidアプリ用に、パケットを送信すれば、それで目的は達成される。Android アプリは、自前では作れないから(早々に挫折した)、測定データを何か利用するなら、ESP32 から、WiFi で飛ばせばいいかと。

 で、やりたいことは、実現できそうではあるが、実用化出来るかは、別の話。BLE は、色々と難しい。というか、電波飛ばなすぎだよな。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2022/11/29

中古ガラホ(KYF37) + povo2.0


 スマホを、デュアルSIM で使っていたが、どうも切り替えが煩わしい。というか、やはりスマホは、デカくて邪魔なんだよね。ちょっと、スーパーに買い物にいくのに、首から吊しても、ベルトポーチに入れても、中々鬱陶しい。

 そんなわけで、ポケットに入るガラホ。形は、ガラケーなんだけど、中身はスマホ。ソフトでガラケーっぽい操作感になってる。ガラケーが使えなくなるー、とか言ってたのは、3Gケータイで、ガラホは、4Gなので問題にならない。

 ボロくても気にしないので、2千円弱で買えた。バッテリは消耗してるので、別途、購入しないとだが、au 機なので、povo SIM が問題なく使えるようだ。eSIM だったので、物理SIM に交換してもらった。待ち受け専用なら、半年に一度課金するだけの低コスト運用可能。


追記 2022-12-05
 プリインストール済みのアプリをADBで無理やり消しまくった。追加アプリ無し、WiFi不要、Bluetooth不要、新しい電池は確保したが、待ち受けだけなら今のままの電池でも、数日持ちそう。電話だけなら、やっぱケータイの形が最強だな。最近お気に入りの、磁石付きのUSB電源ケーブルのアダプタも、最下部のところにきて邪魔にならない(関係ないが、スマホもタブレットもガラホも、USB端子なら同じケーブルで充電できる、すごく便利)。

 povo2.0 の運用には、スマホアプリとネットが必要なので、年寄が使うには敷居が高い、2台持ちのマニア向けだな。