I wanted to connect my Xavier to a touchscreen I found online and everything works great, but after around 2 min the touchscreen stops working and but the screen is still working.
Does anyone have a clue what the reason for this could be?
The Touchscreen is this:
Or does anyone know a touchscreen that is reliable working with the xavier?
I wonder if perhaps the USB is thinking there is no activity and timing out, then going to low power/suspend mode. If you run “dmesg --follow” from some other connection (e.g., ssh or serial console), and note the touch component failure, is there new log in the “dmesg --follow” mentioning a USB low power or suspend?
If you add “usbcore.autosuspend=-1” to the “/boot/extlinux/extlinux.conf” file’s “APPEND” key/value pair (with your content being separated from other content by a space character), then boot and verify “cat /proc/cmdline” contains “usbcore.autosuspend=-1”, does the issue go away?
Hi,
Thanks for your tip.
Unfortunately this wasn’t the solution.
Running dmesg --follow didn’t show any change when the problem occured. I tested the usbcore.autosuspend change nonetheless, but didn’t improve the situation.
Any other idea what it might be?
Since there are no messages, and since removing usbcore.usbautosuspend (via =-1) did not help, perhaps looking at a different log would help. If you are in the GUI of your touchscreen, and run command “echo $DISPLAY”, then it will probably show as either “:0” or “:1”. The log files “/var/log/Xorg.#.log” will be used based on the “0” or “1” (if “:0”, then “/var/log/Xorg.0.log” is your log). Prior to the failure occurring, run this (preferably from serial console, possibly from ssh, but definitely not from the GUI): sudo tail -f /var/log/Xorg.0.log
The log should remain silent until the failure occurs. If there is still no output, then the problem is quite different than one where Xorg realizes the touch input device is missing or disabled. What shows up in Xorg logs as the problem hits?
FYI, X has a modular plugin system. Graphics is from an NVDIA plugin, but in this case the USB mouse disconnected (XInput). Following disconnect, the libinput was unloaded (there was no longer a device, so this is expected). Note that (as mentioned by @WayneWWW) libinput goes by udev events to determine what is present or missing, but it is out of the control of the X server to know this information (X is just doing what it was told to do by a udev event, and udev was probably just going by what it saw happen in USB). Now your real task is to figure out why udev dropped the mouse…if you can answer this, then you will know what is happening to the touch screen.
If there is a USB error, then probably at the same moment there would be a log note in “dmesg” (e.g., if you “tail -f” Xorg logs and “dmesg --follow”, then both should print a message at the same moment).
There are a lot of reasons why a USB device might disconnect. One is from incorrect handling of a low power suspend mode, another is marginal signal quality (and dmesg might distinguish among them). For signal quality there could be some intermittent noise source in the environment, or the traces could be poorly designed.
Could you please describe how exactly you have solved the issue with touchscreen?
I am using Jetson Nano and 7 inch capacitive touchscreen. The touchscreen only works for the first 2 minutes after the start, then no reaction from it.