<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
<font face="sans-serif">Hi all<br>
<br>
I spent some time in 2006 working with Wittawat Yamwong to get the
Canon MultiPASS MP730 (US branding) or Canon imageCLASS MP730
(Asia-Pacific branding) supported in the pixma driver. Sadly, I had to
move house at the time, the project also moved to a new mailing list
and then life got in the way and I never had time to get back onto it
until now.<br>
<br>
The driver worked for about 90% of functionality up until pixma-0.12.1
but something broke in 0.12.2. I managed to track it down to this diff:<br>
</font><br>
<tt>--- pixma_mp730.c.orig  2006-08-27 07:37:16.000000000 +1000<br>
+++ pixma_mp730.c       2009-03-20 03:28:16.000000000 +1100<br>
@@ -533,7 +533,7 @@<br>
        &amp;pixma_mp730_ops,  /* ops */            \<br>
        dpi, dpi,          /* xdpi, ydpi */     \<br>
        w, h,              /* width, height */  \<br>
-        PIXMA_CAP_GRAY|PIXMA_CAP_EVENTS|cap                      \<br>
+        PIXMA_CAP_GRAY|/*PIXMA_CAP_EVENTS|*/cap                      \<br>
 }<br>
 const pixma_config_t pixma_mp730_devices[] = {<br>
 /* TODO: check area limits */<br>
</tt><font face="sans-serif"><br>
<br>
Applying the same patch to pixma-0.13.1 also makes it work using the
pixma test utility 'scan', but not when using the sane backend as a
library. The error message is coming out of pixma_io_sanei.c:330 which
only gets rolled into the libsane-pixma.so.1.0.19 library. I have tried
using gdb to set a breakpoint and get a backtrace but gdb makes baby
jesus cry.<br>
<br>
Can anyone help by explaining how to debug a shared lib and/or tell me
why the pixma_write() function gets a count of 0?<br>
<br>
Thanks,<br>
Wade.<br>
<br>
</font><br>
<tt>helot mp150-0.12.1 # ./scan -d 100 -r 150 -m color -x 0 -y 0 -w 10
-h 20 -W -F experiment /tmp/foo.pnm<br>
[pixma-0.12.1] Scanning devices under
/dev/bus/usb                                                    <br>
Connected
scanner(s):                                                                                
<br>
1: Canon MultiPASS MP730
(SN:04A9262F_00000000F972)                                                  
<br>
[pixma-0.12.1] pixma_open(): Canon MultiPASS
MP730                                                    <br>
[pixma-0.12.1] Set interface
1,0                                                                     
<br>
[pixma-0.12.1] Found endpoints: 3 (OUT), 84 (IN), 85
(INTR,64)                                        <br>
Scan mode:
color                                                                                     
<br>
DPI:      
150x150                                                                                   
<br>
Offset:    (0,0) = (0.00cm,
0.00cm)                                                                  
<br>
Dimension: 59x118 = 1.00cm x
2.00cm                                                                  
<br>
Size:      21 kiB (uncompressed,
raw)                                                                 <br>
Source:   
Flatbed                                                                                   
<br>
Scanning...                                                                                          
<br>
[pixma-0.12.1]                                                                                       
<br>
[pixma-0.12.1] pixma_scan():
start                                                                   
<br>
[pixma-0.12.1]   line_size=180 image_size=21240 channels=3
depth=8                                    <br>
[pixma-0.12.1]   dpi=150x150 offset=(0,0)
dimension=59x118                                            <br>
[pixma-0.12.1]   gamma_table=0x60d318
source=0                                                        <br>
[pixma-0.12.1] raw_width =
60                                                                        
<br>
[pixma-0.12.1] OUT  T=0.266
len=10                                                                   
<br>
[pixma-0.12.1]  00000000:f3 20 00 00 00 00 00 00  0c
00                                               <br>
[pixma-0.12.1]                                                                                       
<br>
[pixma-0.12.1] IN   T=0.269
len=14                                                                   
<br>
[pixma-0.12.1]  00000000:06 06 03 01 00 02 03 00  02 00 00 00 00
f5                                   <br>
[pixma-0.12.1]                                                                                       
<br>
[pixma-0.12.1] Current status: paper=1 cal=0
lamp=0                                                   <br>
[pixma-0.12.1] OUT  T=0.270
len=20                                                                   
<br>
[pixma-0.12.1]  00000000:cf 60 00 00 00 00 00 00  0a 00 01 00 00 00 00
00                             <br>
[pixma-0.12.1]  00000010:00 00 00
ff                                                                  <br>
[----------snipped-------------]<br>
[pixma-0.12.1] Current status: paper=1 cal=0
lamp=0                                                   <br>
[pixma-0.12.1] OUT  T=2.337
len=20                                                                   
<br>
[pixma-0.12.1]  00000000:cf 60 00 00 00 00 00 00  0a 00 01 00 00 00 00
00                             <br>
[pixma-0.12.1]  00000010:00 00 00
ff                                                                  <br>
[pixma-0.12.1]                                                                                       
<br>
[pixma-0.12.1] IN   T=2.341
len=2                                                                    
<br>
[pixma-0.12.1]  00000000:06
06                                                                       
<br>
[pixma-0.12.1]                                                                                       
<br>
[pixma-0.12.1]
pixma_read_image():completed                                                          
<br>
100% done (21240 bytes
written)                                                                      
<br>
[pixma-0.12.1] pixma_close(): Canon MultiPASS
MP730                                                   <br>
<br>
<br>
helot mp150-0.12.2 # ./scan -d 100 -r 150 -m color -x 0 -y 0 -w 10 -h
20 -W -F experiment /tmp/foo.pnm<br>
[pixma-0.12.2] Scanning devices under /dev/bus/usb<br>
Connected scanner(s):<br>
1: Canon MultiPASS MP730 (SN:04A9262F_00000000F972)<br>
[pixma-0.12.2] pixma_open(): Canon MultiPASS MP730<br>
[pixma-0.12.2] Set interface 1,0<br>
[pixma-0.12.2] Found endpoints: 3 (OUT), 84 (IN), 85 (INTR,64)<br>
<br>
########## Page 1 ###########<br>
Scan mode: color<br>
DPI:       150x150<br>
Offset:    (0,0) = (0.00cm, 0.00cm)<br>
Dimension: 59x118 = 1.00cm x 2.00cm<br>
Size:      21 kiB (uncompressed, raw)<br>
Source:    Flatbed<br>
Press scan button to begin or Ctrl-C when finished!<br>
[pixma-0.12.2] INTR T=0.336 len=8<br>
[pixma-0.12.2]  00000000:00 00 00 00 00 08 00 00<br>
[pixma-0.12.2]<br>
[pixma-0.12.2] send_time() is not yet implemented.<br>
[pixma-0.12.2] INTR T=9.332 len=8<br>
[pixma-0.12.2]  00000000:00 00 00 00 00 08 00 00<br>
[pixma-0.12.2]<br>
[pixma-0.12.2] send_time() is not yet implemented.<br>
[pixma-0.12.2] pixma_close(): Canon MultiPASS MP730<br>
<br>
<br>
helot testsuite # PIXMA_EXPERIMENT=1 SANE_DEBUG_PIXMA=10 scanimage -d
pixma:04A9262F_00000000F972 --resolution 150 --mode Color --format pnm
-x 10 -y 20 &gt; /tmp/foo.pnm<br>
[sanei_debug] Setting debug level of pixma to 10.<br>
[pixma] pixma version 0.13.1<br>
[pixma] pixma_collect_devices() found Canon MultiPASS MP730 at
libusb:002:004<br>
[pixma] pixma_open(): Canon MultiPASS MP730<br>
[pixma] Trying to clear the interrupt buffer...<br>
[pixma]   no packets in buffer<br>
[pixma] Reader task id=3979 (forked)<br>
[pixma] Reader task started<br>
[pixma]<br>
[pixma] pixma_scan(): start<br>
[pixma]   line_size=180 image_size=21240 channels=3 depth=8<br>
[pixma]   dpi=150x150 offset=(0,0) dimension=59x118<br>
[pixma]   gamma_table=0x61b3d0 source=0<br>
[pixma] INTR T=0.286 len=8<br>
[pixma]  00000000:00 00 00 00 00 08 00 00<br>
[pixma]<br>
[pixma] send_time() is not yet implemented.<br>
[pixma] raw_width = 60<br>
[pixma] WARNING:pixma_write(): count(0) != len(10)<br>
[pixma] OUT  T=0.307 len=-1<br>
[pixma]  00000000:f3 20 00 00 00 00 00 00  0c 00<br>
[pixma]   ERROR: EIO<br>
[pixma]<br>
[pixma] pixma_scan() failed EIO<br>
[pixma] Reader task terminated: EIO<br>
[pixma] read_image():reader task closed the pipe:0 bytes received,
21240 bytes expected<br>
scanimage: sane_read: Error during device I/O<br>
[pixma] pixma_close(): Canon MultiPASS MP730<br>
</tt><br>
</body>
</html>