XG モバイル ドック
このオープンソース ハードウェアを使用すると、XG Mobile コネクタを使用して任意の PCIe カードを ASUS ROG デバイスに接続できます。
標準バリアントは、XG Station Pro Thunderbolt 3 eGPU ドック用のドロップイン交換用 PCB です。 USB 3.1 Gen 2 ハブと USB PD 充電器が内蔵されています。
ライト バリアントは、ADT-UT3G のドロップイン交換用 PCB です。標準の ATX 電源が必要で、USB 経由で外部ポートに接続されます。
特徴
- 2021/2022/2023 ROG Flow の PCIe 3.0 x8 サポート (4.0 は現在テストされていません)
- 2023 ROG Ally の PCIe 4.0 x4 サポート
- MCU 処理ケーブル検出と LED
- 65W USB PD 充電器 (標準バージョン)
- USB 3.1 Gen 2 ハブに接続された 2 つの USB-C ポート (標準バージョン)
はじめる
- PCBを構築する
- ボードをフラッシュする
- ソフトウェアをインストールする
ファームウェアのフラッシュ中
Lite ボードでは STM32 をフラッシュするだけで済みますが、標準ボードでは 2 つの SPI フラッシュも書き込む必要があります。
STM32 MCU
- 最新リリースから
XG_Mobile_Dock_MCU.bin
をダウンロードするか、独自にビルドします。 - ST32CubeProgrammer をダウンロードしてインストールします。
- ST-LINK v2 をコンピュータに接続します。 Amazon または Aliexpress の安価なクローンを使用している場合、デバイスに印刷されている PIN 番号が間違っている可能性があることに注意してください。
- SWDIO、SWCLK、および GND ピンをボード上の J10 に ST-LINK v2 に接続します。 +3V3は接続しないでください。公式の ST-LINK を使用している場合は、VAPP (ピン 1) から VDD (ピン 19) までのジャンパー ワイヤが必要になります。
- プログラムできるようにボードの電源が入っていることを確認してください。
- ST32CubeProgrammer を開き、「消去とプログラミング」ページ (左側のサイドバーの 2 番目のアイコン) に移動します。
- ファームウェア ファイルを参照して選択します。
- 「プログラミング後に実行」にチェックを入れる
- 右側のサイドバーの「接続」をクリックし、左側の「プログラミングの開始」をクリックします。
TI USB PD 用 SPI フラッシュ
ここでは Raspberry Pi を使用しますが、他のほとんどの SBC も専用の SPI フラッシャーと同様に機能します。
- Raspberry Pi で SPI インターフェイスを有効にします。
- J9 の GND (グランド)、SS (SPI0 CE0)、CLK (SPI0 SCLK)、MISO (SPI0 MISO)、および MOSI (SPI0 MOSI) を Raspberry Pi に接続します。
- Raspberry Pi のシェルを開いて Flashrom をインストールします:
sudo apt-get install flashrom
- 最新リリースから
XG_Mobile_Dock_Charger.bin
をダウンロードするか、独自にビルドします。 - ファームウェアをフラッシュします:
sudo flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1000 -w XG_Mobile_Dock_Charger.bin
VIA USBハブ用SPIフラッシュ
ここでは Raspberry Pi を使用しますが、他のほとんどの SBC も専用の SPI フラッシャーと同様に機能します。
- Raspberry Pi で SPI インターフェイスを有効にします。
- J13 の GND (グランド)、SS (SPI0 CE0)、CLK (SPI0 SCLK)、MISO (SPI0 MISO)、および MOSI (SPI0 MOSI) を Raspberry Pi に接続します。ピンの順序が J9 とは異なることに注意してください。
- Raspberry Pi のシェルを開き、Flashrom がまだインストールされていない場合はインストールします:
sudo apt-get install flashrom
- 最新リリースから
VL822_Q7_9043_Phantom_20220616.bin
をダウンロードします。 - ファームウェアをフラッシュします:
sudo flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1000 -w VL822_Q7_9043_Phantom_20220616.bin
XGMDriverをインストールする
XGMDriver は、ARMORY CRATE ソフトウェアをだましてカスタム ドックを公式の XG Mobile デバイスとして識別させます。一度インストールすると、ARMORY CRATE ソフトウェアが更新されても動作するはずです。ここでソースコードをチェックアウトできます。
- 最新リリースから
XGMDriverSetup.exe
をダウンロードします。 - インストールする GPU のベンダーに応じて、AMD または NVIDIA を正しく選択してインストーラーを実行します。
- AMD と NVIDIA を切り替える必要がある場合は、コントロール パネルからアンインストールするか、インストーラーを再度実行してください。その後、再インストールして正しいオプションを選択できます。
トラブルシューティング
エラー 43 または NVIDIA GPU でビデオ出力がありません
これは、NVIDIA eGPU に関するよく知られた問題です。 eGPU が正しいドライバーとともにインストールされたら、このスクリプトをインストールする必要があります。
PCIe の速度は 3.0 のみです
デバイスを再起動する必要があります。何らかの理由で、ホットプラグを行うと速度が 3.0 になることがあります。
XGM 接続時にポップアップが表示されない
場合によっては、デバイスが検出されない場合は、ロック スイッチをオフにしてから再度オンにして、ソフトウェアにデバイスを強制的に再検出させることができます。
「XG Mobile が正しく接続されていないようです...」
XG Mobile が正しく接続されていないことを示すポップアップが表示された場合は、XGMDriver がインストールされていることを確認してください。 XGMDriver をインストールしても問題が解決しない場合は、ケーブルの接続に問題がある可能性があります。
再起動時に ASUS ドライバーのインストールポップアップが表示される
XGMDriver を再インストールして、ASUS ドライバーのポップアップを禁止します。
Lite: USB が検出されません
Lite ボードには USB の向きを検出する機能がありません。 USB-C ケーブルの上下を裏返して、もう一度試してください。
参考文献
XGM がハードウェアとソフトウェアのリバース エンジニアリングから収集したすべての知識ベース。
- XGM コネクタの情報
- XGM ソフトウェア インターフェイス
- MCUコマンドインターフェース
- PCB設計日記
- 逆引きACPIテーブル
- 逆BIOS検出