| 
 | 
|  | 
| 
 | 
| This article is available in: English Castellano ChineseGB Deutsch Francais Italiano Nederlands Portugues Turkce | 
| 
 ![[Photo of the Author]](../../common/images/Guido-S.gif)  by Guido Socher (homepage) About the author: Guido loves Linux not only because it is fun to discover the great possibilities of this systems but also because of the people involved in its design. Content: | 
![[Illustration]](../../common/images/article240/dimage_linux.gif) 
Abstract:
    Recently I decided to buy a new digital camera. As usual I looked
    for cameras supported by Linux first. I never buy any hardware
    unless it is supported by Linux. I generally recommend that
    strategy to everybody, even if they still have another operating
    system installed. It gives you more freedom and flexibility. You
    will not need to buy new hardware when one day you decide to work
    only with Linux. www.gphoto.org provided the answer: Yes, Minolta
    Dimage 5, one of the cameras that I had in mind, was fully
    supported.
     I bought the Dimage 5 and wanted to get the images out off the
    camera into the computer but surprise, surprise: All Linux sites
    talking about Dimage 5 said it would work with Linux but I could
    not find a single word on how to get it working @!?%! 
     That was the moment I decided that I will write a short article
    about Linux and Minolta Dimage.
    
UNUSUAL_DEV( 0x0686, 0x4008, 0x0001, 0x0001,
     "Minolta",
     "Dimage 5",
     US_SC_SCSI, US_PR_BULK, NULL, US_FL_START_STOP ),
     UNUSUAL_DEV( 0x0686, 0x4006, 0x0001, 0x0001,
     "Minolta",
     "Dimage 7",
     US_SC_SCSI, US_PR_BULK, NULL, US_FL_START_STOP ),
    
That was the hardest part! The rest is straight forward. I informed the maintainer of the file about these entries. Hopefully some future kernel version will have those lines included.
Now recompile the kernel and make sure that you have selected the following options in addition to the things that you need normally for you hardware.# General setup
    CONFIG_HOTPLUG=y
    
    # SCSI support
    CONFIG_SCSI=y
    CONFIG_BLK_DEV_SD=y
    CONFIG_SD_EXTRA_DEVS=40
    CONFIG_SR_EXTRA_DEVS=4
    CONFIG_CHR_DEV_SG=m
    CONFIG_SCSI_CONSTANTS=y
    CONFIG_SCSI_LOGGING=y
    
    # File systems
    CONFIG_FAT_FS=m
    CONFIG_VFAT_FS=m
    
    # USB support
    CONFIG_USB=y
    CONFIG_USB_DEVICEFS=y
    
    # USB Controllers
    CONFIG_USB_UHCI=m
    CONFIG_USB_UHCI_ALT=m
    CONFIG_USB_OHCI=m
    
    # USB Device Class drivers
    CONFIG_USB_STORAGE=m
    CONFIG_USB_STORAGE_DATAFAB=y
    CONFIG_USB_STORAGE_DPCM=y
    CONFIG_USB_STORAGE_SDDR09=y
    CONFIG_USB_STORAGE_JUMPSHOT=y
    
#create links in /usr/include for:
     scsi -> ../src/linux/include/scsi
     asm -> ../src/linux/include/asm-i386
     linux -> ../src/linux/include/linux
    
     # configure:
     make xconfig
     # compile:
     make dep
     make clean
     make bzImage
     make modules
     make modules_install
    
     cp /usr/src/linux/arch/i386/boot/zbImage /boot/vmlinuz-2.4.17
     cp /usr/src/linux/System.map /boot/System.map-2.4.17
     cp /boot/System.map-2.4.17 /boot/System.map
     cp /usr/src/linux/.config /boot/Config-2.4.17
    
     #edit /etc/lilo.conf
    
     # run lilo (or grub if you use it)
     /sbin/lilo
    
     #reboot the computer
    
Thanks to Seth W. Klein for pointing out that it is no longer best to make symlinks from /usr/include. For a detailed explanation see this mail from Linus.
modprobe usb-uhci
     modprobe usb-storage
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3
    Spd=12 MxCh= 0
     D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
     P: Vendor=0686 ProdID=4008 Rev= 0.01
     S: Manufacturer=MINOLTA DIMAGE CAMERA
     S: Product=DIMAGE CAMERA
     C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
     I: If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50
    Driver=usb-storage
     E: Ad=03(O) Atr=02(Bulk) MxPS= 16 Ivl= 0ms
    
mount -t usbdevfs /proc/bus/usb
For those who are curious what the numbers on the driver line in the devices file mean a short explanation. The camera tell the computer what kind of protocol it speaks:Cls=08(stor.) -> Class usb storage
    Sub=06 -> USB sub class 06= transparent SCSI =US_SC_SCSI (see
    protocol.h from kernel sources)
    Prot=50 -> protocol usb bulk transfer only =US_PR_BULK (see
    transport.h from kernel sources)
    
fdisk -l /dev/sda
    
     Disk /dev/sda: 4 heads, 32 sectors, 244 cylinders
     Units = cylinders of 128 * 512 bytes
    
     Device Boot Start End Blocks Id System
     /dev/sda1 * 1 245 15664 1 FAT12
    
/dev/sda1 /mnt/camera0 vfat rw,noauto,user 0 0
Create the directory /mnt/camera0 and make it world writable:mkdir /mnt/camera0
    chmod 777 /mnt/camera0
    
    chmod 666 /dev/sda1
mount /mnt/camera0
and get your pictures from the directory tree below /mnt/camera0!cfimageget .
| 
 | 
| Webpages maintained by the LinuxFocus Editor team © Guido Socher, FDL LinuxFocus.org Click here to report a fault or send a comment to LinuxFocus | Translation information: 
 | 
2002-07-21, generated by lfparser version 2.29