Unexpected Camera Device Removal

2 views
Skip to first unread message

BruteForce

unread,
Nov 9, 2006, 9:03:04 AM11/9/06
to FireAPI
The following steps reproduce a problem with ubCore 4.x or later, where
a camera device is removed unexpectedly:

(1) PC has two adapters installed and connected to each other with a
1394 cable.
(2) Camera 1 is plugged in adapter A.
(3) Camera 2 is plugged in adapter B.
(4) The cameras appear in Windows Device Manager and are visible in the
Fire-i application.
(5) Adapter B gets disconnected from adapter A.
(6) One or both cameras disappear from Windows Device Manager.

The behavior can be reproduced in many variations but the essentials
are the same. One adapter gets disconnected from the 1394 bus and with
no apparent reason the camera devices disappear.
This behavior does not affect you if you are using Firei.DLL as your
programming interface.

This situation occurs because adapter A and adapter B don't know that
they are on the same 1394 bus. So on step 5 above, adapter A loses
sight of camera 2 and adapter B loses sight of camera 1, so the driver
removes the camera devices from Device Manager. Although adapter A sees
camera 1, this is an already known device to adapter A so it takes no
action and of course it is unaware of the removal operation that
adapter B performs.

This bug will be corrected in future versions of ubCore. Basically the
ability to detect which of the installed adapters belong to the same
bus will be added to the drivers and this situation will be corrected
as a pleasant side-effect.

Detecting with minimum "cost" all the subsets of installed adapters
that are connected to each other is a non-trivial problem. Minimum cost
is a prerequisite for this operation because it takes place in the
bus-reset interrupt handling routines of the drivers.

If you believe that this problem heavily affects you or you would like
to see the common-bus-detection feature soon please contact
sup...@unibrain.com.

For the time being, if you are working with the DirectShow interfaces
and you need the camera devices it is suggested that disconnect and
reconnect the cameras every time you break the bus topology in a way
that makes two adapters that were on the same bus become disconnected.

Dimitris Staikos
Unibrain

Reply all
Reply to author
Forward
0 new messages