usbview reports the following ID for my Canon MVX100i
camcorder:
Vendor Id: 04a9
Product Id: 3082
I found the entry below in the mailing list archive,
recording a different ID. Don't know if there are
camcorders of the same model but different IDs, but
mine certainly has 04a9:3082.
From: Stephen H. Westin <swestin@us...>
libgphoto2/camlibs/canon canon.c,1.278,1.279
2005-03-24 13:55
...
+ {"Canon:MVX100i", CANON_CLASS_5, 0x04A9, 0x3081,
...
Logged In: YES
user_id=27487
what is the content of /proc/bus/usb/devices ?
Logged In: YES
user_id=682763
Well, this is actually a somewhat tricky question. Several
Canon still cameras have two USB vendor IDs: one for
PTP and one for native Canon protocol. The ID that is already
in canon.c was gleaned from the Web; see
<http://www.qbik.ch/usb/devices/showdescr.php?id=2232>,
for example. I suspect that we have the same situation here;
one ID for PTP, another for Canon mode.
So does gphoto2 work in PTP or Canon mode for you?
It would be a big help if you could run
env LANG=C gphoto2 --debug --summary
and attach the output here.
Logged In: YES
user_id=1234267
Besides four sections for the USB UHCI and EHCI controllers
(which I assume are of no help), there is only the following
one reported by:
cat /proc/bus/usb/devices
T: Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 13 Spd=12
MxCh= 0
D: Ver= 1.10 Cls=ff(vend.) Sub=ff Prot=ff MxPS= 8 #Cfgs= 1
P: Vendor=04a9 ProdID=3082 Rev= 0.01
S: Manufacturer=CANON Inc.
S: Product=Canon DVC
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr=100mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff
Driver=(none)
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=03(Int.) MxPS= 8 Ivl=96ms
output of env LANG=C gphoto2 --debug --summary
Logged In: YES
user_id=1234267
I have not managed to make gphoto2 work with my MVX100i. I
assume, the installed libgpgoto2 version 2.1.5-4 (Debian
sarge) does not support the camcorder directly. I found no
matching entry in /etc/hotplug/usb/libgphoto2.usermap, so
I have tried to tweak it by adding the following two lines:
# Canon MVX100i
libgphoto2 0x0003 0x04a9 0x3082 0x0000
0x0000 0x00 0x00 0x00
0x00
and run the following command with various device IDs:
gphoto2 --usbid "0x04a9:0x3082=0x04a9:0x3072" --shell
gphoto2: {/root} /> ls
But I either get *** Error (-105: 'Unknown model') *** or:
gp_port_write: Resource temporarily unavailable
*** Error ***
PTP I/O error
The output of env LANG=C gphoto2 --debug --summary is rather
long, please find it attached as file (debug.summary).
Logged In: YES
user_id=682763
> I have not managed to make gphoto2 work with my MVX100i. I
> assume, the installed libgpgoto2 version 2.1.5-4 (Debian
> sarge) does not support the camcorder directly.
Yup, but if you're in PTP mode, something ought to happen.
You might check /var/log/messages for something like
> Mar 28 17:47:19 diesel kernel: hub.c: USB new device connect
on bus1/2, assigned device number 99
> Mar 28 17:47:19 diesel kernel: usb.c: USB device 99 (vend/
prod 0x4a9/0x3055) is not claimed by any active driver.
> Mar 28 17:47:22 diesel /etc/hotplug/usb.agent: Setup usbcam
for USB product 4a9/3055/1
> Mar 28 17:47:22 diesel /etc/hotplug/usb.agent: Module setup
usbcam for USB product 4a9/3055/1
> Mar 28 17:56:37 diesel kernel: usb.c: USB disconnect on
device 99
This indicates that hotplug is doing its job.
> I found no
> matching entry in /etc/hotplug/usb/libgphoto2.usermap, so
> I have tried to tweak it by adding the following two lines:
Looks OK to me.
The line
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff
from /proc/bus/usb/devices seems to be saying that this isn't
a PTP camera. I'll change the vendor ID (in canon.c) in CVS.
You can either download from CVS or try making the change
yourself. canon.c needs to contain the line:
CAP_SUP, SL_MOVIE_LARGE, SL_THUMB, SL_PICTURE,
NULL},
Try it and give us another --debug log.
Logged In: YES
user_id=1234267
@swestin
After rebuilding the packages with the "MVX100i"-line added
to canon.c, everything seems to work now. I have attached
another debug log:
env LANG=C gphoto2 --debug --summary &> debug.summary2
Thanks for your help
output of env LANG=C gphoto2 --debug --summary (Canon MVX100i working now)
Logged In: YES
user_id=682763
Thank you very much, both for the feedback and for the log file.
I'll probably regret asking this, but have you tried gphoto2 --capture-image?
Logged In: YES
user_id=1234267
With 'gphoto2 --capture-image' or 'gphoto2
--capture-preview' I get this:
Detected a 'Canon:MVX100i'.
*** Error ***
Error capturing image
*** Error (-1: 'Unspecified error') ***
With 'gphoto2 --capture-movie' or 'gphoto2 --capture-sound'
I get this:
Detected a 'Canon:MVX100i'.
ERROR: Could not capture.
*** Error (-6: 'Unsupported operation') ***
The camcorder only talks to the USB when it is in PLAY mode,
but in this mode it cannot take images. (In CAMERA mode, the
USB link doesn't work). Really good idea, I would never have
thought of this possibility. But as it seems, gphoto can't
convince the camcorder to take pictures in PLAY mode :-(
Let me know if log(s) of the --capture-* command(s) would be
of any help.
Logged In: YES
user_id=682763
> But as it seems, gphoto can't
> convince the camcorder to take pictures in PLAY mode :-(
Well, most PowerShot still cameras need to be in PLAY mode to
capture images under USB control, strangely enough. Could you
attach a --debug log for --capture-image? I don't know the command
code (if any) to capture a movie or sound.
Logged In: YES
user_id=1234267
Attached please find the logfile for:
env LANG=C gphoto2 --debug --capture-image
Thanks for the hint with the PowerShot. I tried with a Canon
Digital Ixus II, and it also takes images under USB control
in PLAY mode.
Logged In: YES
user_id=682763
Sorry, but I don't see the attachment. Could you come back and try
again? Remember to "Check to Upload and Attach a File", as well as
browsing to the file.
Logged In: YES
user_id=1234267
sorry. my fault.
output of env LANG=C gphoto2 --debug --capture-image
Logged In: YES
user_id=682763
This log is for the second attempt; that means we don't try locking the
camera. Could you try this again immediately after powering up your
camera? That would tell me a bit more.
output of env LANG=C gphoto2 --debug --capture-image (just after power up)
Logged In: YES
user_id=1234267
env LANG=C gphoto2 --debug --capture-image &>
debug.capture-image2
just after powering up.
Logged In: YES
user_id=682763
Well, I think you're probably right: we're never goinf to get this
camera to capture a still under computer control. I'll alter CVS
code to reflect this. Thanks for your help!