見出し画像

格ゲーをしない人がアケコンを2台自作した話


僕はスマブラ以外まともな格ゲーをやったことがないのですが、アケコンを2台作りました。総額5万円以上使いました。アホですね。

1台目の設計図(完成品は後に載せてます)
2台目

格ゲーを遊ぶにしてはボタンの数が足りなそうですね。サムネイルを見た時点で気づいていた方もいるかもしれませんが、こいつらは格ゲー用ではなく音ゲー用です。

どちらのアケコンも中身はただのUSBキーボードなので、キーボードで遊べる音ゲーは基本何でも遊べるわけですが、僕は主にosu maniaの4kと7kをやってます。4kと7kはそれぞれレーンの数が4つあるモードと7つあるモードです。1レーンにつき1つの指を使って遊びます。

osu mania (左で4kが右7k)

「じゃあボタン7個だけでいいんじゃないの?」と思うかもしれませんが、osu maniaはゲームモードが10kまであるのとシンプルに指が10本あるのでボタンを10個にしました。大は小を兼ねるはずです。2人プレイモードを駆使して18kとかいうものを遊んでいるヤバい人たちもいます。多分指が18本あるんだと思います。

osu mania (左が10kで右が18k、どちらも僕のプレイ画面ではないです)

1台目を作る

ここからはアケコン1台目が完成するまでの経緯と、1台目を作って学んだことを活かして2台目が完成するまでを振り返っていきます。

事の始まりは友人に本物のレバーレスアケコンを借りてosu maniaの7kを試しに遊び始めたときでした。彼はスマブラやスト6が強かったりで、Punk workshopというメーカーのレバーレスアケコンを持っています。

https://punkworkshop.jp/products/minibox?variant=51830291726615
これは借りたやつよりもちょっとモデルが新しいかも?

このアケコンを借りるまでに実は4k用のボタン4つの専用コントローラーも自作していて、その時まで4kしかまともに遊んだことがなかったのですが、アケコンのおかげで「7kもおもろい!」と新しい沼を発見してしまったのです。よくないですね。

以前作った4kコントローラー
左右独立です

というわけで、1台目のアケコンの制作に取り掛かりました。まずは既にアケコンを自作している前例を調べまくって、ある程度集める部品とか何をすればいいかがわかってきたところで、必要そうな部品たちを買い集めます。

まずはボタン。アケコンのボタンといえば三和、みたいなことはいろんなところで見たので、三和のボタンを漁り始めます。普通に買うと高そうなので適当にメルカリで探していると、黒色の直径24mmの静音ボタンが出品されていました。あんまりうるさいのは嫌なので、ちょうどいいところに現れてくれました。しかもピッタリ10個セット。即買いです。

三和 エラストマー静音ボタン24mm OBSFE-24-K ¥3,500

ボタンのストローク(ボタンを押して底に着くまでの距離)は短いほうが好みなので、ストロークを短くする用のゴムみたいなものも追加。これをボタンの中に入れると底が少し高くなって、結果的にストロークが短くなります。

https://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-65UP

三和ボタンをはじめとして、多くのアケコン用ボタンはファストン端子という端子を使って電気的に接続されているっぽいです。One-Off ControllerというところでL字型のファストン端子と絶縁カバーのセットを買いました。ボタン1個につき足は2本あるので、端子は20個あれば足りますね。

https://www.one-cont.com/products/l-faston-terminal-110-40pcs

このアケコンはUSBキーボードとして認識されるように作ります。そのために必要なマイクロコントローラー(マイコン)にはRaspberry Pi Picoを使うことにしました。Picoはこういうことによく使われている印象です。こいつがアケコンの脳みそとなって、どのキーが押されているかを毎秒1000回ぐらいの速度で接続先のパソコンに報告します。結構おしゃべりですね。これもメルカリで安く買いました。

Raspberry Pi Pico 互換品 (USB-C)
純正品ではないです

