Doca Móvel XG
Este hardware de código aberto permite conectar qualquer placa PCIe a um dispositivo ASUS ROG com o conector XG Mobile.
A variante padrão é uma PCB de substituição para o dock eGPU XG Station Pro Thunderbolt 3. Ele contém um hub USB 3.1 Gen 2 integrado e um carregador USB PD.
A variante lite é uma PCB de substituição imediata para o ADT-UT3G. Requer uma fonte de alimentação ATX padrão e passa pelo USB para uma porta externa.
Características
- Suporte PCIe 3.0 x8 para 2021/2022/2023 ROG Flow (4.0 atualmente não testado)
- Suporte PCIe 4.0 x4 para 2023 ROG Ally
- Detecção de cabo de manuseio de MCU e LEDs
- Carregador USB PD de 65 W (variante padrão)
- 2 portas USB-C conectadas a um hub USB 3.1 Gen 2 (variante padrão)
Começando
- Construa o PCB
- Pisque o quadro
- Instale o software
Firmware piscando
As placas Lite só precisam atualizar o STM32, enquanto a placa padrão também requer a gravação de dois flash SPI.
STM32 MCU
- Baixe
XG_Mobile_Dock_MCU.bin
da versão mais recente ou crie o seu próprio. - Baixe e instale o ST32CubeProgrammer.
- Conecte seu ST-LINK v2 ao seu computador. Observe que se você estiver usando um clone barato da Amazon ou Aliexpress, os números PIN impressos no dispositivo podem estar incorretos.
- Conecte os pinos SWDIO, SWCLK e GND ao J10 na placa ao ST-LINK v2. Não conecte +3V3. Se você estiver usando um ST-LINK oficial, precisará de um jumper do VAPP (pino 1) para o VDD (pino 19).
- Certifique-se de que a placa esteja ligada para que possa ser programada.
- Abra ST32CubeProgrammer e vá para a página “Apagar e programar” (segundo ícone na barra lateral esquerda).
- Navegue e selecione o arquivo de firmware.
- Marque "Executar após programação"
- Clique em “Conectar” na barra lateral direita e depois em “Iniciar programação” à esquerda.
Flash SPI para TI USB PD
Estaremos usando um Raspberry Pi, embora a maioria dos outros SBC também possam funcionar tão bem como flashers SPI dedicados.
- Habilite a interface SPI no Raspberry Pi.
- Conecte GND (Terra), SS (SPI0 CE0), CLK (SPI0 SCLK), MISO (SPI0 MISO) e MOSI (SPI0 MOSI) no J9 ao Raspberry Pi.
- Abra um shell para o Raspberry Pi e instale o Flashrom:
sudo apt-get install flashrom
- Baixe
XG_Mobile_Dock_Charger.bin
da versão mais recente ou crie o seu próprio. - Atualize o firmware:
sudo flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1000 -w XG_Mobile_Dock_Charger.bin
Flash SPI para hub USB VIA
Estaremos usando um Raspberry Pi, embora a maioria dos outros SBC também possam funcionar tão bem como flashers SPI dedicados.
- Habilite a interface SPI no Raspberry Pi.
- Conecte GND (Terra), SS (SPI0 CE0), CLK (SPI0 SCLK), MISO (SPI0 MISO) e MOSI (SPI0 MOSI) no J13 ao Raspberry Pi. Observe que a ordem dos pinos é diferente do J9.
- Abra um shell para o Raspberry Pi e instale o Flashrom se ainda não estiver instalado:
sudo apt-get install flashrom
- Baixe
VL822_Q7_9043_Phantom_20220616.bin
da versão mais recente. - Atualize o firmware:
sudo flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1000 -w VL822_Q7_9043_Phantom_20220616.bin
Instale o XGMDriver
O XGMDriver engana o software ARMORY CRATE para identificar o dock personalizado como um dispositivo XG Mobile oficial. Uma vez instalado, ele deve funcionar mesmo se o software ARMORY CRATE for atualizado. Você pode verificar o código fonte aqui.
- Baixe
XGMDriverSetup.exe
da versão mais recente. - Execute o instalador certificando-se de selecionar corretamente AMD ou NVIDIA dependendo do fornecedor da GPU que você está instalando.
- Se você precisar alternar entre AMD e NVIDIA, desinstale no Painel de Controle ou execute o instalador novamente. Então você pode reinstalar e selecionar a opção correta.
Solução de problemas
Erro 43 ou nenhuma saída de vídeo em GPUs NVIDIA
Este é um problema bem conhecido com eGPUs NVIDIA. Depois que o eGPU estiver instalado junto com os drivers corretos, você precisará instalar este script.
PCIe está obtendo apenas velocidades 3.0
Você precisa reiniciar seu dispositivo. Por alguma razão, a conexão a quente às vezes resulta em velocidades de 3,0.
Nenhum pop-up quando o XGM está conectado
Às vezes, o dispositivo não será detectado e você pode desligar e ligar o bloqueio novamente para forçar o software a detectar novamente o dispositivo.
"Parece que seu XG Mobile não está conectado corretamente..."
Se você receber um pop-up dizendo que o XG Mobile não está conectado corretamente, certifique-se de que o XGMDriver esteja instalado. Se isso ainda for um problema com o XGMDriver instalado, provavelmente há um problema de conexão com o cabo.
Pop-up de instalação do driver ASUS na reinicialização
Reinstale o XGMDriver para inibir o pop-up do driver ASUS.
Lite: USB não detectado
A placa Lite não possui detecção de orientação USB. Tente virar o cabo USB-C de cabeça para baixo e tente novamente.
Referências
Base de conhecimento para tudo o que o XGM reuniu a partir da engenharia reversa de hardware e software.
- Informações do conector XGM
- Interfaces de software XGM
- Interface de comando MCU
- Diário de design de PCB
- Tabelas ACPI invertidas
- Detecção de BIOS invertida