2021年8月16日月曜日

IONA-USが(製造的な意味で)できるまで

なんとなく製作記事です。

KVClab.さんでの販売が始まりましたが、どんな過程で製造してるのか簡単に紹介。前作のIONA-JS以上に部品が細かくなっているので作るのも大変。テスト含めて色々と工夫してます。

一番最初はまず裏面のmicro USB端子から始めます。このハンダ付けが一番難しく、また電源なのでショートしてたら大惨事なので、このようにテストボードに繋いでショートしてないか、GNDと電源が正しく繋がっているか、テスターで確認しています。

次のステップではマイコンと周辺のチップ抵抗、チップコンデンサをハンダ付けし、JVSのコネクタを実装します。抵抗やコンデンサはこの時点で必要ないものも含まれています。というのも、コネクタを付けてしまうと後からハンダ付けするのが難しくなってしまうからですね。

続けて、ファームウェアの書き込み。ここでPCと接続し、サポートページにあるファームウェア更新ページを使って出荷用のファームウェアを書き込みます。ファームウェアを書き込むまではサービスボタンを押さずに電源を入れてもファームウェア更新モードになるため、ボタンを実装している必要はありません。これによりマイコンの基本的な動作確認とJVSコネクタ、電源コネクタのテストができた事になります。

次にLEDの実装。電源を入れて点滅すればファームウェアは無事に起動しています。あとLEDを逆向きに挿してないことの確認にも(笑)

ここまで来たら、あとはボタンとUSBコネクタのハンダ付けをして完成させます。

最後に最終動作テスト。右側の白い基板がIONA-USのテスト用に作った基板で、JVSホストの機能を持つUSBデバイスです。PCに繋ぐと2つのゲームパッドとして認識され、JVS側に繋いだI/Oからの入力を反映させる事ができます。これにより、JVSバスで正しく通信できる事、テストとサービスボタンが正しく反応する事が確認できます。またUSBコネクタにゲームパッドをそれぞれ繋げ、入力が正しく伝達する事を確認します。対応パッドを繋げばLEDが点滅するのでUSBバスの動作は確認できるし、ボタンについても同時押し2回で保存データの初期化を行えばLEDが点滅するため、実はこのボードがなくても確認はできるんですけど。やっぱりあると色々と便利で開発効率があがります。

IONA-JSの場合は最後のテストがもう少し大変で。ボタン毎に断線・ショートがないか確認しなければならないため、このフェーズでボタンを1つずつ押して個別に反応するか調べなければなりません。

実は最初の頃は1枚1枚naomiとJAMMA環境に繋ぎ、ボタンを1つずつ確認をしていましたが、あまりにも面倒なので途中でこのボードを作りました。このボードはJAMMAの入力をマイコンから制御し、右側に出ているJVSホストを使い、JAMMAからの入力がJVSを通して正しく返ってくるか確認する事ができます。これを使って自動的に個別のパターンを送ってテストしています。テストに失敗したらどのピンに異常があるかわかるので、該当ピンを虫眼鏡で見ると浮いてたりブリッジしてたりするので修正するって感じです。だいぶ手間が減りました。最後にnaomiに繋いで認識されるかだけは確認しています。これはVer 1系のボードで本番環境だと電源との相性なのか、クロックがうまく入らずに動作しないケースが稀にあったためです。Ver 2系のマイコンは内蔵クロックで動くため、この辺の心配はなさそうです。あと最近はテストボードでSENSE信号の電圧も測定するようにしているので、その辺も相性問題が出そうな個体を事前に識別するのに役立ってるかもしれません。

まぁ、そんなわけで、ありがたいことに同人ハードとしては結構な人気商品になりました。アーケード環境維持のために少しでも役立っていれば嬉しいです。

おまけ:筐体を置く場所もなく今までDYIでアーケード環境を作ってきた結果生まれてきた同人ハードでしたが、新居を構えるに際し、ついに筐体を購入しました。シューティング好きという事もあり、モニタの回転が比較的簡単にできるイーグレット2です。なかなか中古市場にも出てこないため、引っ越しまでずっと張り付いてないとかなーって思ってましたが、探し始めてすぐ「近日入荷」のお知らせを見つけ、連絡して契約成立。今はまだ新居に近い妻の実家に置いてありますが、来年春には新居も完成し、自分の仕事部屋に基板格納庫とともに設置されます。楽しみ:)



0 件のコメント: