今回はHit Boxのボタンを光らせます。諸々の都合上、Hit Boxの基盤をUFBに換装 していることが前提となります。
必要なもの
- Kaimana Mini LED Driver & PCB 8 Button Kit
- 光らせるためのキットです。作るための学習コストや手間を省くために既製品を使います
- 海外発送かつ購入時は新型コロナウイルスの影響もあって届くのに1ヶ月以上かかりましたParadise Kaimana Mini LED Driver & PCB 8 Button Kit
The Kaimana LED Controller is a powerful tool for those looking to get the most out of their custom arcade stick or cabinet! Based on the infinitely flexible Arduino, this board can do just about anything you can imagine. Because it uses the extremely simple to learn Arduino programming language, this board opens the g
paradisearcadeshop.com
- Kaimana J2 RGB LED x 4
- Hit Boxは移動、打撃用ボタンが合計12個あるので、セットで足りない分を追加で購入します
- StartやHomeボタンも光らせたい場合はさらに追加で必要ですParadise Kaimana J2 RGB LED
Paradise Kaimana J2 makes LED wiring even easier with simple fool proof wiring. Pair with our Kaimana Mini or Kameleon LED Driver PCBs and the possibilities are endless. These undermount indexable RGB LEDs work with simple daisy chain connections to create amazing light shows in your fight sticks. Impress your friend
paradisearcadeshop.com
- Kaimana J2 3" Wire Harness x 4
- LEDを足した分ハーネスも追加で必要です
- 売ってるものは3インチが1番短いですが、もっと短くてもよくて、その場合PHコネクタの3Pと4Pで作成できますParadise Kaimana J2 3" Wire Harness
3" Wire Harness used to connect the Kaimana J2 led pcb's. Installation is a snap, all you do is plug 'em in! Perfect for connecting LEDS on action buttons. Use these for your Data, Power and Ground connection between your Kaimana lighting elements. Just pick the size that fits your panel! *Note, these wires will not w
paradisearcadeshop.com
- 三和 or セイミツのクリアボタン
- Kaimana J2 RGB LEDは三和、セイミツ、Jyueeangの30mmか24mmのボタンに対応しているので、それらのボタンが必要です
- 後述しますが、LEDの色を変えて光らせたい場合は透明なクリアボタン(三和ならクリア白)を選ぶほうがよいです【クリア】三和電子 ハメ込み式クリア押しボタン24φ (スタート・セレクトボタンサイズ)【OBSC-24】-ATTASA SHOP(アタッサショップ)
主にビデオゲームのスタート・セレクトボタンとして使われている OBSF-24 のクリアタイプです。 ボタンのケースとキャップ(中央の指で押す部分)を取り外し、中にあるプレートに印刷やシールを貼ることができます。 ※メインボタンは OBSF-30 です。 ビデオゲームでは高速で押され、なおかつ耐久性も求められます。 その様な過酷な条件に耐えることのできる押しボタンです。 SW-68というコストパフォーマンスに優れたスイッチを使用しています。 取付穴寸法:φ24±0.1 取付板厚 :3.7MAX 使用SW :SW-68 色 型番 クリア赤 OBSC-24-CR クリア黄 OBSC-24-CY クリア緑 OBSC-24-CG クリア青 OBSC-24-CB クリア紫 OBSC-24-CVI クリア白 OBSC-24-CW クリアスモーク OBSC-24-CS 業務用になりますので取扱説明書・パッケージは御座いません。 商品特性をよく理解できるお客様のみご購入下さい。 当店では取り付けのサポート等は一切行っておりません。
attasa.shop【クリア】三和電子 ハメ込み式押しボタン30φ (ビデオゲームボタンサイズ) OBSC-30-】-ATTASA SHOP(アタッサショップ)主にビデオゲームの押しボタンとして使われている OBSF-30 のクリアタイプです。 ボタンのケースとキャップ(中央の指で押す部分)を取り外し、中にあるプレートに印刷やシールを貼ることができます。 ※スタート、セレクト用ボタンは OBSF-24 です。 ビデオゲームでは高速で押され、なおかつ耐久性も求められます。 その様な過酷な条件に耐えることのできる押しボタンです。 SW-68というコストパフォーマンスに優れたスイッチを使用しています。 取付穴寸法:φ30±0.1 取付板厚 :3.7MAX 使用SW :SW-68 色 型番 クリア赤 OBSC-30-CR クリア黄 OBSC-30-CY クリア緑 OBSC-30-CG クリア青 OBSC-30-CB クリア紫 OBSC-30-CVI クリア白 OBSC-30-CW クリアスモーク OBSC-30-CS 業務用になりますので取扱説明書・パッケージは御座いません。 商品特性をよく理解できるお客様のみご購入下さい。 当店では取り付けのサポート等は一切行っておりません。
attasa.shop
- Micro USBケーブル
- Kaimana Mini LED DriverとPCを繋いでプログラムを書き込んだりするのに使います
組み立て
まずはJ2 RGB LEDをハーネスで繋いでいきます。ハーネスのコネクタは片方が3P、もう片方が4Pで、J2 RGB LED側もそうなっているので間違ったほうに繋ぐことはないと思います。
すべて繋げたらKaimana Mini LED Driver本体にもハーネスで繋ぎます。
ここまでできたら1度本体とPCをMicro USBで繋いでみます。PCと繋ぐとUSB給電でLEDが光り始めます。
光ることを確認したら、Hit Box側のUFBに繋げましょう。UFBのJ9にKaimana本体を挿します。
J9の位置は https://www.brookaccessory.com/detail/06960737/#cont10 で確認できます。
もしJ9をBrookのハーネスの接続に使ってたりする場合、ボタンの結線をJ3を使うようにやり直すなりする必要があります。
ボタンの再結線については前回の記事を参考にしてください。
Arduino用開発環境の構築
まずはArduino用の開発環境を整えます。
自分はarduino-cliを使いましたのでこれを前提に話を進めます。と言っても大体下記のGetting Startedの通りです。
https://arduino.github.io/arduino-cli/latest/getting-started/
Arduino IDE使う場合は適当にググったらいっぱい記事が出てくると思うのでそちらを参考にしてください。
まずは設定を作成して、
% arduino-cli config init
利用可能なプラットフォームなどの情報を更新します。
% arduino-cli core update-index
KaimanaとPCをMicro USBで繋げて下記コマンドを叩くと認識されていることがわかります。
% arduino-cli board list
Port Type Board Name FQBN Core
/dev/ttyACM0 Serial Port (USB) Arduino Leonardo arduino:avr:leonardo arduino:avr
/dev/ttyS0 Serial Port Unknown
/dev/ttyS4 Serial Port Unknown
自分の環境ではリストの1番上がKaimanaですね。表示されるPort(ここでは/dev/ttyACM0
)とFQBN(ここではarduino:avr:leonardo
)はプログラムのコンパイルとKaiamaに書き込むときに必要になります。
Coreに arduino:avr
が必要なのでインストールします。
% arduino-cli core install arduino:avr
% arduino-cli core list
ID Installed Latest Name
arduino:avr 1.8.3 1.8.3 Arduino AVR Boards
arduino-cli
を使う環境構築はこれで終わりです。次は実際にLEDを光らせるためのプログラムを書き込みます。
LEDを光らせるためのプログラム
元のプログラムからHit Boxに対応して色々と自分好みに書き直したものをGitHubに置いたのでこれを使います。
https://github.com/naoina/kaimana
arduino-cli compile --fqbn arduino:avr:leonardo hitbox
--fqbn
オプションには arduino-cli board list
で表示されるFQBNを指定します。
% arduino-cli board list
Port Type Board Name FQBN Core
/dev/ttyACM0 Serial Port (USB) Arduino Leonardo arduino:avr:leonardo arduino:avr
/dev/ttyS0 Serial Port Unknown
/dev/ttyS4 Serial Port Unknown
コンパイルしたあと、KaimanaとPCをMicro USBで繋げてから下記コマンドで書き込みます。
arduino-cli upload -p /dev/ttyACM0 --fqbn arduino:avr:leonardo hitbox
-p
オプションに指定する /dev/ttyACM0
も arduino-cli board list
で表示されるPortを指定します。
正常に終了したら動作確認をしましょう。 https://github.com/naoina/kaimana を使っている場合、スタートボタンを約3秒長押しすると全部のボタンが光ってLEDがONになります。
動作確認できたらJ2 RGB LEDをボタンに取り付けます。取り付けはファストン端子を外してJ2 RGB LEDを置き、ファストン端子を挿し直します。
J2 RGB LEDの取り付けは向きがあります。無理なくボタンにハマる向きが正しいです。
取り付けるといってもJ2 RGB LEDが固定できるようになっていないので、ボタンに置いておく感じになります。
ここまでできたらフタを締めて再び動作確認しましょう。
LEDの設定をする
ボタンを押すとLEDが光る状態にします。もし光らない場合はスタートボタンを約3秒長押しして光る状態にしてください。
このままだと、おそらくボタンとLEDの対応がバラバラだと思いますので、正しくなるよう設定します。
ボタンとLEDの対応付け設定
ボタンを押すとLEDが光る状態で、HOME/PS/XBボタン(Hit Boxだと側面のボタンの右から3番目)を3秒以上長押しすると、すべてのLEDが点滅します。
次に、押したボタンと光るLEDの対応が正しくなるまで、すべてのボタンに対して下記の手順を繰り返します。
- 任意のボタンを押す
- どこかのボタンのLEDが光るのでそこを押す
同じボタンを何回も押さないといけないこともあります。
設定が完了したら、HOME/PS/XBボタンを3秒以上長押しして設定を保存します。
LEDの色設定
ボタンを押すとLEDが光る状態で、SELECT/SHARE/BACKボタン(Hit Boxだと側面のボタンの右から2番目)を3秒以上長押しすると、すべてのLEDが点灯し、LEDの設定モードになります。
次に色を設定したいボタンを押します。このとき、押した(選択した)ボタンによって操作するボタンが変わります。
攻撃ボタン(P
かK
)を選択した場合
RGBの値のうち、左ボタンがR、下ボタンがG、右ボタンがBを、それぞれ15増やす動作になります。
移動ボタン(上下左右)を選択した場合
RGBの値のうち、P1
か K1
ボタンがR、P2
か K2
ボタンがG、P3
か K3
ボタンがBを、それぞれ15増やす動作になります。
RGBの値はそれぞれ0から255となっていて、255を超えるとまた0から始まります。
スタートボタンを押すと色を決定し、設定するLEDを選択するモードに戻ります。
ちなみに、色の付いたクリアボタンの場合、何色に光らせてもほぼボタンの色にしかならないので白でいいと思います。三和のクリア白とかだとクリア部分が完全に透明で、LEDの色がちゃんと見えるため色を変えて楽しめます。
すべて設定し終わったら、LEDを選択するモード(すべてのLEDが光っている状態)でセレクトボタンを3秒以上長押しすれば設定が保存されます。
まとめ
ここまでやるとHit Boxはガワだけしか残ってないんですが、それは言わない約束です。