噂のコントローラーPhobを作ってみた
はじめまして、かぬと申します。最近話題になっているコントローラー「Phob」を自分で作ってみました。カスタムコントローラーを作る方々が増え、認知度も上がってきているように感じます。「Phob」もその中のひとつで、有志が作ったコントローラーです。作りながら気づいたことや面白かったポイントなどを、私の理解した内容で、まとめた記事を書くことにしました。これによって、カスタムコントローラーやPhobについて知っていただく方が増えると嬉しいです。なお、詳しい内容や難しい言葉が出てくる場合は、参考のリンクやワードを検索していただけると幸いです。
Phobについて
「Phob」とは、正式には「PhobGCC」と記載され、カタカナで「フォブ」と発音するようです。アイコンがおばけのようなことから、相手を驚かせる性能などを意味しているのではないかと思われます。このコントローラーは、ゲームキューブコントローラーの基板と入れ替えて使用することを想定して作られており、ボタンなどはそのまま使えます。スティックには既成のものに磁石を取り付けて使用し、ホール効果と呼ばれる現象を利用しています。これにより、ソフトウェア側で起こる「はね戻り」という現象を回避し、正確な操作が可能になっています。また、スティックの状態を正しくするためのキャリブレーションやLRボタンの設定などが行うことができます。他にも細かな調整が可能なコントローラーです。
ホール効果について
ホール効果は、FPSなどで使用されるキーボードにも使用され、より素早くキャラクターを操作できるようになります。たとえば、キーボードのApexProでは、アクチュエーションポイントと呼ばれる、ボタンを押し込んでスイッチがオンになる深さを調整することができます。一般的には1.0mm〜2.0mmくらいが標準ですが、ApexProでは0.1mmのような非常に浅い設定も可能です。格闘ゲームプレイヤーのときどさんが、ホール効果を使ったキーボードについて説明されている動画がありますので、興味がある方はぜひご覧ください。現在は、キースイッチやファームウェアが普及していないため、ホール効果を利用したボタンが実装されたコントローラーが手に入るのは、もう少し先になるかもしれません。
かぬコンと同じRP2040が使われている
最新の「Phob 2.0.2」は、ARMマイクロコントローラチップであるRP2040を採用しています。RP2040は、一般的にマイコンと呼ばれるもので、人間の頭脳に相当する半導体チップです。「Phob」では、RP2040を使用して、コントローラーから発信する情報を制御しています。RP2040は、Raspberry Pi Picoに搭載されていたものであり、オリジナルコントローラーを作っている多くの方々もこちらを使用しています。私が作った「かぬコン」にも、同じチップを使用しています。RP2040を採用することで、操作を制御するためのプログラムなど、ソフトウェア側の自由度が高くなっています。そのため、通信の方式は基本的には同じですが、スティックのキャリブレーションやボタンの再配置ができるなど、ファームウェアによって、それぞれのコントローラーの個性が出ます。少し難しい話をすると、表と裏の2層のレイヤー構成(Proコンは2層以上の多層レイヤー)でできている基板なので、回路もそこまで複雑なものではありません。それに加えて、抵抗やコンデンサーなど、使われている部品もほとんど同じなので、どういった目的で使ってもらうかなど、ソフトウェアで対応できることがRP2040の強みです。
PhobのデータはGitHubで公開されている
Phobは、GitHubというサービスに基板やファームウェア、作り方などすべての情報が公開されています。また、Discordのサーバーもあり、サポートも手厚いです。なぜこのようなことが行われているのかというと、日本でもゲームキューブコントローラーの品切れが続いておりますが、海外ではより深刻な状態のようです。そこで、性能が低下してしまうスティックや数が少ないコントローラーの問題を解決するために、有志の方々が開発を行っていると考えられます。Phobの公開は、コントローラーの需要を満たすだけでなく、カスタムコントローラーに興味を持っている方々にとっても、貴重な情報源となっています。
実際に発注してみる
JLCPCBへ発注 PCB Assembly
JLCPCBは、オンデマンドの基板制作サービスで、自作キーボードの制作者やオリジナルコントローラーを作っている多くの方々が利用しています。今回は、基板だけではなく、部品の実装サービスも利用しています。詳しい手順については、ガイドラインが用意されているため、そちらを参照してください。
GitHubからダウンロードしたデータをアップロードし、JLCPCBのサイトで3つの設定にチェックし、PCB Assemblyのオプションを選択します。私が発注しようとした際に、JLCPCBで部品が欠品したものがありました。代わりのパーツを選定しようとしていた時に、PhobのDiscordサーバーを見てみると、同様の投稿がありました。すると、管理者の方が欠品の状態に合わせたデータをアップデートしてくれると書かれていました。数時間後に、GitHubを確認すると、BOMファイル(部品の種類と個数がわかるデータ)が更新されていました。もし困ったことがあれば、自分で解決しようとするのではなく、まずはサポートへ連絡することをおすすめします。
LR用のPCBと3Dプリントするパーツも発注する
次に、LRボタン用の基板をアップロードします。この場合、PCBAのオプションは必要ありません。また、スティックに取り付けるための3DプリントもJLCPCBに発注します。GitHubにあるデータには、1ファイルに10個のパーツが含まれているため、注文個数を2つにして、合計20個で発注すると、5台分の部品が揃うとおすすめされています。JLCPCBは、PCBと3Dプリントを同時に発注しても、まとめて発送することができず、送料を安くすることができません。それでも、JLCPCBは十分に安価なため、私はよく利用しています。
価格について
基板の発注枚数は、最低でも5枚からになります。部品の組み立てサービスは、2枚まで適用可能です。私がLRの基板を含めた部品の発注を行った場合、送料込みで約170ドル程度かかりました。日本円で約23,000円に相当します。1枚あたりの価格は約4,600円となります。発注する枚数が増えると、1枚当たりの価格を抑えることができます。自作キーボードを作っている方たちは、共同購入という仕組みを使って、一度に大量の枚数を発注することで、価格を抑えているようです。
マグネットの購入
最後に、スティックに使用するマグネットを購入しました。私は「DH1H1」というマグネットを選びました。いくつか選択肢があるのですが、3Dプリントで発注したマウントが「DH1H1」に向けて作られたものでした。その他のオプションはすべて海外サイトからの購入となるため、「DH1H1」を選びました。商品の単価はそこまで高くないのですが、送料が約43ドルかかり、商品価格の40倍近い金額になりました。これで、組み立てに必要な部品は全て発注できました。そのほかにも、ボタンにマウスで使われているスイッチを使用することなどもできますので、自分の好みに合わせて試してみることをおすすめします。
おわりに
Phobは、サポートがとても手厚く、必要な情報のほとんどがGitHubで公開されています。根気強く英語を読むことができ、わからないことを質問することができれば、ある程度の知識があれば発注することができます。何人かの仲間で発注すると価格を抑えれらるかもしれません。次は届いた基板と部品を組み立てていきます。市販のコントローラーにリスクがないわけではありませんが、カスタムコントローラーにもリスクがあります。そこを踏まえて挑戦いただけると嬉しいです。ユーザーが増えると、これまでにはなかった現象も発生します。そのような情報が集まることで、より良いものになっていきます。もし機会があれば、情報を発信いただけると良いかもしれません。Phobを開発された有志の方々やカスタムに関する情報を公開している方に少しでも還元できるように、本記事を書かせていただきました。この記事を書くことで、Phobを使う方や作ってみる方が増えてくれると嬉しいです。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?