ArduinoやpicoのやっすいUSB-C互換品あるあるなんですが、USB-CのPower Delivery (PD) プロトコルの一環として必要な最低限の回路が組み込まれておらず、パソコンなどに繋いでも「こいつはまともに電力を受け取る準備ができてないぞ」と勝手に思われた結果、通信するどころか電力を送ってすらくれず動かないという問題がしょっちゅうあります。今回買ったpicoもその程度だろうなーと思っていたのですが、予想的中でした。

こういう時は、パソコンに繋ぐときに一度USB-C以外の端子を挟むと普通に動いてくれます。PDのために必要な導線はUSB-Cにしかついていないので、それをそもそも消してしまうという力技ですね。僕はMacbookを使っていてUSB-Cしか刺さらないので、↓みたいなアホな接続で繋ぐことになりました。

RPI Pico互換品のUSB-Cの穴
    ↓ USB-CからUSB-Aのケーブル
USBハブのUSB-Aの穴
    ↓ ハブから生えているUSB-Cのケーブル
MacbookのUSB-Cの穴

人から聞いた話ですが、同じ問題が一部の安いUSB-Cの充電式電子タバコにもあるっぽいです。が、僕は吸わないので電子タバコの充電事情は詳しくないです。猫は吸いたいです。でも猫アレルギーです。なんでや

さっき登場したファストン端子を使うためには「かしめる」というよくわからん名前の作業が必要で、↓の画像のような圧着ペンチが必要なようです。端子を折り曲げて導線を固定して電気的に繋がるようにすることを「かしめる」というらしいです。

圧着ペンチ+被膜剥き
https://www.amazon.co.jp/dp/B07XYS6RXF
ファストン端子を導線にかしめたところ(僕の写真ではないです)

ワイヤーのボタンの足に繋ぐ側はファストン端子にかしめますが、ワイヤーのpicoに繋ぐ側もこれまた別の端子をかしめる必要があります。こっちにはQIコネクターという別の端子を使うため、別の圧着ペンチが必要です。ということで、今僕の家には今後使う事のないであろう謎ペンチが2種類あります。

QIコネクター用の圧着ペンチ
https://www.amazon.co.jp/dp/B0D4QCMH3C

ここまでボタンやらなんやらの部品を集めてきたわけですが、こいつらを固定する場所がないと意味がありません。アケコン制作で(おそらく)お馴染みの はざいや さんで、アクリル板の天板と底板を注文します。

そもそもアクリル板を注文する前には、板のサイズやボタン配置などを決めておかないといけないわけですが、ちょうどいいボタン配置は結局自分の指を乗せてみないと簡単にわかるものではないです。

そこで僕の3Dプリンターが大活躍します。まずPunk workshopのレバーレスアケコンのボタン配置を説明書のPDFから拝借してきて、これを元にOnshapeでそれっぽい配置を作ります。この配置を3Dプリントできる形に仕上げたら、これを2つプリントして、実際に指を乗せて確かめてみます。

ボタン配置のスケッチ
大層なことをやっていそうに見えますが、全然行き当たりばったりの適当です
3Dプリントするモデル
プリントされたもの

初回のデザインではあまりしっくり来なかったので、数回印刷→調整を繰り返した結果、最終的に↓の画像のボタン配置で作ることに決めました。カッターとかはんだ付け用の作業板に、プリントしたものを両面テープで引っ付けてます。7kのオートプレイを見ながらこれを実際に指で叩いて、しっくり来るかどうかを検証していました。

プリントしたボタン配置を板に貼ったところ

ボタン配置とアケコン本体のサイズ感が大体決まったので、あとはこれを天板と底板の形にしていきます。天板にはボタンをはめ込む穴、板同士を固定するネジを通す穴、picoを固定するネジを通す穴の3種類の穴を開けます。底板は板同士を固定するための穴だけで大丈夫。マイコンはなんとなく底板に固定したくなりますが、そうすると板同士を固定するネジを全部外しても板同士がまだ導線で繋がっている状態になってしまって開けづらいので、マイコンは天板につけます。Punk workshopのアケコンの悪いところはココでした。せっかく磁石式で天板がすぐ外せるのに、実質外せてない。

天板
底板

