May 25, 2018 updates: Privacy Policy

ギタコンの自作 試作1

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

試作1で使うもの一覧

合計で、3500円+発送費用くらいです。

名称値段(参考)秋月電子通商での通販コード
Arduino Leonardo x1 IMG_3625_.jpg 3000円程度M-07384
USBケーブル(TypeAオス - microオス) x1
PCとArduino Leonardoの接続用
100円程度C-07607
ジャンプワイヤ(オス-オス) x9 IMG_3627_.jpg200円程度C-05371
タクトスイッチ x4 IMG_3621_.jpg 40円程度 P-03647(黒色)
ブレッドボード x1 IMG_3633_.jpg300円程度P-09257

注意事項

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

環境構築 (Arduino IDEの入手とインストール)

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

    1. https://www.arduino.cc/ を開き、上にあるSOFTWARE、DOWNLOADSを順にクリックする。もしこのメニューがなければ、しばらくすると画面右上に現れるアイコン(ハンバーガーアイコン)をクリックして、SOFTWARE, DOWNLOADSを順にクリックする。
    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では動作未確認です。
    3. 寄付を求める画面が出ます。もしも寄付なしでダウンロードするのならば、右下のCONTRIBUTE&DOWNLOADの左にあるJUST DOWNLOADをクリックします。
    4. 2018年5月1日時点では、arduino-1.8.5-windows.exe がダウンロードできました。次に、ダウンロードが終わったら、これをダブルクリックしてインストールします。
    5. UACダイアログが出るので「はい」をクリック。
    6. セットアップ画面が出るので"I Agree"をクリック。
    7. インストールするファイルの選択が出るので、全部チェックが入っていることを確認して"Next >"をクリック。
    8. インストール先のフォルダを選んで"Install"をクリック。
    9. しばらく待つと、インストールの終盤で「このデバイスソフトウェアをインストールしますか?」とドライバのインストール画面が出るので、「インストール」をクリック。都合3回ほどこのようなダイアログが現れるので、都度「インストール」をクリックします。
    10. 最後にインストールが完了して"Completed"と出るので、Closeをクリック。これで、Arduino IDEと、Arduino Leonardo用のドライバのインストールが完了しました。

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

PCとArduino Leonardoの接続確認

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

接続後にデバイスマネージャーを開いて(スタートボタンを右クリックして、デバイスマネージャーをクリック)、「ポート (COM と LPT)」のところに"Arduino Leonardo (COM6)"などと出てくるようならば、ドライバが正しくインストールされ、Arduino Leonardoの認識に成功しています。

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

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

Joystickライブラリの入手とインストール (Arduino IDEへの組み込み)

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

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

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

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

Arduino Leonardoへの、ジョイパッドプログラムの書き込み

Joystick Libraryに付属しているサンプルプログラムを「そのまま」使って、ギタコンの制御プログラムにします。

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

これで、Arduino Leonardoへのギタコンプログラムの書き込みが完了しました。

ギタコンの配線をする

  1. 4つのタクトスイッチと、Arduino Leonardoの9~12ピンを接続する
  2. タクトスイッチのもう片方の端子は、GNDに接続する

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

実際に使ってみる

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

ただし、キーアサインの画面でギタコンのボタンを最初に押した場合に限り、最初の1回だけ、以下のような誤動作をするので注意してください。

  1. Button0~4のいずれかにアサインされるはずがなぜかLEFTにアサインされる
  2. そのあと、上方向の入力がされっぱなしになる

この時、適当なタイミングでEnterを押して、もう一度アサインし直すと、以後はうまくアサインできて、上方向の入力されっぱなしもなくなります。

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

まとめ

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

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

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

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