ラベル 2.4g-rf の投稿を表示しています。 すべての投稿を表示
ラベル 2.4g-rf の投稿を表示しています。 すべての投稿を表示

2023/06/11

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

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

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


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

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

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



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

2022/07/18

rmx 電波式リモコン #13


 自作無線キーボードのレシーバと共通化するので、リモコンも変更。マイコン一つと、書き換え用ヘッダだけの超シンプル仕様。初期のリモコンとの差は歴然。電子工作歴7年、僕も成長してる。

 書き換え時は、リモコンの電池電圧が下がっているとエラーになる。最初、気づかなくて壊れたかと思ったわ。

 安定度という面では、やっぱ赤外線リモコンには勝てないかなぁ。2.4Ghz は色々飛び交っているから混信するのかもね。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/09/24

ぼくのかんがえたさいきょうのきーぼーど、その8

 世に出回るキーボード・ファームウェアのほとんどは、C で書かれたものなので、Arduino では、超えられない壁でもあるかと思ったが、そんなことはなかった。まぁ、ライブラリという、お膳立てがあってこそだけど。

 懸念であった省電力対策も含め問題なさそう。キーを2回押したときの電流グラフ。押して、離して、押して、離して、計4度、電波発信する。マトリクスで読み込んでいるから、押している間は、ポーリングしっぱなし。

 既に、nRF52 を使えば、BLEなキーボードも作成可能なのだろうけど、少なくとも、デスクトップPCで、Bluetooth接続にこだわる必要は無い。BIOS も操作できるし、レシーバ・デバイスに副次的に付いた7SEGの時計は非常に見やすいし、もはや無いと不便だと感じるぐらいだし。

 今度こそ、中身は完成。側は、まだまだ掛かりそう。

 MAC & PC98 用の 90's レトロ・コンビ。ケーブル無しは、正義だな。遅延とか違和感は感じない。しばらく使っているが、レシーバの認識がおかしくなった事が、一度有っただけ。電池のモチも大丈夫そう、実用レベル。nRF51822 は、結構前の製品なのだが、ほんと素晴らしい。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/09/03

nRF24 + 32u4 キーボード・レシーバ


 キーボード(nRF51822)→ レシーバ(32u4 + nRF24)のパターン。nRF24 は、無線モジュールなので、プログラムは、32u4 だけでいい。MySensors のライブラリは、nRF24 - nRF5x 間の通信が可能。

 じゃぁ、送信側も、nRF24 でいいじゃないか?と思うかもしれないが、配線が面倒というか、マトリクスの分と、nRF24 のピンとで大変なことになるから現実的ではないのよ。

 今となっては、32u4 も安くは無いのだが、手持ちの使いかけのがあるので、有効利用できる。時計のいらないサブPCとかなら、無線モジュールだけのシンプル版、若しくは、ハンダ付けのいらない nRF52840 のドングルでいいかと。


追記 2021-09-08
 時計無しのシンプル版。HTPC で使う。というか2台目以降は、これを増殖させればいい。



追記 2021-09-09
 ノード(チャンネルみたいなもの)の設定、7SEGの明るさ設定、IME表示LED、windows 側のアプリで行う。

※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/08/01

ぼくのかんがえたさいきょうのきーぼーど、その7


 作業途中のさいきょうキーボード、マイコン32u4 を nRF51822 に交換して無線化。2.4GHz のレシーバ式。ファームウェアも、自前で、ようやく、オリジナル・キーボードと言える。

 無線キーボードは、別にいらないと思っていたけど、ケーブル無いとすっきりだな。考え変わったわ。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/07/25

G84-4100PPAUS KEYBOARD + nRF51822


 nRF5x のデバイス2号機。Cherry 純正の薄型・小型・メカニカル・キーボードをワイヤレスに改造。古いキーボードなので制御基板も大きいし、マトリクスとも、キレイに分割できるので改造は楽。

 ケースの底面を切って、単4電池仕様に変更。HTPC のキーボードとして使おうと思う。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/07/14

PC-9801n-23 TEN KEYBOARD + nRF51822



 nRF5x のデバイス1号機。ボタンを押したとき、離したときにボタン番号を送信するだけ。処理は、レシーバが行う。今後もつくるデバイスは、すべて同じレシーバに繋がる予定。

 この古いテンキーのメカニカルスイッチは、チャタリングがほとんど起こらない。分解できないから、掃除も出来ないのが困るとこではある。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/07/10