設計は完成したので、次は板の角から穴の位置までの距離をx軸とy軸でそれぞれ測って、この数字と穴の半径をはざいやの画面にポチポチ入力していきます。この穴とかの距離を測る機能はほとんどのCADソフトについていると思います。手動で全部数字を入れていかないといけないので、めちゃくちゃミスりそうで怖い。JSONで一括入力とかできたらいいのにーとか思いながら頑張って入力しました。えらい

はざいやの加工内容を入力する画面
天板の穴などを入力し終わったところ
底板の穴などを入力し終わったところ

板固定にはM3のネジを使うので直径3mmの穴、pico固定にはM2のネジを使うので直径2mmの穴を開けます。今考えると公差とかのせいで穴のサイズなどが毎回完璧にピッタリである保証はないはずなので、ちょうど3mmとかじゃなくて3.2mmとかにした方が良かったのかも。今回はたまたまうまく行ったみたいです。

図面を指定し終わったら、あとはお金を払って到着を待つのみです。総額¥7,783とありますが、これのうち材料費は¥1,000ちょっとで、残りは全部加工費です。穴を開ければ開けるほど高くなっていきます。何かのなぞなぞみたいですね。

Q: あなをあければあけるけるほどたかくなるものってなーんだ?
A: かこうひ

1ミスの代金が洒落にならない

アクリル板を設計する段階で、板同士はどれぐらい間を空けておく必要があるとか、細かいところも先に考えておいてから雑多な部品を買っていました。板の間の支柱になるスペーサーは、ボタンをはめ込んだ時に底板とちょうど干渉しないぐらいのいい感じの長さのものを選んでます。

またスペーサーとネジが両方金属で、金属同士でアクリル板を挟むのはあんまりよろしくないかなーというフィーリング論によって、ネジまたはスペーサーとアクリルが接する部分にはナイロン(プラスチック)のワッシャーを挟むことにしました。が、多分不要でした。

ギラギラの支柱

アクリル板が届いたので、いよいよ組み立てていきます。手順は簡単で、たったの2ステップで完成です。

ステップ1: アクリル板を受け取る
ステップ2: 残りを作る

組み立てた最初の感想:なんか血管浮き出とるみたいやんけ!!!

「中がちょっと透けて見えた方がおもろいんじゃね?」という適当な理由でこのガラス両面マットという材質を選んでみたのですが、意図せずにどことなく医学的な雰囲気を醸し出してしまいました。

完全一致

実際の組み立て作業はちゃんと色々あります。主に、

  • ボタンの足からpicoのGPIOピンを繋ぐハーネス作成 x 10

  • ボタンとpicoのGNDを全部繋ぐデイジーチェーンのハーネス作成

  • PicoにL字型のピンヘッダをはんだ付け

  • ハーネスを刺すべき場所に刺す

  • ワッシャーを通してネジを締める

ハーネス作成が特にめんどくさかったです。L字型でかつアケコン用ボタンサイズのファストン端子(110型)がレアなせいなのか、なぜか圧着ペンチがうまく導線をかしめてくれなかったり、そもそもかしめ作業をする箇所が30箇所ぐらいあったり、ペンチ2種類とニッパーを常にあれやこれやと持ち替えていたり。苦労した割に結果見た目が血管なのは誠に遺憾です。

見た目に不満はありますが、とりあえずアケコンとして使えるようにします。USBでpicoをパソコンに繋いで、picoをUSBキーボードとして動作させるためのプログラムをアップロードします。機能的には問題なく作れていたようなので、ちゃんとキーボード入力をすることができました。よかった

キーボードとして動作するところ

Picoで動かしているプログラムはRaspberry Pi公式のPico SDKを使ってCで書きました。Pico用だとGP2040-CEみたいな出来合いのプログラムはすでにあってある程度簡単に使えるようになっているのですが、それはなんとなく面白くないのと、僕はソフトウェアの方が断然得意なので自作です。あとから便利機能とかもどんどん自作で追加できますしね。

このプログラムの方に関しても後々記事を書くかもしれません。USB HIDのこととか色々勉強になったし、こういう情報が噛み砕かれて集まっている場所はあんまりない気がするので、いい情報源が書けたらいいなーとかぼんやり思ってます。

