Hi, Over the last few months, I have been developing the next major version of libusb: libusb-1.0
It is API-incompatible with libusb-0.1, which is used by SANE, but it is designed so that you can install both 0.1 and 1.0 on the same system without any problems. I also developed an "emulation layer" which is effectively a replacement for libusb-0.1, called libusb-compat-0.1. libusb-compat-0.1 implements exactly the same API as libusb-0.1, but it just converts the libusb-0.1 function calls into their 1.0 equivalents. The advantage of using the emulation layer (over plain old libusb-0.1) is that you can then take advantage of some of the cool stuff in libusb-1.0. In some circumstances, transfers are a lot faster. So, I tried libusb-compat-0.1 + libusb-1.0 with SANE, on my HP photosmart C4180 scanner. This is an old computer, so it only has USB 1.1. Using libusb-0.1, scanning an A4 page took 73 seconds. With my new libraries, it takes 60 seconds. That's 22% faster. I am using this command to scan: time scanimage --format tiff --resolution 300 --compression None \ > filename I believe further speed increases are possible, if sane was to switch to libusb-1.0 and use the asynchronous transfer model to queue up multiple USB requests at once at the hardware level. However, that requires code changes in sane and is probably some way down the line. The cool thing about what I've described above is that you don't have to change sane in any way. It would be cool if other people could install libusb-1.0 and libusb-compat-0.1, test it, and measure the difference in speed. Source downloads here: https://sourceforge.net/project/showfiles.php?group_id=1674 Note that libusb-compat-0.1 (intentionally) conflicts with libusb-0.1, so don't try to have them both installed at once. Daniel