nRF5x キーボードもどき、その1

 キーボードマトリクス → nRF51822 → 無線 → nRF52832 → USB Serial → キーエミュレーション。OSが立ち上がらないと機能しないキーボード。


 デバイスは、送信側も、受信側もボタンデータの受け渡しだけ、実際に何をするのかはWindows 側のソフトしだい。これなら、レシーバは1個で、複数デバイスを処理出来ると思うんだ。


 Cherry ML4100 キーボードの制御基板を外して、マトリクスを乗っ取った。チャタリングが酷い以前に、同時押しできないのは駄目だな。キーの入れ替えとかも自由に出来ないし。

 TOSHIBA J-3100GT キーボード、こっちのほうがマシだな。配列的に使えないのが惜しい。

 この方式だと、ゲームとかじゃなく、リモートデスクトップでも、キー入力できないのか。やっぱり、32u4 を挟まないと駄目だな。RAW HID の代わりにSerialが使えるのは確認した。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/06/15

nRF5x 同士の通信

 しばらく試行錯誤したので、多少は nRF5x の扱いが分かってきた。やはり、Arduino IDE での開発は邪道気味なよう。それでも、出来ないわけでもない。

 仕様的に、BLE デバイスをつくるべきなんだろうけど、作りたいものが思いつかない。とりあえず、BLE じゃない、2つの nRF5x を使った通信を調べてみた。
参考リンク
 RadioHead nRF5x 同士で通信できるシンプルなライブラリ
 mysensors nRF24 へも接続できる! でも高機能すぎて使いづらい
 nRF24 の代わりも出来る、というかプログラムも出来るから、nRF24 + マイコンの置き換えだね。BLE のように余計な通信はしないから、省電力なのは間違いなし。

 例えば、無線のキーボードを作るとすると、↑のような構成で、受信側は、マイコン2つとか贅沢なことになる。BLEキーボードとするのなら、右側の送信部だけで完結する。残念ながら、Arduino でのBLEキーボードは、Windowsでは使えない。修正される気配も無い。というか、Windows の場合、Bluetooth 自体が、かなり怪しい。なので、レシーバを挟むのも有りかと。

 nRF52840 のドングルでプログラムできるなら、受信側もシンプルになるんだが、結局、僕のような素人にはライブラリがないと現実的に使えないわけで、んー、悩ましい。


 USB-HID のための、32u4 は、場合によっては、Digispark でも、Raspberry Pi Pico でもかまわないが、安定度という点では、32u4 がずば抜けている。半導体不足かなんか知らないが、マイコンの値段が倍ぐらいになっているので、データを渡す用途だけなら、安い USB-Serial と組み合わせてもいい気がする。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/06/02

ESP8266 + nRF24 で WOL


 ESP8266 の D1 mini もどきに、nRF24 モジュールつけたもの。最近使っているPCは、3台共、サーバっぽいのばかりで、USBデバイスで、電源復帰できない。毎回、本体の電源ボタンを押すのも面倒になってきたので、WOL(Wake On LAN)デバイスをでっち上げた。5Vの電源があれば、単独で動くので、部屋に転がしておけばいい。

 HTPC のリモコンから、2.4G 信号を受け取って、無線ルータ(WIFI)経由で、マジックパケットを送信する。ハード側が対応していれば、スリープどころか、電源オフからも起動できる。

 最初、電源スイッチの無線化をすればいいかと思ったが、それだと必要PC分だけ作業を繰り返さなくちゃいけないわけで、WOLなら、これ1台で済むんだわ。
参考リンク
 a7md0/WakeOnLan WOL ライブラリ
 dparson55/NRFLite nRF24L01+ ライブラリ


追記 2021-06-07
 接続したままにしてたら、やたら熱くなっていたので、常時接続は諦めて、その都度ルータに接続することに。10秒くらい待たないといけないが、頻繁に使うものでもないし。ただ、動いているのか分かりづらいので、ブザーを付けて確認音を鳴らすようにした。

 WOL だけじゃ芸がないので、電源が入っているときには、逆にシャットダウンするよう、Windows のサービスプログラムを追加した。サービスプログラムは、Delphi に雛形があるので簡単につくれる。

※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/04/12

rmx 電波式リモコン #12


 ATtiny・電池版の調子が良さそうだったので、より反応よくするため 8Mhz 版を作った。まだ、実験中だが、ひと月くらい電池が持てば十分だと思う。

 ひとまず、2.4GHz の無線リモコンとしては、これで一区切り。最終的には、実にシンプルな形となった。尤も、試行錯誤したうえでの結果であって、屍となった赤外線リモコンは、二十個近く。マイコンその他部品も、大分無駄にしてきたが、趣味として考えれば、それほど金がかかったわけでもないし、そのまま実用品なわけで。

 次は、ESP32 じゃない、Bluetooth デバイスをやろうと思う。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2021/01/31