僕は膝置きでアケコンを使うタイプなんですが、このアケコン思ったより軽くて膝の上で結構滑ります。最終的には底板にこの滑り止めテープを貼りました。これで全く滑らなくなった。

滑り止めテープ
https://www.amazon.co.jp/dp/B0CPHVVHPQ

2台目を作る

1台目は問題だらけです。最初に作るものは基本的になんでもそうなるものですが、直したい点は色々あります。

  • 見た目が医学的すぎてカッコよくない

  • ケーブルが常に中からぶら下がっていて取り回しが悪い

  • 不要なまでに分厚い

  • 三和の静音ボタン+短ストローク化をしたボタンの押し心地と音があんまり好きじゃない

この悪い点を全部克服する2台目を作りたくなってしまいました。よくないですね。早速部品を探し始めましょう。

1台目の頃のように色々と前例を漁るわけですが、ここで導線を繋いで回路を組むのではなく最初から基板を作ってしまって、それをアクリル板でサンドイッチすれば薄くてカッコいいアケコンが作れそうだということがわかりました。基板を作るスキルは既に持ち合わせていますし、キースイッチをはめ込む基板は何回も作ったことがあります。

ということで、三和などのアケコンのボタンではなく、メカニカルキーボード用のキースイッチを使うことにします。キースイッチを使ったレバーレスアケコンは市販でも出回っていますし、キースイッチにはめ込んで使える丸型のキーキャップも売られています。今回はキースイッチにKailh Purple Iris、キーキャップはPunk workshopのものを使います。

Kailh Purple Iris
https://shop.yushakobo.jp/products/12585?variant=52039065665767
PUNK WORKSHOP Blaze ボタンキャップ
https://www.amazon.co.jp/dp/B0GHT7FQCL

マイコンには、WaveshareというメーカーのRP2040-Zeroというものを使います。基本的な機能はpicoとほぼ同じで、全長はpicoよりもだいぶ短いです。プログラムも1台目に書いたpico用のものが流用できるので、2台目のマイコンにぴったりです。おまけにちゃんとUSB-Cのpower deliveryに対応しているので、普通にUSB-Cのケーブルで普通にパソコンに繋げられます。素晴らしいですね。

Waveshare RP2040-Zero
https://www.amazon.co.jp/dp/B09SBCKYSC

最後にネジです。1台目の時は普通のネジを買ったのですが、今回は極低頭ネジというものを買います。頭が普通のネジよりかなり低くできていて、見た目がカッコよくなります。今回は手首を置く場所を作らないので関係ありませんが、手首を置く場所があるアケコンでは頭が低いおかげで手に触れていても気になりにくいというのもいいところです。ワッシャーは使いません。

Entaniya ミリネジ 黒ステンレス 六角穴付き極低頭ネジ M3-0.5
https://www.amazon.co.jp/dp/B0FKR9MTM6

必要な部品のうち市販されているものはこれだけです。1台目の時はあれやこれやといろんなものを買い回っていましたが、2台目となると色々洗練されてくるのか、たったの4種類です。1台目で得た学びは大きいです。

部品はもう揃ったのであとはアクリル板と基板を設計するだけなのですが、これがちょっと大変です。1台目の時はアクリル板をOnshapeで設計してはざいやの画面に入力するだけでしたが、基板も作るためにはKiCadという基板を作る専用のソフトも使わないといけません。KiCad単品ならそこまで大変ではないのですが、Onshapeとはざいやの設計と少しでも数値を間違ったりズレてしまうと、基板やアクリル板丸ごと作り直しになってしまいます。

前回同様にまずボタン配置から。しばらく1台目を使っていて、色々考えた結果親指ボタンがもうちょい下にあって欲しいということに気づいたので、この調整をしていきます。3Dプリンターさまさまです。

2台目のボタン配置最終版

この配置を使ってアクリル板を設計していきます。前回は天板と底板の2枚でしたが、今回は天板とスペーサーと底板の3枚になります。スペーサーがなぜ必要なのかは後で説明します。1台目は手首を置く場所を作ってみていたのですが、僕は結局手首を置かないタイプでただ場所をとっているだけだったので、今回は丸ごと手首を置く場所を無くします。

