Woohoo! Partial success. Updates at <a href="http://waddles.org/content/sane-canon-mp730-driver">http://waddles.org/content/sane-canon-mp730-driver</a><br><br>Perhaps the discussion of sanei_usb belongs in a different thread :)<br>
<br>Cheers,<br>Wade.<br><br><div class="gmail_quote">2009/4/19 Nicolas Martin <span dir="ltr"><<a href="mailto:nicolas.martin@freesurf.fr">nicolas.martin@freesurf.fr</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Maybe there's some relation with the endpoint, but remember that all<br>
PIXMA devices have also different endpoints for storage, printer and<br>
scanner, and there's no issue so far with messing those devices.<br>
So this requires anyway deeper analysis, but filtering out usb classes<br>
in sanei_usb is a good precaution.<br>
<br>
BTW, we really read your posts and try to figure out where there's<br>
something wrong, but as you can understand, this usb issue is not<br>
trivial.<br>
<br>
Nicolas<br>
<br>
Le dimanche 19 avril 2009 à 03:46 +1000, Wade Fitzpatrick a écrit :<br>
<div><div></div><div class="h5">> The patch should apply to current if somebody wants to test it. I just<br>
> don't know how many scanners might be attached to Printer or Mass<br>
> Storage devices' interfaces so I deliberately left it simple, but the<br>
> extra debug info was certainly helpful.<br>
><br>
> Glad to see somebody is still reading my post, anyway. Thanks.<br>
><br>
> Wade.<br>
><br>
> m. allan noah wrote:<br>
> > though i must chime in that wade's latest post is very interesting- it<br>
> > does appear that sanei_usb grabs the wrong interface. I believe Ilia<br>
> > had a complaint about this as well. Sounds like sanei_usb needs an<br>
> > overhaul after our next release.<br>
> ><br>
> > allan<br>
> ><br>
> > On Sat, Apr 18, 2009 at 12:57 PM, Nicolas Martin<br>
> > <<a href="mailto:nicolas.martin@freesurf.fr">nicolas.martin@freesurf.fr</a>> wrote:<br>
> ><br>
> > > Wade,<br>
> > ><br>
> > > As far as I can see, you are experiencing a usb interrupt transfer<br>
> > > issue, same kind as happened to other people when running the pixma<br>
> > > backend on an ASUS router or also on MAC OS X.<br>
> > ><br>
> > > What is important to know is that the pixma backend - and this is due to<br>
> > > Canon's PIXMA devices - make use of both usb Bulk read/write transfers,<br>
> > > and also of usb Interrupt read transfers.<br>
> > ><br>
> > > It is compulsory that usb interrupt read transfers fully work to operate<br>
> > > the pixma backend, as the scanner (and more especially older PIXMA<br>
> > > devices, like MP730) uses those transfer to exchange :<br>
> > > - status information<br>
> > > - time request<br>
> > > - button scan information<br>
> > ><br>
> > > Today's PIXMA devices (that uses a generation 3 protocol) uses both, but<br>
> > > can work without interrupt read ; in this case, only button scan will be<br>
> > > disabled, but the scanner can be entirely driven with Bulk transfers.<br>
> > > This is not the case for MP730, a generation 2 protocol device, which<br>
> > > requires usb interrupt read transfers to be operated.<br>
> > ><br>
> > > There's a difference also between the usb lib used by Sane, and the one<br>
> > > used in the pixma Standalone driver. Sane uses libusb, based on ioctl<br>
> > > calls to the kernel to execute usb transfers, while standalone driver<br>
> > > uses usbdevfs.<br>
> > ><br>
> > > In order to help you and step further, could you tell us which Linux<br>
> > > distribution (and version) you are running ?<br>
> > ><br>
> > > $ uname -a<br>
> > ><br>
> > > As I told before, this kind of issue was due on MAC OS X to the darwin<br>
> > > libusb port, not handling timeouts in interrupt reads, and for the ASUS<br>
> > > router, use of a (very) old kernel 2.4.20 version, known to be buggy for<br>
> > > usb interrupt reads.<br>
> > ><br>
> > > Nicolas<br>
> > ><br>
> > ><br>
> > > Le samedi 18 avril 2009 à 09:01 +1000, Wade Fitzpatrick a écrit :<br>
> > ><br>
> > > > I have updated my findings at<br>
> > > > <a href="http://waddles.org/content/sane-canon-mp730-driver" target="_blank">http://waddles.org/content/sane-canon-mp730-driver</a><br>
> > > ><br>
> > > > Can someone suggest the next place to start work?<br>
> > > ><br>
> > > > Thanks,<br>
> > > > Wade.<br>
> > > ><br>
> > > > 2009/4/4 Nicolas Martin <<a href="mailto:nicolas.martin@freesurf.fr">nicolas.martin@freesurf.fr</a>><br>
> > > > Sorry, posted answer in wrong thread.<br>
> > > ><br>
> > > > As far as I can see in the differences between older versions<br>
> > > > of the<br>
> > > > pixma standalone driver and today's, concerning usb exchanges<br>
> > > > for MP730,<br>
> > > > the older drivers did not use events polling whereas newer do<br>
> > > > with usb<br>
> > > > interrupt reads.<br>
> > > ><br>
> > > > First, did you try to remove the PIXMA_CAP_EVENTS flag for the<br>
> > > > pixma 730<br>
> > > > declaration (at the botom of file pixma_mp730.c) and see how<br>
> > > > it<br>
> > > > behaves ?<br>
> > > ><br>
> > > > I will also send you some modified files for the pixma backend<br>
> > > > to<br>
> > > > investigate why this usb low level error appears.<br>
> > > ><br>
> > > > Nicolas<br>
> > > ><br>
> > > > Le vendredi 03 avril 2009 à 03:14 +1100, Wade Fitzpatrick a<br>
> > > > écrit :<br>
> > > ><br>
> > > > > Can you take a look at the logs on<br>
> > > > > <a href="http://waddles.org/content/sane-canon-mp730-driver" target="_blank">http://waddles.org/content/sane-canon-mp730-driver</a> and tell<br>
> > > > me if you<br>
> > > > > think I'm on the right track with the endpoints?<br>
> > > > ><br>
> > > > > I CBF re-installing Windows, but I did test a successful<br>
> > > > scan with<br>
> > > > > mp150-0.12.2 followed immediately by a try with pixma-0.15.0<br>
> > > > but it<br>
> > > > > failed so I doubt it has anything to do with power-saving<br>
> > > > modes.<br>
> > > > ><br>
> > > > > Thanks,<br>
> > > > > Wade.<br>
> > > > ><br>
> > > > > 2009/3/21 Nicolas Martin <<a href="mailto:nicolas.martin@freesurf.fr">nicolas.martin@freesurf.fr</a>><br>
> > > > > Seems confirmed that a usb low level error happens<br>
> > > > on first<br>
> > > > > write<br>
> > > > > attempt:<br>
> > > > ><br>
> > > > > [sanei_usb] sanei_usb_write_bulk: trying to write 10<br>
> > > > bytes<br>
> > > > > [sanei_usb] 000 F3 20 00 00 00 00 00 00 0C<br>
> > > > > 00 . ........<br>
> > > > > USB error: error submitting URB: Device or resource<br>
> > > > busy<br>
> > > > > [sanei_usb] sanei_usb_write_bulk: write failed:<br>
> > > > Device or<br>
> > > > > resource busy<br>
> > > > > USB error: could not clear/halt ep 1: Device or<br>
> > > > resource busy<br>
> > > > ><br>
> > > > > [pixma] WARNING:pixma_write(): count(0) != len(10)<br>
> > > > ><br>
> > > > ><br>
> > > > > I remember having seen this before for someone else,<br>
> > > > this<br>
> > > > > happened when<br>
> > > > > the usb port was going to power saving (generally<br>
> > > > after a few<br>
> > > > > seconds)<br>
> > > > ><br>
> > > > > Could it be the case on system ?<br>
> > > > ><br>
> > > > > Nicolas<br>
> > > > ><br>
> > > > ><br>
> > > ><br>
> > > ><br>
> > > ><br>
> > > ><br>
> > > ><br>
> > ><br>
> > > --<br>
> > > sane-devel mailing list: <a href="mailto:sane-devel@lists.alioth.debian.org">sane-devel@lists.alioth.debian.org</a><br>
> > > <a href="http://lists.alioth.debian.org/mailman/listinfo/sane-devel" target="_blank">http://lists.alioth.debian.org/mailman/listinfo/sane-devel</a><br>
> > > Unsubscribe: Send mail with subject "unsubscribe your_password"<br>
> > > to <a href="mailto:sane-devel-request@lists.alioth.debian.org">sane-devel-request@lists.alioth.debian.org</a><br>
> > ><br>
> > ><br>
> ><br>
> ><br>
> ><br>
> ><br>
<br>
<br>
</div></div></blockquote></div><br>