though i must chime in that wade's latest post is very interesting- it does appear that sanei_usb grabs the wrong interface. I believe Ilia had a complaint about this as well. Sounds like sanei_usb needs an overhaul after our next release.
allan On Sat, Apr 18, 2009 at 12:57 PM, Nicolas Martin <nicolas.martin at freesurf.fr> wrote: > Wade, > > As far as I can see, you are experiencing a usb interrupt transfer > issue, same kind as happened to other people when running the pixma > backend on an ASUS router or also on MAC OS X. > > What is important to know is that the pixma backend - and this is due to > Canon's PIXMA devices - make use of both usb Bulk read/write transfers, > and also of usb Interrupt read transfers. > > It is compulsory that usb interrupt read transfers fully work to operate > the pixma backend, as the scanner (and more especially older PIXMA > devices, like MP730) uses those transfer to exchange : > - status information > - time request > - button scan information > > Today's PIXMA devices (that uses a generation 3 protocol) uses both, but > can work without interrupt read ; in this case, only button scan will be > disabled, but the scanner can be entirely driven with Bulk transfers. > This is not the case for MP730, a generation 2 protocol device, which > requires usb interrupt read transfers to be operated. > > There's a difference also between the usb lib used by Sane, and the one > used in the pixma Standalone driver. Sane uses libusb, based on ioctl > calls to the kernel to execute usb transfers, while standalone driver > uses usbdevfs. > > In order to help you and step further, could you tell us which Linux > distribution (and version) you are running ? > > $ uname -a > > As I told before, this kind of issue was due on MAC OS X to the darwin > libusb port, not handling timeouts in interrupt reads, and for the ASUS > router, use of a (very) old kernel 2.4.20 version, known to be buggy for > usb interrupt reads. > > Nicolas > > > Le samedi 18 avril 2009 ? 09:01 +1000, Wade Fitzpatrick a ?crit : >> I have updated my findings at >> http://waddles.org/content/sane-canon-mp730-driver >> >> Can someone suggest the next place to start work? >> >> Thanks, >> Wade. >> >> 2009/4/4 Nicolas Martin <nicolas.martin at freesurf.fr> >> ? ? ? ? Sorry, posted answer in wrong thread. >> >> ? ? ? ? As far as I can see in the differences between older versions >> ? ? ? ? of the >> ? ? ? ? pixma standalone driver and today's, concerning usb exchanges >> ? ? ? ? for MP730, >> ? ? ? ? the older drivers did not use events polling whereas newer do >> ? ? ? ? with usb >> ? ? ? ? interrupt reads. >> >> ? ? ? ? First, did you try to remove the PIXMA_CAP_EVENTS flag for the >> ? ? ? ? pixma 730 >> ? ? ? ? declaration (at the botom of file pixma_mp730.c) and see how >> ? ? ? ? it >> ? ? ? ? behaves ? >> >> ? ? ? ? I will also send you some modified files for the pixma backend >> ? ? ? ? to >> ? ? ? ? investigate why this usb low level error appears. >> >> ? ? ? ? Nicolas >> >> ? ? ? ? Le vendredi 03 avril 2009 ? 03:14 +1100, Wade Fitzpatrick a >> ? ? ? ? ?crit : >> >> ? ? ? ? > Can you take a look at the logs on >> ? ? ? ? > http://waddles.org/content/sane-canon-mp730-driver and tell >> ? ? ? ? me if you >> ? ? ? ? > think I'm on the right track with the endpoints? >> ? ? ? ? > >> ? ? ? ? > I CBF re-installing Windows, but I did test a successful >> ? ? ? ? scan with >> ? ? ? ? > mp150-0.12.2 followed immediately by a try with pixma-0.15.0 >> ? ? ? ? but it >> ? ? ? ? > failed so I doubt it has anything to do with power-saving >> ? ? ? ? modes. >> ? ? ? ? > >> ? ? ? ? > Thanks, >> ? ? ? ? > Wade. >> ? ? ? ? > >> ? ? ? ? > 2009/3/21 Nicolas Martin <nicolas.martin at freesurf.fr> >> ? ? ? ? > ? ? ? ? Seems confirmed that a usb low level error happens >> ? ? ? ? on first >> ? ? ? ? > ? ? ? ? write >> ? ? ? ? > ? ? ? ? attempt: >> ? ? ? ? > >> ? ? ? ? > ? ? ? ? [sanei_usb] sanei_usb_write_bulk: trying to write 10 >> ? ? ? ? bytes >> ? ? ? ? > ? ? ? ? [sanei_usb] 000 F3 20 00 00 00 00 00 00 0C >> ? ? ? ? > ? ? ? ? 00 ? ? ? ? ? ? ? ? ? . ........ >> ? ? ? ? > ? ? ? ? USB error: error submitting URB: Device or resource >> ? ? ? ? busy >> ? ? ? ? > ? ? ? ? [sanei_usb] sanei_usb_write_bulk: write failed: >> ? ? ? ? Device or >> ? ? ? ? > ? ? ? ? resource busy >> ? ? ? ? > ? ? ? ? USB error: could not clear/halt ep 1: Device or >> ? ? ? ? resource busy >> ? ? ? ? > >> ? ? ? ? > ? ? ? ? [pixma] WARNING:pixma_write(): count(0) != len(10) >> ? ? ? ? > >> ? ? ? ? > >> ? ? ? ? > ? ? ? ? I remember having seen this before for someone else, >> ? ? ? ? this >> ? ? ? ? > ? ? ? ? happened when >> ? ? ? ? > ? ? ? ? the usb port was going to power saving (generally >> ? ? ? ? after a few >> ? ? ? ? > ? ? ? ? seconds) >> ? ? ? ? > >> ? ? ? ? > ? ? ? ? Could it be the case on system ? >> ? ? ? ? > >> ? ? ? ? > ? ? ? ? Nicolas >> ? ? ? ? > >> ? ? ? ? > >> >> >> >> > > > > -- > sane-devel mailing list: sane-devel at lists.alioth.debian.org > http://lists.alioth.debian.org/mailman/listinfo/sane-devel > Unsubscribe: Send mail with subject "unsubscribe your_password" > ? ? ? ? ? ? to sane-devel-request at lists.alioth.debian.org > -- "The truth is an offense, but not a sin"