2台目の天板、スペーサー、底板
2台目の天板、スペーサー、底板(透過表示)

アクリル板の形が決まったので、次は同じ形の基板をKiCadで作ります。まずはRP2040-Zeroとキースイッチのシンボルを作ってから、回路図を作ります。GPIOのピンからスイッチを通してGNDに繋ぐだけのめちゃくちゃ簡単な回路です。小学校の理科で習うような豆電球とスイッチの回路とあんまり変わりません。

全体の回路図とRP2040-Zeroのシンボル

回路図ができたら、今度はRP2040-Zeroとキースイッチのフットプリントを作ってから、回路図をPCBに変換していきます。ここでキースイッチとマイコンとネジ穴の位置を合わせないといけないので、Onshapeで作ったモデルを見ながら座標をちまちまと写していきます。写し間違えないように気合いで頑張ります。

完成したPCBとキースイッチのフットプリント

Onshapeの使い方もそうなんですが、KiCadの使い方もかなり自己流で適当なので、なんかめちゃくちゃ禁忌を侵しているとかがあるかもしれません。もしなんかやばい使い方をしていそうなら見逃してください。

ここまでできたら、一度KiCadからSTEPファイルという形式で基板を出力して、これをOnshapeにインポートします。このインポートした基板のモデルとアクリル板のモデルを実際に引っ付けてみて、ちゃんと寸法があっていそうかを目視で確認します。穴の位置や切り欠きの位置は全部ちゃんと揃っていそうです。

Onshapeにインポートされた基板
アクリル板と基板を重ねて真上から見たところ

ここでやっと今回のアケコンの構造がわかりやすい図が見られるので、軽く説明します。今回のアケコンは4層構造になっていて、上から順に天板→基板→スペーサー→底板です。天板側からネジを通して底板についているネジ穴にねじ込むことで、全部の層が固定されるようになっています。

マイコンやキースイッチを基板にはんだ付けするとき、基板にピンなどを通してから基板の裏側からはんだ付けをすることになり、基板の裏には突起ができます。となると基板と底板を密着させることはもちろんできないので、突起の部分に穴が空いているスペーサーを挟むことでそこに突起が収まり、全層を密着させてネジ留めをすることができるようになります。これがスペーサーの役割です。

4層構造
突起が収まる場所をスペーサーが作っている

ここまでで必要な設計図は揃いました。アクリル板は前回同様にはざいやで注文、基板はJLCPCBという基板製造のサービスを使って製造してもらいます。

JLCPCBやPCBWayといった基板製造業者は、ガーバーファイルという形式のファイルを受け取って、それを元に基板を作ってくれます。KiCadはもちろんガーバーファイルを出力できるので、JLCPCBの指定通りに設定のパラメータを変更してから出力します。出力したファイルをそのままJLCPCBの注文画面に置いてあげると、実質これだけで基板を製造できてしまいます。とんでもなく便利な世の中ですね。

JLCPCBの注文画面

1注文につき基板の枚数は最小5枚から選ぶことができます。逆に5枚は必ず作る必要があります。詳しくは知りませんが、多分製造する上で1枚も5枚も大してコストが変わらないのと、1枚だけだと不良品ができてしまった場合お客さんとの往復が増えて大変なので保険として5枚ということだと思います。あと彼らの大口のお客さんは基板を何千枚とか何万枚も注文する法人のはずなので、それもあると思います。5枚作っても¥3,526です。なんかすごい技術で綺麗なものを作ってもらっているのにここまで安くなるのは人類の進化を感じますね。

残りはアクリル板です。また前回同様はざいやの画面でぽちぽちしていきます。前回はネジをただ通すだけのまっすぐな穴を開けていましたが、今回は底板のみネジ山を掘るタイプの穴を開けてもらいます。先ほど説明した通り、上から全部ネジで留められるようにするためです。

2台目の天板
2台目のスペーサー(天板と同じ穴の配置)
2台目の底板

設計図を入力し終わりました。突然ですが、ここでみなさんに問題です。

Q: あなをあければあけるけるほどたかくなるものってなーんだ?

¥16,405

A: 加 工 費

