Поскольку у меня не было никакого успеха на обмен стеками unix, пробую здесь. Может быть, я нетерпелив, может быть, это не лучший способ просить о помощи, не стесняйтесь сказать мне!
Некоторое время я использовал контроллер Playstation DualShock 4 через Bluetooth, чтобы играть в игры на своем Linux Box. Подробности о коробке:
- Оборудование: Asrock Beebox N3150
- ОС: Ubuntu Server 20.04.3
- Программное обеспечение: Коди + Ретроарх
Теперь у меня есть контроллер DualSense. Я могу подключить его по Bluetooth, чтобы использовать его так же, как DS4. Я все еще могу использовать DS4, если сначала отключу контроллер DualSense. Но я не могу заставить 2 контроллера работать одновременно.
Что я пробовал:
- Тестирую то же самое на другом компьютере (тоже на основе Ubuntu 20.04) => работает, могу играть в многопользовательскую игру на Retroarch
- Тестирование установки более нового ядра на бокс, а именно ядра 5.13 (через HWE как описано здесь) чтобы получить официальный драйвер hid_playstation, поддерживаемый Sony => это не помогло, хотя я убедился, что использую правильный драйвер для DualSense
- Тестирование с использованием сначала USB-подключения для авторизации устройства, а затем подключения через Bluetooth => никаких улучшений
- Тестирование с использованием одного контроллера через Bluetooth, другого через USB => работает
Что я подозреваю (гипотеза - могу ошибаться):
- Проблема может быть не связана с соединением Bluetooth. я использовал
bluetoothctl
для сопряжения моих устройств и не столкнулся с проблемами в процессе сопряжения. blueoothctl
сказал мне, что устройство было сопряжено, и светодиод на устройствах перешел от мигания к постоянному цвету
- Проблема, вероятно, связана с драйвером или с чем-то другим, связанным с обменом данными с устройством: когда второй контроллер (либо DualSense, либо DS4) подключен, он остается с фиксированным цветом (серый для DS4, синий для DualSense). ) в течение некоторого времени (обычно менее 1 минуты), а затем выключается. Так что я предполагаю, что это означает, что он подключен по Bluetooth, но через некоторое время не получает ответа, который он хочет.
Кто-нибудь может помочь мне исправить эту проблему? Я могу предоставить журнал всего, что нужно, и переходить от ядра 5.4 к ядру 5.13 и обратно (но я не уверен, что это необходимо, потому что на 5.4 работает один контроллер за раз).
ОБНОВИТЬ: Чтобы убедиться, что проблема не связана с оборудованием, я купил внешний USB-донгл Bluetooth: TP-link UB500. Я был удивлен, обнаружив, что это не работает «из коробки»: мне пришлось установить самое последнее ядро (>= 5.15.4), как уже упоминалось. здесь. Так что я пошел с этот учебник и установил 5.15.13. После загрузки необходимых файлов прошивки я смог загрузиться с новым ядром и... вернулся к тому же моменту: я могу соединить и DS4, и DualSense с моим новым Bluetooth-адаптером, но только первый подключенный создает некоторые журналы. /var/журнал/kern.log
и распознается как устройство ввода (хотя второе подключено через Bluetooth). Я также пытался отключить и добавить в черный список новый драйвер hid_playstation, но никакой разницы. Итак, я все еще застрял в этой проблеме:
- Второе устройство подключено согласно bluetoothctl
- Второе устройство не видит ни ядро, ни Xorg, ни приложения конечного пользователя
- Конфигурация для второго устройства не создается в
/sys/автобус/скрытый/устройства
или в /sys/устройства/виртуальные/разное/uhid