rmx 電波式リモコン #11


 ここの所、リポバッテリーではなくて、ニッケル水素電池(エネループ等の普通サイズの充電池)で動かそうとあれこれ頑張っていた。で、これは、単4 x 2 の元のリモコンを壊さず埋め込んだ版。外見は、赤外線LEDが無くなって、インジケータの小穴を開けただけでノーマル同然。マイコンは、ATTiny84A を使った。

 いつも使っていた ATMega8A は、2.7V までしか動かないらしい(今頃、気づいたのかよ)。確かにデータシートでは、そうなっているが、動作保証しないだけで、クロックを落とせば、ATMega328 などのように、1.8V まで動くものだと勘違いしていた。

 ニッケル水素電池は満充電で、1.4V ぐらいなので、最初は、1.4 x 2=2.8V で動作するが、すぐに、2.7V を割ってしまうので動作不能に。高価なDCコンバータでも挟めばいいのかもしれないが、そんなの本末転倒というか、腹立たしいw。そもそも、ニッケル水素電池は、空になるまで使うのはよくない(高価なエネループが、大して使っていないのに使えなくなるのは、そのせいかと)。

 ATTiny84A は、データシートに、0~4MHz/1.8~5.5V とあるので、クロック 4Mhz で組んで、電池直結。うん、これで正解かも知れない。電圧が低いせいか、電波が弱いような気がしないでもないが、ニッケル水素電池は、1.2V あたりで粘るらしいし期待できるかも。


追記 2021-02-10
 リセットボタン追加して、起動時に電圧測定して表示できるようにした。


※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2020/11/27

rmx 電波式リモコン #10


 メジャーな無線モジュール「nRF24L01+」版。先の SE8R01 とは、DIP・SMD共、ピン・コンパチだが、プログラムは共通では使えない。
 消費電流は、予想通り SE8R01 よりも、nRF24 の方が小さいのは間違いなさそう。そもそも、SE8R01 は、入手困難と思われるので、今更拘る必要もなく、nRF24 のSMDタイプで良いかと。DIPタイプは、基板サイズが大きいので、コンパクトさが必要ならば不向き。一見、ESP-01っぽいが、一回り大きい。

参考リンク
 dparson55/NRFLite nRF24L01+ ライブラリで、簡単そうなのがコレ
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2020/11/21

rmx 電波式リモコン #9

 ATmega8 + SE8R01 で新たに組み直した。ハードはあまり変わっていないが、ソフトのほうは新規に作った。こいつをリファレンスに、燃費の悪いSE8R01から、他の無線モジュールに交換することで、どのぐらい変わるのか調べようと思う。

 充電は、DCプラグ。これが一番。

 デバッグ用の8桁の7セグメントディスプレイ付きのレシーバ。4バイトのデータを送っているので、それの確認用。

 まんま、Sony の赤外線リモコン・セットと同じような仕組みになったので、デバイス認識以外は、処理も共通。rmx4 も、余計なの無くして、すっきり。



 ESP32 の上ヒゲは、400mA くらいだったから、ATmega8 のは、1桁少ない。僕の知識じゃ、ESP32 の省エネ駆動は無理、ATmega + 無線モジュール のほうが実用的かと。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2020/10/31

ESP-WROOM-32(ESP32)で 無線リモコン(送信側)


 電流モニタを作ったことで、副作用的に動作確認出来るようになったのは、大きな進歩。Arduino の工作で省電力絡みなら、もはや無いと話にならない。オシロとか論外にしても、PCに接続できるテスタも、けっこういい値段すると思うので、INA219 はおススメ。裸のESP32 の書き込みとデバッグには、ESP-01用のアダプタを流用する。ESP8266 用なので、3.3V でそのまま使える。

 仕切り直しで、新たなベースとなるリモコン、NECパソコン用?を使い始めた。NECの製品なのに、赤外線信号は、家製協(AEHA)フォーマットっぽい。でも、リピート信号も同じデータ流しつづけるから、独自フォーマットなのかも。

 ボタンを離したときも信号が出力されるので、ボタンダウン→ボタンアップの2回の送信を1セットとする。省エネ的に、長押しのリピートは無駄。ESP じゃない、2.4G のリモコン作り始めた当初は、この方式にしてたが、誤動作が多くて諦めた。

 とりあえず、実用になるかわからないが、うまくいくと下図のようになる。途中のリピート信号を無視(といっても、割り込みで、スリープ解除されてしまうが)して、最初と最後だけ送信する。

2020/09/21

ESP-01(ESP8266)で 無線リモコン

 ESP32で、実験していたのだけど、省電力がうまくいかないので、とりあえずESP8266で。ESP-01って、ちっこくてカッコ良くない? ESP間の直接通信であるESP-NOWは、ESP32じゃないと出来ないと思い込んでたわ。ただし、ライブラリが別なので、プログラムは共通では使えない。

 受信側は、無線モジュールの代わりにESP-01に変えただけ。受け取ったデータをそのまま Pro Micro にシリアルで転送。

 肝心の送信側、ATmega8 と 無線モジュールを使っていたのを、ESP-01(ESP8266)一つに置き換える。ESP-01単体でマイコンとして動作するので、リモコンの処理とESP-NOWの通信を両立できる。

 リモコンからの信号待ちの間は、ライトスリープを使って電力セーブしている。といってもじわじわバッテリーは、削られていくわけで、やっぱり、ディープスリープが必要なのかなぁ。ESP-01でやるには、改造必須みたいなんで、今度部品が集まったら、やってみよう。

