360Controller / 360Controller/360Controller

Pretend to be Xbox 360 Controller inconsistent after unplug

Aberta
#1,215 0 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
C++
Estrelas
6.7k
Forks
524
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

### Type of Controller
Xbox One Controller (no Bluetooth)
Model: 1537

### OS Version
11.6.3 (20G415)

### Driver Version
Version 1.0.0-alpha.6

### Connection Method
Wired, USB MicroB to USB Type-A

### Device Name and Info
(If you don't know this information, please refer to the README for how to find it. Enter N/A if not applicable)
>Device Name: Controller

Product ID: 0x02d1

Vendor ID: 0x045e

### Response of Controller
NA to the issue

### Response in Preference Pane
Everything works as expected and shows up all inputs correctly mapped

### Detailed Explanation of Issue
I use Parsec to remotely inject my controller into my games. My Bluetooth Xbox One Controller works perfectly (over Bluetooth). When connecting my wired controller Parsec detects it as an HID Controller. If I toggle off then back on, the "Spoofing Preferences" "Pretend to be an Xbox 360 Controller". Everything works as expected, parsec detects it as "Xbox Controller #1" which is as expected.
If I then unplug and replug the controller without changing any settings, and quit and open parsec it's back to being detected as an HID Controller.
Toggling the Spoofing preferences off and back on fixes this.

Same macOS login session, same controller, same cable, same USB port.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

The issue is in the driver's spoofing logic for Xbox 360 controller emulation. Look at the USB connection handling and HID descriptor spoofing code, likely in the IOKit driver sections. Reproduce by monitoring the driver's behavior when a controller is unplugged and replugged, checking if the spoofing state is preserved. Verify the fix by testing with Parsec to ensure the controller is consistently detected as an Xbox 360 controller after reconnection.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
macos
Domínio
desktop
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.