Linux UVC driver bandwidth issues

  1. Where did you get the camera module(s)?
    Amazon

  2. Model number of the product(s)?
    https://www.arducam.com/product/8mp-imx179-mini-usb-ub0240/

  3. What hardware/platform were you working on?
    Armbian bullseye

  4. Instructions you have followed. (link/manual/etc.)

  5. Problems you were having?
    Trying to run multiple cameras MJPEG streams, they over-report the bandwidth needed, and so UVC Linux drivers don’t allow usage of more than one camera. This is a KNOWN issue that most UVC cameras over-report the bandwidth that they need, and so don’t make room for multiple cameras on the same USB 2.0 bus.

  6. The dmesg log from your hardware?

  7. Troubleshooting attempts you’ve made?

  8. What help do you need?
    Arducam to help with setting the firmware for MJPEG streams to request the actual bandwidth needed. Or for them to keep the UVC drivers up to date with their USB types in static const struct usb_device_id uvc_ids struct in uvc_driver.c « uvc « usb « media « drivers - kernel/git/torvalds/linux.git - Linux kernel source tree, so that it will use the UVC_QUIRK_FIX_BANDWIDTH quirks so that MJPEG compressed streams will be separately calculated to (see uvc_video.c?h=v6.9-rc3, line 203->238) based on estimates, overriding what comes in from the firmware.

Nothing? Arducam doesn’t want to fix their firmware? Or do I need to just not buy from them ever again, since they won’t do things correctly?