※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2019/12/21

rmx 電波式リモコン #8

 コンパクト仕様の無線レシーバ。壊れたので作り直した。普段使いの作業PCで使う。今度は、最初からライタ用の端子の一列を空けといた。電線も太めのを使ったので、少しは安定性が増すといいが。




 3.3V のピンが無い似ているのがあるので、買う時は注意。ATMEGA 自体は、5V 動作だが、無線モジュールは、3.3V で動く。

 2.4GHz 無線デバイスは、これぐらいで、次は、ESP32 で、Bluetooth かな。

※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。

2019/04/12

rmx 電波式リモコン #6



 完成品としては、3つ目。薄型バッテリを見つけてきたので、充電モジュールと共に上側へ移動、DIP版の ATmega をそのまま使えるようになった。

 リモコンのプラスチックの質が悪いと思ったら、ガワも、基板も、前に改造したものとは違うものだった。壊しまくったので、残りの素材リモコンは、同タイプが3個、前のタイプが1個だけとなった。改造にはこちらの方が都合が良さそうだが、選んで買うのは難しいか。

 ICSP端子を標準的な配列にして、USBTinyISP が直接刺さるようにした。若干、電池蓋と干渉してる。元リモコン基板の LEDを削除。充電は、ACアダプタを使うようにした。USBと違い、上下も無いので接続が楽。

 この元となっているリモコン自体のボタンが、薄型のタクトスイッチなので、ある程度力を込めてボタンを押さないといけない。昔ながらのゴム接点のリモコンの柔らかい(ふにゅふにゅ)操作感と違うのは仕方ない。

2019/02/09

rmx 電波式リモコン #5

 前回に続き、Pro Mini版を作ろうとして失敗。結局 ATMEGA8 のDIP版で再作成。USB Micro のケーブル直刺しで充電できるようになった。

 ファーム書き換え用の ICSP端子は、電池蓋の中に。ICSP端子経由でも充電可能。赤いLEDは、充電中ランプ、完了したら緑色に変わる。

 バッテリとATMEGA8の高さで、ぴったりギリギリ。隙間があると、ボタンを押した時に、凹んでしまうので、ぴったりギリギリで正解。

2018/11/23

rmx 電波式リモコン #4

 ブログに載せてないが、既に2個失敗した後の、3度目の正直。大苦戦の末、ようやく電波式リモコンが完成した。そもそも、このリモコン自体、手のひらサイズで、電池部以外は薄くなっていて改造には向いていない。このリモコンは、コンパクトさと、ボタン配列が気に入って、大量に買ってあったので意地でも使わざるをえなかった。


 ATmega は、薄くするため、開きにして使った。スペースの都合上、ケーブルで取り回す必要があって悲惨なことになっている。もし、薄型のバッテリーが探せれば、上にもってきて、ATmega は下側にまとめられて、ケーブルは、ごっそり無くせるはず。

 手前の黒い熱収縮チューブで包んでいるのが、2.4GHz RFモジュール SE8R01 のDIP版。もっとも、ピンを抜いて直接ハンダ付けしてある。一般的な nRF24L01+ モジュールを使うには、プログラムを修正するのが面倒だし、半額なのに普通に動くし。

 追加した 6ピンは、ICSP端子。プログラムの書き換えと、充電に使う。スライドスイッチは、オフ → オン① → オン② と切り替わる。スイッチを一つだけに減らしたので、2機種のリモコンになった。左端は、2色LED。ボタンを押すたびにそれぞれの色で光る。

 リモコンファームウェアの書き換えは、こんな感じ。ISP の10ピンに変換コネクタ経由で接続する。完成してしまえば、PCに?ぐ必要はない。

 充電インジケータは、先端の赤外線LEDを外した所に。充電中、充電完了の2色で表示される。

 MicroUSB ケーブルから充電できるように変換コネクタつくった。

 かなり無茶して詰め込んだので、壊れても修理とか難しい。ボタンの劣化だけなら、リモコン基板の交換で済むが、それ以外は無理。予備用に、もう1個は作っておかないとな。


追記 2018-12-16
 時々、不安定になるのでコンデンサを追加してみた。ファームの書き換え頻度は高くないので、ICSP端子よりも、USBマイクロの充電端子と、電池蓋の中に通信用のピンを用意しておくほうがスマートだな。発信時のLED点灯も不要、次回製作時は省こう。
※ 技適マーク無しの無線デバイスの実験は、日本国外で行いましょう。