LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - General (https://www.linuxquestions.org/questions/linux-general-1/)
-   -   How do I copy pictures from my kodak digital camera? [SOLVED] (https://www.linuxquestions.org/questions/linux-general-1/how-do-i-copy-pictures-from-my-kodak-digital-camera-%5Bsolved%5D-805521/)

Dogs 05-02-2010 02:32 PM

How do I copy pictures from my kodak digital camera? [SOLVED]
 
I've been a Linux user for about a year now, and I am very happy to have done so. However, I fear I have overlooked some very important tools that would give me the information I'm looking for.

What I'm trying to do is -

Plug in a USB camera
find /dev/camera-pseudonym
mount /dev/camera-pseudonym /camera
cp * ~/pictures
umount /dev/camera-pseudonym

and then work on adding this camera to /etc/fstab so that it will automatically mount to the usual place.


I don't know how to find the pseudonym.

I can, lsusb and see

Bus 004 Device 009: ID 040a:05c1 Kodak Co. Digital Camera

I can fdisk -l and not see any new partitions (which, with most USB devices with storage, I can usually see the partition listed in fdisk -l)

After these two commands related to search FOR the pseudonym, I draw a blank and resort to manually searching /dev for things that may be useful.

This is difficult, though, because there are dozens of files named usb-something, and they're all very similar to one another, and not related to typical pseudonyms I'm used to (like /dev/usb[0-9], /dev/sd[a-z], etc)


I would like to be able to find the /dev entry based on the ID 040a:05c1 because every USB devices I've tried has been listed by lsusb, and is accompanied by an ID number. I really don't even know what that ID number is for (or when it is assigned, or what assigns it), so I will add that to the list of questions.


How do I find the pseudonym in /dev for any usb device?
What is the ID number in the output from lsusb for?

Dogs 05-02-2010 07:47 PM

Huh.. I guess if I ever do find the answer, then I'll know something that at least 41 other people don't know.


UPDATE --

Device ID numbers as listed by lsusb refer to

manufacturer:model


kodak:digital camera == 040a:05c1

I don't believe this will be useful in finding the pseudonym for the camera.

Also, dmesg gave plenty of info about the device, so I think once I figure out how/where/what the device file is, then I should be able to mount it.

*dmesg snip*
usb 4-1: new full speed USB device using ohci_hcd and address 4
usb 4-1: New USB device found, idVendor=040a, idProduct=05c1
usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 4-1: Product: KODAK EasyShare M863 Digital Camera
usb 4-1: Manufacturer: Eastman Kodak Company
usb 4-1: SerialNumber: M863 0A3354156
usb 4-1: configuration #1 chosen from 1 choice
*dmesg snip*


Assuming no relationship between /dev/usbdev4.1 and usb 4-1:

UPDATE--

Modifying previous assumption based on results from udevadm


^[[3~KERNEL[1272854530.049005] add /devices/pci0000:00/0000:00:12.1/usb4/4-1 (usb)
KERNEL[1272854530.057339] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0 (usb)
KERNEL[1272854530.057357] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.11_ep83 (usb_endpoint)
KERNEL[1272854530.057370] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.11_ep04 (usb_endpoint)
KERNEL[1272854530.057381] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.11_ep85 (usb_endpoint)
KERNEL[1272854530.057392] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/usb_device/usbdev4.11 (usb_device)
KERNEL[1272854530.057402] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/usb_endpoint/usbdev4.11_ep00 (usb_endpoint)
UDEV [1272854530.062672] add /devices/pci0000:00/0000:00:12.1/usb4/4-1 (usb)
UDEV [1272854530.066002] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/usb_device/usbdev4.11 (usb_device)
UDEV [1272854530.066561] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/usb_endpoint/usbdev4.11_ep00 (usb_endpoint)
UDEV [1272854530.122902] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0 (usb)
UDEV [1272854530.123702] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.11_ep83 (usb_endpoint)
UDEV [1272854530.124235] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.11_ep04 (usb_endpoint)
UDEV [1272854530.124712] add /devices/pci0000:00/0000:00:12.1/usb4/4-1/4-1:1.0/usb_endpoint/usbdev4.11_ep85 (usb_endpoint)

It would appear no "block" situations occur in the previous example. When using a tried and true USB device, the output from udevadm monitor contains block assignments and other pertinent info.

UDEV [1272854992.760178] add /devices/pci0000:00/0000:00:12.2/usb1/1-4/1-4:1.0/host6/target6:0:0/6:0:0:0/block/sdc (block)
UDEV [1272854992.817216] add /devices/pci0000:00/0000:00:12.2/usb1/1-4/1-4:1.0/host6/target6:0:0/6:0:0:0/block/sdc/sdc1 (block)
UDEV [1272854992.892895] change /devices/pci0000:00/0000:00:12.2/usb1/1-4/1-4:1.0/host6/target6:0:0/6:0:0:0/block/sdc (block)

So, why not for the camera?

UPDATE --

Perhaps it is because there are no drivers associated with the device...

as per /proc/bus/usb/devices ---

T: Bus=04 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 16 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=16 #Cfgs= 1
P: Vendor=040a ProdID=05c1 Rev= 1.00
S: Manufacturer=Eastman Kodak Company
S: Product=KODAK EasyShare M863 Digital Camera
S: SerialNumber=M863 0A3354156
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=06(still) Sub=01 Prot=01 Driver=(none)
E: Ad=83(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=04(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=85(I) Atr=03(Int.) MxPS= 64 Ivl=16ms


Likely solution is: find driver, use it, be happy.


UPDATE --

Likely solution turned out to be a bit off, but lead to the right answer.

The right answer, ladies and gentlemen, was gphoto2.


bash-3.1# gphoto2 -p 194-203

Downloading '100_0340.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0340.JPG
Downloading '100_0341.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0341.JPG
Downloading '100_0342.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0342.JPG
Downloading '100_0343.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0343.JPG
Downloading '100_0344.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0344.JPG
Downloading '100_0345.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0345.JPG
Downloading '100_0346.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0346.JPG
Downloading '100_0347.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0347.JPG
Downloading '100_0348.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0348.JPG
Downloading '100_0349.JPG' from folder '/store_00010001/DCIM/100KM863'...
Saving file as 100_0349.JPG


I win!

fbsduser 05-25-2010 01:26 AM

What you ran into there boy is a camera that uses PTP (Picture transfer protocol) which is why you didn't see a block device. Cameras using the PTP protocol doesn't use the standard mass storage system hence they doesn't mount as a volume.

H_TeXMeX_H 05-25-2010 07:59 AM

Here's the two commands that I use:

get files:

Code:

gphoto2 --get-all-files
delete files from camera (be careful, because it will delete all files from the camera, well it beats having to do it with the camera interface):

Code:

gphoto2 -RD


All times are GMT -5. The time now is 05:13 AM.