ともかつの日記

仕事や日常で扱った PIC などのマイコンや Raspberry Pi、パソコンについて書き残していきます。

Nintendo Switch の Joy-Con を修理する

息子が使っている Nintendo SwitchJoy-Con が「触ってもいないのに、勝手に動く!」というので調べてみると... よくある症状のようだ。(-_-;

メーカーに修理に出したり、買い直したりするとかなりの出費になってしまうが、部品を購入して自分で修理できるもののようで、YouTube などにも解説動画が多数アップロードされていました。

 

楽天市場で ↓ のように必要な工具などもセットになって販売されていたので購入し、交換してみました。左右の Joy-Con は左右対称というわけではなく、微妙に形状が違うので戸惑う部分もあるのですが、YouTube の解説動画を見ながらやると、難なく交換できました。

交換後、動作確認をしたら、勝手に動く現象も発生しなくなっていました。外装はどんどん汚れていくのでしょうが、スティック部分が勝手に動く現象であれば、こんな風に部品を自前で修理するのもいいかと思います。

HD映像信号をキャプチャする (2)

引き続き、HD PVR Rocket についてです。

HAUPPAUGE USB接続 キャプチャーユニットHD PVR Rocket

HAUPPAUGE USB接続 キャプチャーユニットHD PVR Rocket

 

先の投稿のように microSD+メモリカードリーダーという状態で、HD PVR Rocket に USB メモリのように認識させ、機器単体でキャプチャさせてみました。

続きを読む

HD映像信号をキャプチャする (1)

家族の映像が記録されている古い映像機器が、外部機器と録画のやり取りが行えるのは IEEE1394 で接続した D-VHS などに限られ、現状ではそんな機器は手に入らない現実に打ちのめされていたのですが... 何とか HDMI 出力されている映像信号をキャプチャできるという機器を見つけたので、購入してみました。

HAUPPAUGE USB接続 キャプチャーユニットHD PVR Rocket

HAUPPAUGE USB接続 キャプチャーユニットHD PVR Rocket

 

数万円するんじゃないかと思っていたら、税込み 9,173円と安価で入手できました。

続きを読む

パスワード送出器を作る (6)

今回の変更点は...

  • いろいろあってやっと手にしたキーボードを Arduino の利点ともいえるライブラリを利用して、使ってみました。以下の URL にあるように Keypad.h を #include してやって、ピン割り当てやキー配置を指定する配列を定義してやると、あっさり使えました。この辺りが Arduino のありがたいところです。
    https://lastminuteengineers.com/arduino-keypad-tutorial/
  • 天皇陛下即位の礼で休日だったこともあって、プログラミングを進めました。
    ① プログラムが起動したらパスコードを入力を求め、あらかじめ設定されたものと一致しなければ先に進まない。
    ② パスコードの入力後、0 ~ 9 のキーが押されると、対応する文字列を送出する。
    ③ 文字列の送出後に Enter を付加するかどうかのモード切替を実装。
    LCD の焼き付きを防止するために、スクリーンセーバー的な機能を実装。
  • デバッグモード(#defeine で DEBUG を定義しているとき)でなければ、シリアルポートからのデバック表示を行わないようにした。シリアルポートへの出力が有効になっていると、シリアルポートへの出力を受け付けてくれるターミナルが接続されていないと、無応答状態になってしまうため。
  • 100円ショップで用意したプラスチックケースに、LCD とキーボード(薄膜キーパット)を貼り付け、接続ケーブルを中に引き込むための加工を行いました。
続きを読む

パスワード送出器を作る (5)

f:id:VEJ00675:20191013161525j:plain少しずつ作っていきます。今回の変更点は...

  • 記憶するパスワード文字列は 10個とするが、プログラムの使用できるようにするためのパスコードも記録するので、EEPROM に保存するのは合計で 11個のデータとなる。
  • 現時点で保存するパスワードは最大で16文字となっているので、文字列の終端である \0 を加えて 17byte となる。EEPROM のサイズは 1,024byte なので、もっとたくさんのデータが保存できるものの、それらのデータを切り替えるための UI を作るのが面倒なので、このまま実質 10個とする。
  • 最悪の事態を避ける程度のエラー処理だが... EEPROM からデータを読み込む際に、データの不整合が生じて、必要なデータを読み出せない場合、エラーを検出できるようにした。
  • まだ、本当のプログラムの処理が実装されていないものの... 起動画面をしばらくしたら消去するようにしてみた。
  • 基板上にタクトスイッチを実装して、ボタンが押されると "Hello World! (xx)" と文字列を送出するようにしてみた。 ※本来の機能であるパスワード送出の練習
  • Arduino IDE に付属している Keyboard.h を利用すると、単純な ASCII 文字は送出できたものの、記号はうまく出力できなかった。
    どうも、101キーボードとして動作していることが原因なようで、以下の URL を参考に 106/109キーボード用にカスタマイズした Keyboard_jp.h を作成したところ無事に動作しました。 ↓ の写真はテキストエディタに文字を入力したところです。()内の数字は送出する度にインクリメントされるようになっています。
    https://mgt.blog.ss-blog.jp/2016-01-14
  • 動作としては、「文字列を送出する」というよりも「該当するキーを押していく」という感じになるため、半角/全角の入力モードによっては、送出したパスワードが全角で入力されちゃう。
    この辺りは問題になるかもしれないけれど、真っ当なプログラムであれば、パスワードの入力フィールドで全角文字を入力できるようにはしないだろうから、問題にならないだろうし、運用でカバーできるだろう。(^-^;

f:id:VEJ00675:20191013161646j:plain

調べていると、同様の機能を持った製品がキングジム(KINGJIM)からも販売されていた。けれど、こちらは PC に USB で接続するものの、パスワードの送出は行えず、パソコンに別途インストールしたアプリケーションを用いて、コピー&ペーストする形のようです。

キングジム パスワードマネージャー  ミルパス PW10 ブラック

キングジム パスワードマネージャー ミルパス PW10 ブラック

 

 

パスワード送出器を作る (4)

※最後まで読むとわかりますが、結果的に商品は配達されました。

 

Amazon で注文した「SODIAL(R)黒い3X4マトリックスキーボード 数字キーボード 69 x 51 x 10mm PIC AVR」ですが、まだ納品されていません。

f:id:VEJ00675:20191009224615j:plain

 Amazon の「配送状況の確認」を見てみると、昨日までは来週の配達になるような表示がされていましたが、気付いてみると日曜日(10/13)の配達となっています。

しかし、「オールインワン 荷物追跡 | 17TRACK(https://www.17track.net/ja)」で配送状況を確認すると、4日前の 10/5 に北京の空港にあることが記録された後、更新されていません。こんな状況で、10/13 に配達されるのだろうか?

f:id:VEJ00675:20191009224545j:plain

 

タイトルと内容が異なる感じがしないでもないけど、タイトルのものを作ろうとして、中国から部品を購入したらこんなに時間がかかるんだ、という記録ということで。(^-^;

 

続きを読む