virt_flyのブログ -57ページ目

virt_flyのブログ

フライトシミュレーターソフトのFlightGearで仮想飛行を楽しむブログです。

↑MicJackでスマホがIchigoJamのワイヤレスキーボードに

IchigoJamを操るのに仮想キーボードが便利

首尾よくいったかはなはだ心もとないのですが、MixJuice互換ボード一応インストールできたので、MicJackを使ってみることにしました。

 

 
  ↑スマホでIchigoJamを操作

Miconoさんの手になるMicJackはMixJuice上位互換ということで、MixJuiceのコマンドに加えて独自のコマンドを持つ他、仮想キーボードやホーム機能などを備えています。

 

KidspodやIchigonQuestに関わる機能もあるようですが、これらを持ち合わせていなければしょうがないので、特色はやはり仮想キーボードでしょう。

 

IchigoJamにつなぐキーボードの代わりに、スマートフォンのディスプレイ画面に表示されるソフトキーボードが、いわばワイヤレスキーボードとなるわけです。

 

IchigoJamを持って外出したい時に問題になるのは、キーボードです。しかもPS/2もしくはUSBと兼用のインタフェースを持つものでないと困りますから大変。スマホが代用になるのであれば、別途キーボードを持ち歩かなくて済み助かります。

 

使い方

 

MixJuice互換ボードを使用する場合には、接続方法の違いにより異なる仮想キーボードが使えるようなのですが、私の場合は一つのみ、以下の場合でのみ使うことができました。

 

①MicJackをインストールしたMixjuice互換ボードとIchigoJamとの接続

 

MixJuice互換ボード側  IchigoJam側
RXD TXD
TXD RXD
GND GND
3.3V 3.3V

 

②Wi-Fi検索、接続

 

IchigoJamにつないだキーボードから、以下のように入力し、Wi-Fiアクセスポイントを探し、接続します。

 

?”MJ APL を実行…Wi-Fiアクセスポイントの一覧が表示されます。

?”MJ APC <SSID> <PASSWORD> と目的のアクセスポイントのSSID、パスワードを入力して実行…Wi-Fiアクセスポイント接続します。

 

この時正常にWi-Fiに接続すると、MicJack(MixJuiceボード)に割り当てられたIPアドレス

が表示されます。

 

※一度接続するとMicJackはこれを記憶していて、次回起動時には前回と同じアクセスポイントに自動接続されます。したがって、同じアクセスポイントに接続する限りは、この手順が省け、キーボードをつないでおく必要もなくなります。

 

 
  ↑スマホ上の操作画面

③スマホあるいはPCからの操作

 

IchigoJam(MicJack)がWi-Fiに接続した後は、同じネットワーク上のスマートフォンあるいはパソコンでWEBブラウザから、

http://<IchigoJam(MicJack)IPアドレス>/(注1)と入力して開きます。

 

画像のような操作画面が表示されたら、[UART](注2)を押し、次いで[S]を押します。

 

スマホあるいはパソコンの画面にキーボードが現れます。

 

これで後は、仮想キーボードからコマンドを打ち込み、BASICプログラムを実行することができるようになります。

 

なお、操作画面では仮想キーボードを使わなくても、コマンドを入力しIchigoJamやMiccackにコマンドが送れるようになっています。

 

今回使用できた仮想キーボードのUARTモードは、パソコンとIchigoJamをUSBシリアル変換モジュールでつないだ時の無線版のように思えます。やはりゲームでのキー操作には無理があるようで、かなり反応が遅いのが実際です。ただし、IJUtilities使用時のモニター画面表示とは違って、例えばブロック崩しゲームでは表示の異常は見られませんでした。

 

これなら、使えるレベルにあると言えそうです。

 

 

注1)http://micjack.local/でも操作画面が開くとされますが、当方では動かせていません。

注2)UARTの他、KBDとIJKBDの計3つのモードがありますが、KBDはIchigoLatte、IchigonQuest向けで使えません。IchigoJam BASIC用のIJKBDですが、GPIO13、GPIO16とKBD1、KBD2端子をつないだものの、キーを押すたびにMicJackの起動画面が繰り返し表示され、実質入力ができませんでした。

↑aitendoのESP-WROOM-2モジュールDIP化基板は、秋月電子のものとは違いモジュールが交換できて良いのですが、2列のピン配置間の幅が広くピンの配列も真逆で、出来合いのボードに合わせるのは厄介です。

勘違いしてた!?

前回のブログでは、MixJuice互換ボードに載せた新たなESP-WROOM-2モジュールへのファームウエアの書き込みができないと書きました。

 

ブレッドボードやブレッドボード配線パターンタイプ基板のMixJuice互換機に加え、新たに作製したESPモジュール実験ボードでも、あるいはUSBシリアル変換モジュールをあれこれ換えても、さらにIJUtilitiesばかりかFLASH_DOWNLOAD_TOOLS(注参照)を使ってしても、書き込めませんでした。ここまでくるともう原因はさっぱりわかりません。

 

そんな時、IJUtilitiesを使いブレッドボード配線パターンタイプ基板のMixJuice互換機で、ファームウエアの書き込みが進行していたのです。

 

これまでIJUtilitiesを使ったIchigoJamのファームウエアの書き換えでは、ターミナルセンターでポートを指定して接続を実行した上で書き換えを行っていましたから、MixJuiceでも同様にした上でESP Tool Utilityによりファームウエアを書き込もうとしていたわけですが、どうやらそこに勘違いがあったようです。

 

何度試みてもポートの接続がすぐ切断されてしまうのですが、それをスイッチを押すタイミングでしょっちゅうおきるエラーと同じように、また失敗したものと思い込んでいました。ところが気がつくとファームウエアの書き込みが進んでいて、画像のような完了画面が表示されたのです。

 

 

