Я использую xboxdrv на Ubuntu для сбора входных данных с контроллеров Xbox. С проводными контроллерами я могу очень легко получить 4+ входных данных контроллера:
xboxdrv --daemon -i 0 --detach-kernel-driver \
--next-controller -i 1 --detach-kernel-driver \
--next-controller -i 2 --detach-kernel-driver \
--next-controller -i 3 --detach-kernel-driver \
--next-controller -i 4 --detach-kernel-driver \
--next-controller -i 5 --detach-kernel-driver
Но с беспроводными контроллерами я могу получить только до 4
xboxdrv --daemon -w 0 --detach-kernel-driver \
--next-controller -w 1 --detach-kernel-driver \
--next-controller -w 2 --detach-kernel-driver \
--next-controller -w 3 --detach-kernel-driver \
--next-controller -w 4 --detach-kernel-driver \
--next-controller -w 5 --detach-kernel-driver
-- [ ERROR ] ------------------------------------------------------
wireless id must be within 0 and 3
Что мне нужно сделать, чтобы иметь возможность получать входные данные от более чем четырех беспроводных контроллеров? Я знаю, что каждый беспроводной приемник может обрабатывать только 4 контроллера каждый, но разве это не должно работать, если у меня есть 2 беспроводных приемника и восемь контроллеров?
решение1
Чтобы узнать, какие контроллеры доступны, используйте:
xboxdrv --list-controller
Он сообщит id и wid. Чтобы использовать второй беспроводной приемник:
xboxdrv --daemon \
-i 0 -w 0 --detach-kernel-driver \
--next-controller -i 0 -w 1 --detach-kernel-driver \
--next-controller -i 0 -w 2 --detach-kernel-driver \
--next-controller -i 0 -w 3 --detach-kernel-driver \
--next-controller -i 1 -w 0 --detach-kernel-driver \
--next-controller -i 1 -w 1 --detach-kernel-driver
-i
это USB-устройство, -w
предназначено для контроллера на этом USB-устройстве.