ArduCam USB stops working

I have an ArduCam USB 2.0 camera (SKU B0292), connected to a Xavier AGX DevKit. I’m using JetPack 4.5 with the Libv42l_nvargus patch from here Libv4l2_nvargus.so source code - #19 by JerryChang

The camera appears to work, for instance with Cheese, but then randomly stops working after some time. I can see the camera with lsusb, but Cheese doesn’t find the camera anymore. The only way to make the camera work again is to unplug it and replugged it. I tried to disable USB autosusped with usbcore.autosuspend=-1 in /boot/extlinux/extlinux.conf but it doesn’t help. Any suggestions?

Hi,
Are you on Jetpack 4.5? If there is no strong reason to stay on 4.5, we would suggest upgrade to 4.6.

@DaneLLL we can’t upgrade to 4.6 for the moment, as our target system has a custom firmware provided by the carrier board manufacturer, which is based on JetPack 4.5.

Hi,
Please try this:
Memory Leak (Alloc/free mismatch) in Tegra multimedia API (encoder) - #6 by DaneLLL

So that libv42l_nvargus is not loaded. Please try and check if it helps.

@DaneLLL disabling libv42l_nvargus didn’t seem to make any difference: the camera still works when plugged in, but it stops working after some random amount of time.

After some troubleshooting, I noticed that after the webcam stops working, a bunch of these messages appear in dmesg:

[ 1174.464915] uvcvideo: Non-zero status (-71) in video completion handler.
[ 1174.466996] uvcvideo: Non-zero status (-71) in video completion handler.
[ 1174.468795] uvcvideo: Non-zero status (-71) in video completion handler.
[...]

And after some additional time I noticed this one (close entries added for context):

[12474.476921] tegradc 15200000.nvdisplay: unblank
[12474.478510] tegra_nvdisp_handle_pd_enable: Unpowergated Head0 pd
[12474.478774] tegra_nvdisp_handle_pd_enable: Unpowergated Head1 pd
[12474.490242] Parent Clock set for DC plld3
[12474.494276] tegradc 15200000.nvdisplay: hdmi: tmds rate:154000K prod-setting:prod_c_hdmi_111m_223m
[12474.517762] tegradc 15200000.nvdisplay: unblank
[12474.517778] tegradc 15210000.nvdisplay: blank - powerdown
[12474.517787] tegradc 15220000.nvdisplay: blank - powerdown
**[12489.449588] uvcvideo: Failed to submit URB 0 (-2).**
[12581.868761] tegradc 15200000.nvdisplay: blank - powerdown
[12581.935189] extcon-disp-state external-connection:disp-state: cable 48 state 0 already set.

Hi,
So it may not be due to libv42l_nvargus.so. Could you try to connect Xavier type-A port to a USB hub with external power supply, and then connect to the camera? Would like to know if it is more stable when there is an external power supply to the camera.

@DaneLLL I tried that and the camera froze again. However, this time I didn’t see any error in dmesg till I unplugged the frozen camera. Is there any other log that may help figure out what’s going on?

Sorry for the late response, have you managed to get issue resolved or still need the support? Thanks

@kayccc thank for the follow-up. I haven’t resolved the issue, but I now believe that is not specific to the Jetson. I reproduced the same issue on a Linux laptop.

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