IchigoJamに接続し電源を入れると、いつもの起動画面が現れ一安心です。

 

後からIJUtilitiesのマニュアルを見ると、ESP Tool Utilityには触れられていてもターミナルセンターは出てきませんから、間違いありません。

 

LEDが点灯しない

 

しかし、以前紹介したWBGTをクライアントサービスを利用してWEB上でゲージ表示させる実験を、新たなESP-WROOM-2モジュールを載せたMixJuice互換ボードで試みたところ、アクセスLEDと受信LEDが点かないではありませんか。

 

これは不愉快ですから、そんなことならいっそうMixjuice上位互換のMicJackに換えてやろうと。画像は、MicJackへ書き換え後の最初の起動画面の様子です。

 

 

MicJackでも、WBGTのゲージ表示を試して見ると、今度は受信LEDだけが点灯しませんでした。WBGTのゲージ表示には問題は見られず、他の方のサイトを訪れた際は受信LEDも点灯していますから、大丈夫…かな?

 

念のため今一度MixJuiceに戻してWBGTのゲージ表示を実行したところ、やはりアクセスと受信のLEDが点きません。アクセスLEDが点灯しないだけに、データは送信されておらずWBGTのゲージ表示はまったく動きません。

 

どこかに不具合がありそうですが、わかりません。様子見するしかなさそうです。

 

注)FLASH_DOWNLOAD_TOOLSは、v2.4ないしはv2.3でないとESP-WROOM-2モジュールに対応していないのだとか。ダウンロードしようとEspressif Systemsのホームページを見てもみあたりません。探したところ次のURLを見つけました。

https://bbs.espressif.com/viewtopic.php?f=57&t=433

↑ブレッドボード配線パターンタイプ基板の上に作り直したMixJuice互換機

 

ちょこちょことトラブルが続きます。

仕事では、eラーニング続き、今度はコロナのせいでライブ配信の具体化を迫られることになりました。画質やカクつきを考えるとZoomやMeetではだめとライブ配信にしたものの、ネットワーク環境の悪さに足を引っ張られ四苦八苦させられているというのに…。

 

そんな折、自宅ではVLCメディアプレイヤーが起動しなくなったり、ブレッドボード上の回路をそのままブレッドボード配線パターンタイプの基板に再現したのになかなか動かない、今の今まで動いていたブレッドボード上の回路なのにLEDが点灯しなくなる、さらにファームウエアの書き換えが突然できなくなるに至って、すっかり嫌気が差してしまいました。

 

$HOME/.config/vlc/を削除で回復

 

IchigoJamのBASICプログラム実行画面を綺麗に残すには、VLCでキャプチャーするのが一番。そのVLCが、突然なぜか起動を試みても画面にウインドウが開かないのですから、イラッとします。

 

UbuntuのHOMEディレクトリ下の隠しディレクトリ.configにある/vlc以下を削除することで、回復できたのでよしとしましょう。

 

ハンダ付けのチェック・やり直しで可動

 

ブレッドボード上に作製したMixJuice互換機が動いたので、パーツがとれてしまわないようにブレッドボード配線パターンタイプの基板上に回路を再現し、ハンダ付けしたのですが、さっぱり動きません。

 

例によって何回も配線やハンダ付け箇所をチェックしましたが、目が悪すぎてハンダ付けの不良箇所がなかなか見つけられませんでした。ようやくランドが半分露出したままの箇所を見つけてはハンダ付けのやり直しで動くようになりました。ハンダ付けの腕が劣るからでしょうが、載りの悪い基板には苦労します。

 

画像が、ブレッドボード配線パターンタイプの基板上に再現したMixJuice互換ボード。タクトスイッチの色まで手本にした国野亘氏をマネていますが、LEDは同じにはできませんでした。デカすぎ。ESP-WROOM-02モジュールも再利用のため、ICソケットを利用。

 

ブレッドボード上に回路を作製するのはバクチ!?

 

念のため、ブレッドボード上に作成したMixJuice互換機を残していたのですが、気がつくとLED点かなくなっていました。何もいじってはいませんから、疑われるのはブレッドボード。劣化ってなこともあるのかしれませんが、ブレッドボードの接触不良あたりか?

 

実際のところ、ESP-WROOM-02モジュールをボードに強く押し込むと、LEDはまた点灯しだしました。しかし、またしばらくすると今度は別なLEDが点かなくなって、同じことの繰り返しになっています。

 

ブレッドボードはハンダ付けすることなく回路が組め、試してみることが簡単にできて便利なのですが、こういうことがあると、バクチのような気分がしてきます。回路は正しいけれど動く動かないは時の運!

 

動いた場合は、また別な問題があるにしても、使い続けるのであればブレッドボード配線パターンタイプの基板上にハンダ付けして回路を作り直すのが無難なようです。

 

メモは詳細に残すべし

 

MixJuice互換ボードの作製では失敗するかもと、その際は他の実験を試みるつもりで、新たにESP-WROOM-02モジュールを買い足していました。そこで、MicJackを書き込むのよいかもと思ったりしていたのですが、何とこれまで使えていたIJUtilitiesでファームウエアの書き換えができないではありませんか。

 

ESP-WROOM-02モジュールの書き換えは、この間何回か実行し、最後はMixJuiceのファームウエアに書き換えをしていました。慣れも出てきて、何かやるべきことをし忘れているのかも。残念ながら、メモを残さなかったために点検もできません。せめて、メモは残すこと、できれば詳細に記録を残せば、同じようなところで悩むことは少なくなることでしょう。

 

ちょこちょこっとしたトラブルですが、立て続けとなると少々嫌気が差してきます。ファームウエアの書き換え問題については、今しばらく時間が必要です。