We have a very rare error. We use an USB HID capacitive touch panel. This basically works well, but it rarely happens, once in about 500 starts that it doesn’t work. How can we find this error? Is there somewhere to check whether the device is properly connected or whether the driver is working properly? It works again after a reboot. This has happened to several devices, it is not a unique error. System parameters: Apalis iMX6Q 1GB, V1.1B.
WEC 2013 1.4
Thank you for your help.
Is this issue reproducible on the latest OS release (v1.8)? There have been several fixes related to USB since the 1.4 release.
Ok, I’ll give it a try.
I have one more information, when the error occurs, most of the time an Unidentified USB Device window appears in the background, but this does not always happen. So it could be some kind of driver loading error.
If you have installed additional drivers for your touch panel and these drivers are located in /FlashDisk, be aware that the internal flash filesystem is mounted asynchronously during boot. This means /FlashDisk might not be available while USB enumeration is happening, so the required driver may not be accessible at that time. To address this, you can either use synchronous driver loading or add a dependency to your USB touch driver’s registry settings, as described here.
Thank you for the reply. I will try this option as well.
By the way, we use this usb touch driver: USB HID Touch | Toradex Developer Center
I tried with the v1.8 release and with the [HKEY_LOCAL_MACHINE\Drivers\BuiltIn\HCD_HSH1\DependsOn]
“FlashDisk”=“Drivers\Builtin\Wait4FlashDisk” option, but in both cases, the error occurred, but now the unidentified usb device window did not appear.
Since this is a very rare error and only occurs when the system is started, it would also be a good solution for me if it could somehow be detected that the touch is not working or not connected and then restart the system.
You can use the FindFirstDevice/FindNextDevice functions in your app to check if a particular USB device has been enumerated. However, I would recommend addressing the root cause of your problem. Could you please enable debug output over Serial and collect boot logs for both scenarios - when the touch function works correctly and when it does not? Could you also export and share the entire [HKLM] hive?
Thank you for your answer. I am attaching the good and bad startup debug output and the registry settings.
DebugOutput_bad.log (3.4 KB)
DebugOutput_good.log (3.1 KB)
registry.reg (924.7 KB)