はんだ付け初心者がPhobコンを自作した話

ゲームキューブコントローラを素体としたPhobコンを自作しました。
躓いた部分を共有するつもりで書いています。
記述に間違いがあれば御指摘お願いします。


Phobコンについて

下記2点の利点があります
・劣化に強い
  -スティックを非接触のセンサに換装しているため,劣化しにくい
  -センサの校正が可能で,もし劣化したとしても対応可能
・跳ね戻り対策○
  コンデンサ追加による対策に比べ,応答性低下の影響が小さい

全体としての感想は最後に書きます。

参考URL

Phobメインドキュメント
https://github.com/PhobGCC/PhobGCC-doc

準備したもの

・PhobGCC基板 v1.2.3
 https://www.vizardclub.com/items/68802654
 ※追記 新バージョン基板の方が良いと思います
・Teensy 4.0
・Teensy取り付け用ピンヘッダ
 https://www.digikey.jp/ja/products/detail/samtec-inc/TLW-136-05-T-S/1105024
・磁石(4個)
 https://www.digikey.jp/ja/products/detail/comus-international/M1219-2/11562464
・ホール効果センサ(4個)
 https://www.digikey.jp/ja/products/detail/texas-instruments/DRV5053CAQLPGM/5177930
・純正GCコン
・3Dプリンター
・LRトリガーボタン化キット「KACHI-KACHI Trigger GCC」
 https://www.vizardclub.com/items/54285707
・Zボタン用スイッチ
 https://www.vizardclub.com/items/63785504
・コネクターキット
 https://www.vizardclub.com/items/54285947

部品選定の補足

・購入する基板が1.2.3だったためTeensyが必要でした
・ピンヘッダ,磁石,ホール効果センサはDigi-keyでまとめて買うことができました。予備として多めに買っておきました
・LRカチカチトリガー,Zボタンスイッチ,コネクターキットはオプションのため必須ではありません
・3Dプリンターはあったほうが良いと思います。しかし,根性でなんとかなる範囲ではあると思います

フロー

全体としては,githubのドキュメントを読めばよいです。機械翻訳で十分理解できると思います。
https://github.com/PhobGCC/PhobGCC-doc

以下,記事に書いていないこと,書いてあるけれどわかりにくいことを重点的に記します。
特に,Phobの基板バージョンが2.0.0以前かどうかでページが分かれており,
片方のページにしか詳細な説明がない項目があります。適宜リンクを記してあります。

1.部品を準備する

私の場合の部品リストは前述の通りです。
https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Build_Guide_1.2.md#new-parts

2.ドナーのGCコンを分解する

Y字ドライバーと,プラスドライバーが必要です。
必要部品をはんだ吸い取り線なども使いながら取り外していきます。
https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Build_Guide_2.0.md#gcc-part-harvesting
※基板のバージョンが異なるページですが参考になります

3.3Dプリンタで磁石のマウンタを作成する

3Dプリンターで出力したマウンタが
2.で分解したスティックボックスに嵌まるか確認します。
入らない場合はパラメータを調整し,再出力を待ちながら次の工程を進めます。
マウンタが作成できたら,接着剤硬化の時間を有効に使うため,磁石の固定までやっておきます。
https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Build_Guide_1.2.md#magnet-mounting

# このとき,磁石とスティックのカバーが干渉しないことを確認します。(失敗記録参照)

# 磁石のN極・S極は,私は右がN極で統一しました。後ほど校正できるので,多分気にしなくて良いと思います。

# 3DモデルはdiscordのPhobGCCサーバに,チャットルーム「3d-printing」があり,ピン止めされたメッセージからモデルを探します。
  基板のバージョンによってモデルが違います。私は2022/08/09の投稿からお借りしました。(使用した磁石が異なるためパラメータは調整しました)
  OpenSCADは初めて使用しましたが面白いですね。

4.Teensyへプログラムを書き込む

Arduino IDEが必要です。
https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Programming_Guide.md

5.組み立てる

下記リンク先に従って組み立てます。
https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Build_Guide_1.2.md#teensy-soldering

# はんだの高さを抑えろ.という指示がいくつかあります。
個人的には,そこまで無理をする必要はなく,干渉が懸念される場所は覚えておいて,相手部品の樹脂を削れば良いと思います。
  特に,ホール効果センサは,はんだ付け後にセンサの足を切るため,高さを抑えるのが難しいと思います。
  参考:https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Board_Fixes.md

# LRトリガーの引っ掛かりを緩和するため,エッジの除去ができるようです。お好みで。
https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Build_Guide_2.0.md#stuck-trigger-prevention

6.抵抗値,電圧のチェック

私の場合,6 or 13kΩ(極性によって異なる)と言われている箇所がなぜか11 or 13kΩくらいでした。
なぜでしょうか。動いているため深掘りしていないです。
https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Board_Level_Debugging_1.2.md

7.校正(初期設定)

スティックの座標を数値で表示できるツールが必要です。
私はwiiエミュレータのDolphinと,SmashScopeを使用しました。
環境のセットアップはこの動画が参考になりました。
開幕目つき悪すぎてビビりましたがとてもわかりやすいです。
https://www.youtube.com/watch?v=xc3EnUgR_B4

https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Users/Phob_Calibration_Guide_v0.28.md

失敗記録

作成中に発生した問題とその原因について記録します。

・L,Rトリガーを最後まで押しこんでも,押し込み最大と認識しない
 → 組み立て時,LRトリガーのポテンショメータを上に上げていない

・セーフモードをオフにできない(=設定変更モードに入れない)
 → 組み立て時,LRトリガーのポテンショメータを上に上げていない

・磁石とスティックのカバーが干渉する
 → 3Dプリントしたマウンタの形状が悪い。
   磁石を嵌め込む穴の幅が狭い,もしくは底(スティックボックスとの結合部)が厚い
   ※良品の様子
   https://github.com/PhobGCC/PhobGCC-doc/blob/main/For_Makers/Build_Guide_1.2.md#magnet-mounting

失敗例
これでも動いたが,流石に作り直した

・スマブラSPで使用中,接続が切れる(対戦中にコントローラ選択画面が出る等)
 → 振動機能がオンになっている
   スマブラのキーコンで振動を切る,もしくはPhobの設定で振動を切る# discordサーバで「ultimate rumble」「disconnect」あたりで検索すれば情報が出てきます。(この情報はもっと見えやすい所に置いてほしかったですが,Phob 2基板では発生しない問題だそうです。古いもの使ってる方が悪いかもですね。)

感想

コントローラ自作は初でしたがちゃんと動作したため,満足しています。
振り向きつかみの暴発が抑えられているのも実感できました。
私がそこまで長時間スマブラをしないため,耐久性,持続性に関しての恩恵はないかもしれません。

機会があればphob2基板にもいつか挑戦してみたいですね。
旧基板に比べてかなり組みやすくなっているらしいです。

謝辞

VIZARD CLUB
基板購入からオプションパーツまで,何から何までお世話になりました。
ありがとうございます!

以上