めちゃくちゃ高いですね。実は2台目にかかった費用の半分以上がはざいやです。これはいい商売をされてますね。

天板と底板は黒両面マット、スペーサーは透明のアクリル板で作りました。基板も黒なので全部黒マットにするとまとまりが出て、スペーサーは透明にするとアクセントになっていいんじゃないかという安直な考えです。

入力に何かミスがあって無駄な出費になってしまうとまずいので、間違いがないかの最終チェックをします。といっても方法は結構簡単で、OnshapeとKiCadとはざいやのスクショを全部撮って、それらを何かしらの画像編集ソフトで重ねて表示するだけです。半透明にしてみたり表示非表示を切り替えてみたりして、穴や切り欠きにズレがないことを確認します。原始的なチェックですが、安心感は爆上がりです。

重ねられたスクショたち

僕は初代Affinity Designerをいまだに使ってます。買い切り最高。Adobeは早く改心してください。

あとはアクリル板と基板の到着を待つだけです。待っている間に宇宙SAMURAIを全良しておきます。曲がすごくいいですね。


アクリル板と基板が到着しました。早速基板にマイコンとキースイッチをはんだ付けして、アクリル板で挟んでネジ留めしてしまいます。ネジはまず全部をゆるく締めてから、対角の順番に最後まで締めていきます。アクリルのネジ山に金属のネジを入れるので、締めすぎないようにします。最後にキーキャップをはめ込んで完成です。

アクリル板と基板
基板にマイコンとキースイッチをはんだ付けしたところ
2台目完成

感想:めっちゃいい!!!

1台目の問題点が全部解決して、想像以上にいい感じのアケコンができてしまいました。あまり深く考えてはいなかったのですが、キースイッチの紫とマイコンの青とアクリルの黒が冷たい色のトーンで統一されていて勝手にいい感じになりました。気に入ったので複数アングル貼っておきます。

斜めから
横と裏面

部品の種類が圧倒的に少ないおかげで、ちょっとのはんだ付けネジを締めるだけですぐに組み立てが終わってしまいました。1台目は数時間はかかっていたのですが、今回は1時間もかかっていません。

1台目同様に、USB経由でマイコンにプログラムをアップロードして完成です。配線が違うのでGPIOのピン番号はちゃんと変える必要がありますが、それ以外はプログラムはほぼ変わっていません。一応こっちも動いている様子を載せておきます。

2台目がキーボードとして動作するところ

2台目は膝置きにした時に1台目と比べて全然滑りませんでした。重さもほぼ同じなので、マット加工のアクリル板と一口に言っても滑りやすさなどは色々と違うのかもしれません。あと同じ重さでも2台目の方がずいぶん小さい分、密度を感じて重く感じます。


3台目…?

作りません。少なくとも今のところは作る予定はないです。作って欲しい人がいたら作ってあげるとは思いますが、自分で使う分には非常に満足なものができました。新しく指が生えてきたらボタンの数を増やしたものを作ります。

色々とお金はかかりましたが、1台目と2台目両方作って良かったです。1台目は行き当たりばったりで適当に作りましたが、何かしら失敗しないと学べないことは色々あったし、そのおかげで2台目が良いものになりました。

僕は普段からこんな感じで変なものを作っているので、もしかしたらまた何か作った時に記事を書くかもしれません。最後まで読んでいただきありがとうございました。

最後に1台目と2台目それぞれの部品リストと値段やリンクなどを載せておきます。もし今からアケコン作りたいなーと考えている人は、これぐらいかかると考えておくといいと思います。ちゃんと格ゲーに使えるアケコンだともっとボタンが多いはずなので、アクリル板の加工費はもう少しかさむと思います。

1台目の部品や寸法など

合計¥25,140(うち送料¥1,320)

重さ:628g
サイズ:310mm x 182.5mm x 47.6mm (アクリル部分を計測)

2台目の部品や寸法など

合計¥28,325(うち送料¥2,741)

重さ:629.5g
サイズ:310mm x 118.5mm x 14mm (アクリル部分を計測)

参考記事

以下は参考にさせていただいた記事です。

いいなと思ったら応援しよう!