Re: Error reading USB camera in BeagleBone with ARM Debian

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Joel,

On Wed, Oct 24, 2018 at 07:19:01PM +0200, Josep M. Mirats Tur wrote:
> Hi Joel,
> 
> The camera I have provides 640x480 as its lowest resolution.
> Hope the issue can be solved.

If your issue was same as mine - the uvc layer holds spinlock for too
long in urb->complete() which prevents musb to schedule next IN
transaction on time, it won't be that easy to solve. :( I had a try last
year, but the solution caused other problem, then haven't looked at this
issue since then.

Regards,
-Bin.


> Regards
> 
> On Wed, Oct 24, 2018 at 5:31 PM Joel Pepper <joel.pepper@xxxxxxxxxxxxxx> wrote:
> >
> > Hi Joseph, Hi Bin,
> >
> > I am currently investigating a bug with the BeagleBoneBlack (which also
> > uses the AM335x) and a Logitech Webcam, which might be connected.
> >
> > I am using a Logitech C270 and if I set the format to YUYV and the
> > framesize to 544x288 or larger (including specifically 640x480), any
> > ioctl VIDIOC_DQBUF will hang indefinetely. This might be the underlying
> > source of the timeout Joseph encountered.
> >
> > Joseph,
> >
> > have you tried setting the camera to the lowest resolution it can go? If
> > low resolutions work, but higher ones, like 640x480 don't, we might be
> > chasing the same problem. If not, I will look into my problem separately
> > and open a new thread.
> >
> >
> > Bin,
> >
> > my case happened using ISOC transfers, but my preliminary investigation
> > has shown lots of ISOC traffic flowing, apparently successfuly from the
> > camera to the BBB, which makes me suspect a problem closer to the
> > v4l2/musb boundary, but I'm still reading into the code. If you would
> > like to investigate that further, the C270 is rather affordable, but I
> > will gladly provide any details, usbmon captures etc. that you require.
> >
> >
> > Cheers,
> >
> > Joel Pepper
> >
> > On 19.10.2018 20:06, Josep M. Mirats Tur wrote:
> > > Hi Bin,
> > >
> > >> Do you know what is the usb throughput required in your test case? for
> > >> example image format, resolution, frame rate? Is the usb data transfer
> > >> bulk or isoch?
> > > Yes, the image format is 640 x 480
> > > The camera can run up to 30fps, although I do not need it and set up it to 5
> > > The Usb data transfer is "bulk"
> > >
> > > Regards
> > > Josep M.
> > >
> > > On Fri, Oct 19, 2018 at 8:01 PM Bin Liu <b-liu@xxxxxx> wrote:
> > >> On Fri, Oct 19, 2018 at 07:48:20PM +0200, Josep M. Mirats Tur wrote:
> > >>> Hi,
> > >>>
> > >>> Yes, this would be the link:
> > >>> http://shop-orbbec3d-com.3dcartstores.com/Astra-Mini_p_40.html
> > >> Okay, It is about $160, a bit more than my bugdet...
> > >>
> > >>> In the meanwhile I'll check my application with other board.
> > >>>
> > >>> Do you think there might be a problem with the processor frequency?
> > >>> I've also crossing e-mails with ORBBEC engineers, and their only
> > >>> answer has been to suggest using an ARM processor capable of 1.8GHz
> > >>> Beagle is capable of 1GHz
> > >>> But I can not see why is this so important as long as USB is well
> > >>> synchronized and interrupts and driver work well. (Actually I'm not
> > >>> familiar with ARM USB system, is just intuition)
> > >> I guess the cpu clock requirement is only to ensure the whole system is
> > >> capable to process the usb packets, depending on the image resolution,
> > >> fps, and any other data processing. But lower cpu clock shouldn't cause
> > >> such problem that the usb controller generates rx interrupt but fifo has
> > >> no usb packet. If ARM cannot keep up, which doesn't send IN requests on
> > >> time, the camera should just drop data.
> > >>
> > >> Do you know what is the usb throughput required in your test case? for
> > >> example image format, resolution, frame rate? Is the usb data transfer
> > >> bulk or isoch?
> > >>
> > >> Regards,
> > >> -Bin.
> >
> >



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux