Show page source of ギタコン試作1 #110272

== ギタコンの自作 試作1

環境構築をしながら、3つのレーンボタン、1つのピックボタンが付いたUSBコントローラーを自作します。
環境構築が若干面倒ですが、USBコントローラの自作そのものは「とても簡単」だということはお分かりいただけるはずです。

[[PageOutline(start=3)]]

=== 試作1で使うもの一覧

合計で、3500円+発送費用くらいです。
||名称||値段||(参考)秋月電子通商での通販コード||
||Arduino Micro x1 [[Thumb(arduino_micro.jpg, size=256x100)]] ||2800円程度||[http://akizukidenshi.com/catalog/g/gM-08286/ M-08286]||
||USBケーブル(TypeAオス - microオス) x1[[br]]PCとArduino Microの接続用|| 100円程度||[http://akizukidenshi.com/catalog/g/gC-07607/ C-07607]||
||ジャンプワイヤ(オス-オス) x9 [[Thumb(IMG_3627_.jpg, size=90x145)]]||200円程度||[http://akizukidenshi.com/catalog/g/gC-05371/ C-05371]||
||タクトスイッチ x4 [[Thumb(IMG_3621_.jpg, size=180x154)]] ||40円程度|| [http://akizukidenshi.com/catalog/g/gP-03647/ P-03647(黒色)][[br]] [http://akizukidenshi.com/catalog/g/gP-03646/ P-03646(赤色)]   ||
||ブレッドボード(長いもの) x1 [[Thumb(IMG_3633_.jpg, size=240x89)]]||300円程度||[http://akizukidenshi.com/catalog/g/gP-09257// P-09257 ]||

=== 注意事項
 * 以下、Windows10 Pro x64 RS4 と、純正のArduino Microの組み合わせで動作確認しています。Arduinoは、他の互換品でも使えるはずですが、よく分からない内は、お高いのを我慢して純正のArduino Micro(ATmega32u4)を使ってください。
 * Arduino Micro を使います。よくあるArduino UNO(ATmega328)と間違えないでください。UNOを使うと、USBデバイスを作成するのがとても大変になります。


=== 環境構築 (Arduino IDEの入手とインストール)
(以下、2018年5月1日時点での情報です。webサイトやアプリのインストーラーは英語表示ですが、アプリそのものは日本語UIなので安心してください)

    1. https://www.arduino.cc/ を開き、上にあるSOFTWARE、DOWNLOADSを順にクリックする。もしこのメニューがなければ、しばらくすると画面右上に現れる[三]アイコン(ハンバーガーアイコン)をクリックして、SOFTWARE, DOWNLOADSを順にクリックする。[[Thumb(arduino-site-001_.png, size=320x323, caption=Arduino.ccのサイト。)]]
    2. 上から2番目のところにある、Download the Arduino IDEのところの、Windows Installer, for Windows XP and up をクリックする (慣れている人なら、Windows ZIP file for non admnin install でもよいと思いますが、ここでは、インストーラを使うパターンでの説明にしています)。なお、"Windows app"や、ARDUINO WEB EDITORでは動作未確認です。[[Thumb(arduino-site-002_.png, size=320x323, caption=Arduino.IDEのダウンロードリンク。)]]
    3. 寄付を求める画面が出ます。もしも寄付なしでダウンロードするのならば、右下のCONTRIBUTE&DOWNLOADの左にあるJUST DOWNLOADをクリックします。[[Thumb(arduino-site-003_.png, size=320x323, caption=寄付なしの場合のダウンロードリンク。)]]
    4. 2018年5月1日時点では、arduino-1.8.5-windows.exe がダウンロードできました。次に、ダウンロードが終わったら、これをダブルクリックしてインストールします。
    5. UACダイアログが出るので「はい」をクリック。
    6. セットアップ画面が出るので"I Agree"をクリック。[[Thumb(arduino-ide-005_.png, size=320x220, caption=Arduino IDEのインストール画面。)]]
    12. インストールするファイルの選択が出るので、全部チェックが入っていることを確認して"Next >"をクリック。
    13. インストール先のフォルダを選んで"Install"をクリック。
    14. しばらく待つと、インストールの終盤で「このデバイスソフトウェアをインストールしますか?」とドライバのインストール画面が出るので、「インストール」をクリック。都合3回ほどこのようなダイアログが現れるので、都度「インストール」をクリックします。[[Thumb(arduino-ide-009_.png, size=320x134, caption=Arduinoドライバのインストール画面。)]]
    15. 最後にインストールが完了して"Completed"と出るので、Closeをクリック。これで、Arduino IDEと、Arduino Leonardo用のドライバのインストールが完了しました。

なお、Arduino IDEのインストールは完了しましたが、ここではまだ、このアプリを起動しません。もう少し準備を進めてから、Arduino IDEを起動します。

=== PCとArduino Microの接続確認
Arduino MicroとPCを、USBケーブルで接続して、PCがArduino Microを認識することを確認します。

接続後にデバイスマネージャーを開いて(スタートボタンを右クリックして、デバイスマネージャーをクリック)、「ポート (COM と LPT)」のところに"Arduino Micro (COM4)"などと出てくるようならば、ドライバが正しくインストールされ、Arduino Microの認識に成功しています。
[[Thumb(arduino-micro_devicemanager.png, size=150x227, caption=Arduino MicroがPCに正しく認識されている図。(COM4などの番号は、環境によって異なります))]]

もし出てこなければ、とりあえずUSBケーブルを変えてみてください。(気付かずに充電専用のケーブルを使ってしまうことがよくあります。必ず通信用(または充電+通信用)のケーブルを使うこと)。それでもだめなら、お手数ですがぐぐってトラブルシュートしてください。

ちなみに私の場合は、ケーブルの交換だけではダメでした。私がArduino MicroではなくArduino Leonardoを使っていた時の話になりますが、私のArduino Leonardoには既に[https://blog.gimx.fr/ GIMX]のプログラムを書き込み済みだったため、ポートが認識されない(Arduino LeonardoがArduinoとしてはUSBデバイス見えしない)状態でした。しかしUSB接続した後にリセットボタンを連打すると数秒間ポートが認識される状態になったので、その隙に空のプログラム(ArduinoのIDEを起動して最初に表示される何もしないプログラム)をArduino Leonardoに書き込むことで、無事認識するようになりました。

=== Joystickライブラリの入手とインストール (Arduino IDEへの組み込み)
Arduino Microを、「USB接続のジョイスティック(ジョイパッド)」に仕立てるためのライブラリを入手し、Arduino IDEに組み込みます。

 1. https://github.com/MHeironimus/ArduinoJoystickLibrary から、ライブラリをzipでダウンロードして、zipファイルをあらかじめ展開しておきます。[[br]]zipの展開を忘れないこと。(後の手順を読むとzipの展開が不要のように見えますが、必須手順です。)[[br]][[Thumb(arduino-ide-021_.png, size=480x365, caption=ArduinoJoystickLibraryのダウンロード。)]]
 2. ここでようやく、Arduino IDEを起動します。(スタートメニューに登録された、「Arduino」を起動します)[[br]]なお初回起動時には、Javaの通信許可を求めるダイアログが表示される場合があります。この時は「アクセスを許可する」をクリックします。[[Thumb(arduino-ide-011_.png, size=320x226, caption=Arduino IDEの初回起動時に現れる場合がある、通信許可の画面。)]][[Thumb(arduino-ide-012_.png, size=320x326, caption=Arduino IDEの起動直後の画面。)]]
 3. 「スケッチ」 - 「ライブラリをインクルード」 - 「.ZIP形式のライブラリをインストール...」をクリックして、1.で展開しておいたフォルダをたどって 、ArduinoJoystickLibrary-master/ArduinoJoystickLibrary-master/Joystick/ フォルダを選択して、「開く」をクリック。
 4. 「ライブラリが追加されました。「ライブラリをインクルード」メニューを確認してください。」が出れば、ライブラリの組み込みに成功しています。

なお、この作業の際に、「ボードのアップデートがあります」、「ライブラリにアップデートがあります」などと出てくることがあるが、対応方法についての説明は、ここでは省略します。(気になる場合は、手探りで操作してアップデートしてください)

ここまで終わったら、Arduino IDEを一旦終了してください。

=== Arduino Microへの、ジョイパッドプログラムの書き込み
Joystick Libraryに付属しているサンプルプログラムを「そのまま」使って、ギタコンの制御プログラムにします。

 0. Arduino Micro を、PCにUSBで接続しておきます。その際に、デバイスマネージャー上でポート番号が何番になっているかを控えておきます。
 1. (ユーザー名)/Documents/Arduino/libraries/Joystick/examples/JoystickButton/JoystickButton.ino をダブルクリックする。しばらく待つと、Arduino IDEが開かれ、JoystickButtonというスケッチ(Arduinoでは、Arduinoに書き込むプログラムのことを「スケッチ」と呼びます)が読み込まれた状態になっています。
 2. 「ツール」-「ボード」- "Arduino/Genuino Micro" とクリックします。
 3. 「ツール」-「シリアルポート」「COM4 (Arduino Micro)」 とクリックします。(ポート番号は環境により異なります)
 4. 「検証」アイコンをクリックします (「ファイル」メニュー直下にある、チェックマークのアイコン) 。「スケッチをコンパイルしています...」と表示されて、しばらく待つと「コンパイルが完了しました。」と表示されます。もしエラーが発生した場合は、上記2の手順を実施しているか再確認してください。
 5. 「マイコンボードに書き込む」アイコンをクリックします (「検証」アイコンの右隣にある、右矢印のアイコン)。
 6.  初回の書き込みが成功すると、Arduino MicroというデバイスがWindowsに新規に認識されます。

これで、Arduino Microへのギタコンプログラム(試作1)の書き込みが完了しました。

書き込みに失敗する場合は、書き込みが始まるタイミングで、Arduino Microについているリセットボタンを2連打してください。これで書き込みが進むようになるはずです。

なお、書き込みが完了するたびに、COMポートの番号が変わるようです。そのため、書き込みが終わるたびに「ツール」-「シリアルポート」を設定し直してください。

=== ギタコンの配線をする
 1. 4つのタクトスイッチと、Arduino Microの9~12ピンを接続する (どのボタンにどのピンをつないでもよいです。どうせDTXManiaのキーコンフィグで吸収されるので)
 2. タクトスイッチのもう片方の端子は、GNDに接続する

たったこれだけです。以下に、配線図と、実際につないだ写真を載せます。

[[Thumb(gtcon-01_micro_circuit.png, size=640x272, caption=配線図。黒色の線がGND接続の線で、それ以外の色の線が、Arduino Microの9~12ピンへの接続です。図をクリックすると拡大表示します。)]]
[[Thumb(gtcon-01_micro.jpg, size=256x150, caption=ちょっとわかりにくいですが、配線図の通りに実際に接続してみた図。)]]

「どうしてこれで配線ができているのか、分からない」という方は、[http://denshi-kousaku.nazotoki-k.com/kiso/eic-801.htm ブレッドボードの内部配線]や、[https://inagidenshi.shop-pro.jp/?mode=f5 タクトスイッチの内部配線]について確認してみてください。(どちらもとても簡単です。)

=== 実際に使ってみる

Arduino MicroがPCに接続されていることを確認して、DTXManiaを起動します、そして、ギターのRGB, Pickの入力のコンフィグをすることで、DTXManiaでこのギタコン(というにはあまりに武骨なデザインですが)を使うことができます。

ただし、キーアサインの画面でギタコンのボタンを最初に押した場合に限り、最初の1回だけ、以下のような誤動作をするので注意してください。
  a. Button0~4のいずれかにアサインされるはずがなぜかLEFTにアサインされる
  b. そのあと、上方向の入力がされっぱなしになる
この時、適当なタイミングでEnterを押して、もう一度アサインし直すと、以後はうまくアサインできて、上方向の入力されっぱなしもなくなります。

この問題は、試作2で修正します。

=== まとめ

いかがでしたか ?(まとめサイト調で) 

環境構築はちょっと大変だったと思いますが、環境構築さえできてしまえば、ギタコンの自作そのものはとても簡単にできることがお分かりいただけたと思います。

ここから先は、純粋にギターコントローラーの拡張だけにワクテカすることができます。追加部品とちょっとしたプログラム(スケッチ)の修正、そして筐体加工さえできれば、自分だけのギタコンを好きなように作ることができます。

(筐体加工は大変だと思いますけれどもね。私も、何か簡単な良いやり方がないか、いろいろと試してみます)