Jetpack 6.0 - issue with xbox gamepad

I have a problem is the Xbox One pad. At the beginning the system did not detect the device when connected via USB:

[ 1272.947229] usb 1-2.1: new full-speed USB device number 6 using tegra-xusb
[ 1295.250511] usb 1-2.1: USB disconnect, device number 6

The issue has been solved after kernel update.

[ 1107.505632] usb 1-2.4: new full-speed USB device number 9 using tegra-xusb
[ 1107.619393] input: Microsoft X-Box One S pad as /devices/platform/bus@0/3610000.usb/usb1/1-2/1-2.4/1-2.4:1.0/input/input17

However, the pad does not appear under /dev/input/js0 path. After connecting some event link shows e.g. /dev/input/event13. The same issue is with pairing via Bluetooth and disabled ERTM:

[ 1313.712131] rtk_btcoex: hci (periodic)inq start
[ 1323.955162] rtk_btcoex: inquiry complete
[ 1323.967117] rtk_btcoex: hci (periodic)inq start
[ 1326.315117] rtk_btcoex: inquiry complete
[ 1326.325525] rtk_btusb: btusb_notify: hci0 evt 1
[ 1326.329130] rtk_btcoex: hci create connection, start paging
[ 1327.311154] rtk_btcoex: connected, handle 0001, status 0x00
[ 1327.311167] rtk_btcoex: Page success
[ 1327.327205] rtk_btcoex: l2cap op 2, len 16, out 0
[ 1327.327259] rtk_btcoex: RX l2cap conn req, hndl 0x0001, PSM 0x0001, scid 0x0040
[ 1327.327267] rtk_btcoex: PSM(0x0001) do not need parse
[ 1327.363102] rtk_btcoex: io capability request
[ 1331.575109] rtk_btcoex: link key notify
[ 1331.600203] rtk_btcoex: l2cap op 3, len 20, out 1
[ 1331.600259] rtk_btcoex: TX l2cap conn rsp, hndl 0x0001, dcid 0x0041, scid 0x0040, result 0x0001
[ 1331.645757] rtk_btcoex: l2cap op 3, len 20, out 1
[ 1331.645818] rtk_btcoex: l2cap op 2, len 16, out 1
[ 1331.645835] rtk_btcoex: TX l2cap conn rsp, hndl 0x0001, dcid 0x0041, scid 0x0040, result 0x0000
[ 1331.645841] rtk_btcoex: TX l2cap conn req, hndl 0x0001, PSM 0x0001, scid 0x0040
[ 1331.645845] rtk_btcoex: PSM(0x0001) do not need parse
[ 1331.653363] rtk_btcoex: l2cap op 3, len 20, out 0
[ 1331.653394] rtk_btcoex: RX l2cap conn rsp, hndl 0x0001, dcid 0x0041, scid 0x0040, result 0x0000
[ 1331.712098] rtk_btcoex: l2cap op 6, len 16, out 0
[ 1331.712144] rtk_btcoex: RX l2cap disconn req, hndl 0x0001, dcid 0x0041, scid 0x0040
[ 1331.712153] rtk_btcoex: handle_l2cap_discon_req: handle 0x0001, dcid 0x0041, scid 0x0040, dir 0
[ 1331.730209] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[ 1331.730231] Bluetooth: HIDP socket layer initialized
[ 1331.731088] rtk_btcoex: l2cap op 2, len 16, out 1
[ 1331.731137] rtk_btcoex: TX l2cap conn req, hndl 0x0001, PSM 0x0011, scid 0x0041
[ 1331.739460] rtk_btcoex: l2cap op 3, len 20, out 0
[ 1331.739497] rtk_btcoex: RX l2cap conn rsp, hndl 0x0001, dcid 0x0040, scid 0x0041, result 0x0001
[ 1331.741948] rtk_btcoex: l2cap op 3, len 20, out 0
[ 1331.741984] rtk_btcoex: RX l2cap conn rsp, hndl 0x0001, dcid 0x0040, scid 0x0041, result 0x0000
[ 1331.741990] rtk_btcoex: l2cap connection success, update connection
[ 1331.741993] rtk_btcoex: update_profile_connection: is_add 1, profile_index 1
[ 1331.741998] rtk_btcoex: update_profile_connection: phci_conn->profile_bitmap 0x02
[ 1331.742001] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[0] = 0
[ 1331.742005] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[1] = 1
[ 1331.742008] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[2] = 0
[ 1331.742011] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[3] = 0
[ 1331.742014] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[4] = 0
[ 1331.742016] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[5] = 0
[ 1331.742018] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[6] = 0
[ 1331.742019] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[7] = 0
[ 1331.742021] rtk_btcoex: rtk_notify_profileinfo_to_fw: BufferSize 5
[ 1331.742023] rtk_btcoex: rtk_notify_profileinfo_to_fw: NumberOfHandles 1
[ 1331.742024] rtk_btcoex: rtk_notify_profileinfo_to_fw: handle 0x0001
[ 1331.742027] rtk_btcoex: rtk_vendor_cmd_to_fw: opcode 0xfc19
[ 1331.745961] rtk_btcoex: l2cap op 2, len 16, out 1
[ 1331.746100] rtk_btcoex: TX l2cap conn req, hndl 0x0001, PSM 0x0013, scid 0x0042
[ 1331.750739] rtk_btcoex: l2cap op 3, len 20, out 0
[ 1331.750766] rtk_btcoex: RX l2cap conn rsp, hndl 0x0001, dcid 0x0042, scid 0x0042, result 0x0001
[ 1331.751943] rtk_btcoex: l2cap op 3, len 20, out 0
[ 1331.751972] rtk_btcoex: RX l2cap conn rsp, hndl 0x0001, dcid 0x0042, scid 0x0042, result 0x0000
[ 1331.751979] rtk_btcoex: l2cap connection success, update connection
[ 1331.751981] rtk_btcoex: update_profile_connection: is_add 1, profile_index 1
[ 1331.751986] rtk_btcoex: update_profile_connection: phci_conn->profile_bitmap 0x02
[ 1331.751989] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[0] = 0
[ 1331.751993] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[1] = 2
[ 1331.751996] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[2] = 0
[ 1331.751999] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[3] = 0
[ 1331.752002] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[4] = 0
[ 1331.752005] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[5] = 0
[ 1331.752008] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[6] = 0
[ 1331.752010] rtk_btcoex: update_profile_connection: btrtl_coex.profile_refcount[7] = 0
[ 1331.757130] microsoft 0005:045E:02FD.0006: unknown main item tag 0x0
[ 1331.757235] input: Xbox Wireless Controller as /devices/platform/bus@0/3610000.usb/usb1/1-3/1-3:1.0/bluetooth/hci0/hci0:1/0005:045E:02FD.0006/input/input13
[ 1331.759387] microsoft 0005:045E:02FD.0006: input: BLUETOOTH HID v9.03 Gamepad [Xbox Wireless Controller] on 14:13:33:a6:14:72
[ 1331.770094] rtk_btcoex: hci (periodic)inq start
[ 1331.835107] rtk_btcoex: update_hid_active_state: handle 0x0001, interval 12
[ 1331.835120] rtk_btcoex: rtk_notify_profileinfo_to_fw: BufferSize 5
[ 1331.835122] rtk_btcoex: rtk_notify_profileinfo_to_fw: NumberOfHandles 1
[ 1331.835123] rtk_btcoex: rtk_notify_profileinfo_to_fw: handle 0x0001
[ 1331.835125] rtk_btcoex: rtk_vendor_cmd_to_fw: opcode 0xfc19
[ 1333.965805] rtk_btcoex: l2cap op 6, len 16, out 1
[ 1333.965874] rtk_btcoex: TX l2cap disconn req, hndl 0x0001, dcid 0x0041, scid 0x0040
[ 1333.965881] rtk_btcoex: handle_l2cap_discon_req: handle 0x0001, dcid 0x0041, scid 0x0040, dir 1
[ 1333.981113] rtk_btcoex: update_hid_active_state: handle 0x0001, interval 0
[ 1334.061131] rtk_btcoex: update_hid_active_state: handle 0x0001, interval 12
[ 1342.013153] rtk_btcoex: inquiry complete
[ 1342.144382] rtk_btcoex: hci (periodic)inq start

I don’t see joydev.ko and joystick directory in /lib/modules/5.15.122-tegra/kernel/drivers/input path. Maybe this is the reason?

Hi,
For certain joystick, this config has to be enabled:
No data being updated from Joystick in o/p of $sudo jstest /dev/input/js0 (Solved) - #4 by DaneLLL

It may be same for the joystick you are using. May check with the vendor on this.

Thank you for your support. I fixed the problem with new kernel module but could you explain me how CONFIG_LOGITECH_FF could fix it if CONFIG_INPUT_JOYDEV was not set in defconfig file? I will provide the solution for other people but I did it first time, so @DaneLLL please provide a comment if needed:

  1. Follow the Kernel Customization guide.
  2. Between step 3 and 4 add these lines in kernel/kernel-jammy-src/arch/arm64/configs/defconfig file:
CONFIG_LOGITECH_FF=m   # I added it but I'm not sure if it affects joydev.ko file
CONFIG_INPUT_JOYDEV=m
  1. When built, copy kernel_out/kernel/kernel-jammy-src/drivers/input/joydev.ko to Jetson directory /lib/modules/$(uname -r)/kernel/drivers/input.
  2. Trigger module via sudo modprobe joydev.
  3. Connect gamepad and check if /dev/input/js0 is created.

If I use builtin (y) instead of modules (m), should I flash Jetson board again and it will erase all the data since I am using NVME flashing, right?

1 Like

Hi,
We are uncertain why the config is required. Probably it was created for specific vendor devices but not it contains general driver code for common devices. Would see if other users can share experience.

Thanks for the sharing. It will help other users who have similar use-cases.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.