No data from Joystick Logitech-f710

Hello Everyone,

I am trying to connect the Logitech-f710 control to the Jetson Orin nano. I am using the jetpack 6.0 but the control appears in the /dev/bus/usb/001/ not in the /dev/input/j* as many users comment. Also I read that can be something with this issue here but there is not aswer yet. Does anyone know what can I do in this case ? Thank you in advance

Hi,
A user has shared some suggestion:
Jetpack 6.0 - issue with xbox gamepad - #4 by as_lab

Please take a look and give it a try.

Hi,

I was trying to follow the Kernel Customization as the user mentioned. But I facing a problem with the part of build a kernel:

$ export CROSS_COMPILE_AARCH64_PATH=<toolchain-path>
$ export CROSS_COMPILE_AARCH64=<toolchain-path>/bin/aarch64-buildroot-linux-gnu-

What is the specific aarch64-builroot-linux-gnu-. Might be I am missing something but I do not get it. Here there are my aarch64-builroot-linux-gnu-:

image

Which should I choose ?

Thank you for your help

Normally when the kernel is built the compiler uses “gcc”. When you set cross compile environment variables, then the compiler will be prefixed with that content. As an example, let’s pretend you have:
/usr/lib/aarch64/bin/

Now, let’s pretend all of those files begin with the name “aarch64-buildroot-linux-gnu-”, but otherwise that directory contains gcc, ld, objdump, and all of the usual programs that a compile might need. This means that when the rules want gcc, instead it will prepend and look for aarch64-buildroot-linux-gnu-gcc because it asked for prepend plus gcc. All of those will end up as the cross tools via macro substitution of the prefix. You don’t specify a specific program in that directory, you specify only the prefix that makes names like “gcc” end up as “aarch64-buildroot-linux-gnu-gcc”. It will “do the right thing” automatically.

There are multiple macro substitutions going on, but eventually it will get to “CROSS_COMPILE=...some full path ending aarch64-buildroot-linux-gnu-”.

@linuxdev Thank you for your reply. I will try this and let you know if this can fix the part of the Joystick.

Did this work for you or were you able to get it to work? I am also unable to see the joystick in /dev/input

It shows up in dmesg and lsusb

Hi I Followed the solution here but is not working to me. what I did:

  1. I Followed the Kernel Customization until point 3
  2. After the point 3 I added these lines in the 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. Then I did the point 4 in the Kernel Customization which is:
./nvbuild.sh -o $PWD/kernel_out
  1. After that I copy the file kernel_out/kernel/kernel-jammy-src/drivers/input/joydev.ko to Jetson directory /lib/modules/$(uname -r)/kernel/drivers/input as the provided solution mentioned.
  2. Then I run sudo depmod -a to update modules dependencies (trigger the module did not work without this)
  3. Finally I trigger the moduel using sudo modprobe joydev

However, I am still do not getting the Joystick info I just can see it with lsusb and ls /dev/bus/usb/001/013 but is not working as js0 what can I do in this case ?

do i have to reflash the jetson for this i did’nt understand fron the documentation can any give a step by step guide for this
i am using jetson orin nano with jetpack 6.0

Hi,
Yes, you have to re-flash the system. Please do
[1] Follow Quick Start section to download the system files for flashing Orin Nano developer kit. And follow the steps to Orin Nano developer kit.

Quick Start — NVIDIA Jetson Linux Developer Guide 1 documentation

[2] So now you have Linux_for_Tegra folder which is the default Jetpack release. And you can run initrd command to flash Orin Nano developer kit. Assume it is

~/jp61/Linux_for_Tegra

Please create a folder

~/jp61/src

Download source code to the folder and run

~/jp61/src$ sudo tar xpf public_sources.tbz2

And go to the directory for building kernel

~/jp61/src/Linux_for_Tegra/source

[3] You can follow the guidance to build kernel and NVIDIA oot modules

Kernel Customization — NVIDIA Jetson Linux Developer Guide 1 documentation

The path of installation is

$ export INSTALL_MOD_PATH=~/jp61/Linux_for_Tegra/rootfs/

After building/installing kernel and oot modules, please remember to do

$ cd ~/jp61/Linux_for_Tegra
$ sudo ./tools/l4t_update_initrd.sh

For Orin Nano developer kit, you shall not need to rebuild DTBs.

[4] Go to the folder and see if you can flash Orin Nano developer kit with self-built kernel image. Same initrd command should work

~/jp61/Linux_for_Tegra

[5] So now you can build and flash Orin Nano developer kit. And then you can enable/disable kernel cofigs for your use-case by modifying

arch/arm64/configs/defconfig
arch/arm64/configs/tegra_prod_defconfig

And re-do step [3][4]