LINUX.ORG.RU

Проблемы с подключением playstation move

 ,


0

1

Здравствуйте.

psmoveapi_3.0.0/build$ ./example
Connected controllers: 0
Could not connect to default Move controller.
Please connect one via USB or Bluetooth.

В windows без блютуз донгла, example из psmoveapi_3.0.0 видит контроллер по usb, мигает шариком и тд. В linux же вышеприведенная ситуация. С git версией то же самое.

# lsusb 
...
Bus 002 Device 015: ID 054c:03d5 Sony Corp. PlayStation Move motion controller
...

Pairing with linmctool:

# ./linmctool 
Waiting for Bluetooth connections.
USB: PS MOVE
  Changing master from xx:xx:xx:xx:xx:x to yy:yy:yy:yy:yy:yy
  Now press the PS button.
linmctool видит контроллер (без подключенного по usb контроллера вывод такой
# ./linmctool 
Waiting for Bluetooth connections.
Но после нажатия ps button ничего не происходит, приходится прерывать linmctool Ctr^C и после этого, после отключения контроллера от usb и повторного запуска linmctool соединение по bluetooth не происходит.

В /dev/input появляются event и js

$ jstest /dev/input/js0
Driver version is 2.1.0.
Joystick (Sony Computer Entertainment Motion Controller) has 4 axes (X, Y, Z, Rz)
and 24 buttons ...
На клавиши на контроллере не реагирует. С evtest такая же ситуация.

Включение hid_sony в ядре ничего не поменяло. При подключении контроллера hid_sony не загружается, загружал с помощью modprobe. Может быть какой-то конфликт с другими модулями? Как «привязать» к hid_sony этот 054c:03d5 ?

$ lsmod | grep sony
hid_sony                9570  0 
led_class               2023  1 hid_sony
ff_memless              3127  1 hid_sony

Ответ на: комментарий от darkenshvein
find /lib/modules/3.16.2 -name «*hid*»
/lib/modules/3.16.2/kernel/drivers/hid
/lib/modules/3.16.2/kernel/drivers/hid/usbhid
/lib/modules/3.16.2/kernel/drivers/hid/usbhid/usbhid.ko
/lib/modules/3.16.2/kernel/drivers/hid/hid-logitech.ko
/lib/modules/3.16.2/kernel/drivers/hid/hid-wacom.ko
/lib/modules/3.16.2/kernel/drivers/hid/hid-sony.ko
/lib/modules/3.16.2/kernel/net/bluetooth/hidp
/lib/modules/3.16.2/kernel/net/bluetooth/hidp/hidp.ko
panzerito ()
Ответ на: комментарий от darkenshvein

Что bluetooth, так это точно. Говорят, что и usb. Пейринг, во всяком случае, происходит через usb шнур вместе с bluetooth донглом.

Кстати, control joy.cpl в winxp не реагирует на нажатия клавиш и перемещения. Никаких дополнительных драйверов не установливалось. microsoft hid и все.

panzerito ()
Ответ на: комментарий от panzerito

Как оказалось, psmoveapi использует hidapi (статика, потому нельзя было заметить по ldd). Тесты с hid_enumarate не сработали и почитав исходники, решил, что необходимо установить CONFIG_HIDRAW и CONFIG_UHID. Возможно, хватило бы HIDRAW, не читал так далеко исходники, чтобы понять использует ли psmoveapi user-space i/o.

Связал (pairing) ps move с помощью psmovepair и проверил example и moved. Реагирует на кнопки, перемещения и температуру.

HID_SONY не нужен, вывод lsmod после удачного использования ps move:

$ lsmod | grep sony
$

panzerito ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.