[cpia] Re: 2 cameras streaming at once?

Peter Pregler Peter.Pregler@risc.uni-linz.ac.at
Tue, 12 Sep 2000 11:25:51 +0200


On Tue, Sep 12, 2000 at 11:06:04AM +0200, WJ Vlothuizen wrote:
> The reason why I would favor streaming and double buffering is that I
> use the camera's to provide vision for a robot, where I want a high
> update rate and every bit of performance counts. I entirely agree with
> you that this is not the way most people will use these cameras. Instead
> of a interrupt driven scheme I would envision the use of a kernel thread
> that works when incoming data and an outgoing buffer are available, and
> otherwise goes to sleep.

Okay, I see now that the two things are independant. The design I had
finally in mind would have used a kernel thread too. But if you drive
the kernel-thread by polling or by interrupts is of cause
independent. So go ahead! :) One side-note, in v4l there are no real
API-hooks to control the start and stop of streaming. If you really
start coding please contact me and I can give you the details about
where and why this matters.

> Further experiments on my side show that the driver *always* fails after
> a hub disconnect. I don't know whether the CPiA-driver could sense such
> a disconnect and reinitialize the camera, but the disconnect should not
> be there in the first place. After some reading on www.usb.org I removed
> the EMI-control components on the USB formcard: this clearly improved
> the results, but the problem still remained. I have never seen a
> disconnect when using one camera, so there seems to be some mutual
> electrical influence (I don't think this is a software issue).

I did yesterday some tests with disconnecting the usb-camera and had
in no time a kernel-ooops. That was with the 2.2.16 usb
backport. However I have not looked closer at it. So there are
definitly software issue around. The question is if this the
cpia-driver or the hub.

Have fun, Peter

-- 
Email: Peter.Pregler@risc.uni-linz.ac.at
WWW:   http://www.risc.uni-linz.ac.at/people/ppregler
ICQ:   61011460