Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

CanoScan 9000F support in SANE

Need help with peripherals or devices?
Message
Author
saedelaere
Posts: 2
Joined: 2011-06-28 13:57

Re: CanoScan 9000F support in SANE

#31 Post by saedelaere »

How is progress going for the Cannon 9000F, is it possible to get the prerelease driver from you? How about scanning negatives, is the transparency unit working?

Best regards and many thanks for your efforts

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#32 Post by shugyo »

ziemlich wrote:I just found this thread about the great effort has been expended to make the 9000F in SANE usable. It makes me happy, because I've been hunting the 8800F since a month because of its Complete support, but it's no more available in Europe. So, I'm about to buy the 9000F. I would ask about the driver, does it support all features which are available in W7? For example I want to scan my long-ago made negative films. Does the scanner uses the FARE correction in TPU mode automatically?
Hello,

It is unfortunate for us all that so far no good way to implement FARE has been found---so this is not available. Some fellow enthusiasts were working on FARE, as was I for a short while, but time limitations prevented a good resolution, although some success was achieved. The problem of registration of the IR and color images was one issue (it is not constant, but needs to be adjusted depending on the part of the image); also, the resolution of the IR image was only a subset of the resolutions available in color, so adjustment of the IR image was also needed (interpolation). Finally, some results were obtained, but the code is nowhere near production ready and consists of various test programs which are not related to the current SANE code.

Regards,
Gernot Hassenpflug

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#33 Post by shugyo »

saedelaere wrote:How is progress going for the Cannon 9000F, is it possible to get the prerelease driver from you? How about scanning negatives, is the transparency unit working?
Sure, the TPU works fine---the results are much as for the 8800F.

Calibration is not done properly yet, so that is something that could definitely use work (same for 8800F).

Anyone that wants the code is welcome to write to me (PM me).
I hope to find time in July to submit a modified driver to SANE developers for inclusion in CVS.
Regards,
Gernot Hassenpflug

All
Posts: 1
Joined: 2011-07-20 00:41

Re: CanoScan 9000F support in SANE

#34 Post by All »

Hi Gernot,

Great work you guys are doing here. I'm amazed at the effects of opensource, I'm not so young any more, and fascinated by you guys working so passionately to help one another (but that's another story).

I want to buy the CanoScan 9000F. I have openSUSE 11.4 64Bit installed with Xsane and sane 1.0.22 . Is your driver already included? If not, I will gladly test with openSUSE for you if you can direct me. I will send you a PM for the driver.

Regards,

All

nananabatman
Posts: 2
Joined: 2011-08-15 14:58

Re: CanoScan 9000F support in SANE

#35 Post by nananabatman »

Thank you for your work! Looking forward to finally using the 9000F on linux! :)

Rodboudreaux
Posts: 1
Joined: 2010-10-06 18:39

Re: CanoScan 9000F support in SANE

#36 Post by Rodboudreaux »

I was on the team that developed the PIXMA MP150 backend and have it running with the latest xsane as root.
my job was testing. I have a CanoScan 9000F. My skills are limited but I follow direction well. I run under Ubuntu.
How can I help.

Rod

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#37 Post by shugyo »

I've started to split the driver (pixma_mp150) into two: original pixma_mp150 without support for the 9000F, and a new pixma_mp810 with the 9000F support.

Probably the splitting, cleaning up of code, and verification before it is put into the git repository of SANE will take some time (2 weeks possibly, although I have no idea really), but the process has begun. So hopefully early next year you'll all be able to get the driver support for the 9000F via the development version of SANE, and the support will be included then in the next SANE release.

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#38 Post by shugyo »

Good news: in the night of 18-19 December 2011 I submitted the new sub-driver, associated patches to other SANE files, and documentation patches, to the SANE mailing list. The process of incorporating the new programs will take some time (presumably code review, then corrections, then finally commitment to the git repository), but the process is now safely in motion.

nananabatman
Posts: 2
Joined: 2011-08-15 14:58

Re: CanoScan 9000F support in SANE

#39 Post by nananabatman »

great news!

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#40 Post by shugyo »

It has been a whilte, so just to complete the thread (sorry, could not get numbered lists to work):
  • (1) the code is in the SANE git repository, so anyone that has the scanner can be confident that compiling SANE from git will give the required support---also note that the development is ongoing (see point 2 below).
  • (2) there is a code maintainer, who is very competent and actually has the scanner (unlike myself, who only has the previous 8800 model), and is interested in improving the code incrementally.
  • (3) please use the SANE mailing list (sane-devel@lists.alioth.debian.org, see http://www.sane-project.org/mailing-lists.html for registration information) to contact the developers, this is by far the best place to get support and have questions answered.
  • (4) I cannot currently give any support for SANE, as I am totally underwater maintaining and developing the Canon backend for the gutenprint project (inkjet driver support).
  • (5) I do not read this forum or thread regularly.
  • 6) if you wish to ask me (Gernot Hassenpflug) for help in private messages, I will certainly do my best to give you advice and tips, but unfortunately recently I had experience being messaged by people with absolutely no respect for my time, so with all due respect to new-comers: please read the above points first.
  • (7) If you message me please be prepared to do some work on your own (I will gladly provide links and advice); if you message me for further support please demonstrate that you have done relevant work yourself, and also why the normal channels are not sufficient. I appreciate that people have diferent capabilities and expectations, but also that it is a privilege to obtain help and support from others who freely give their time.
Many thanks,
Gernot Hassenpflug

User avatar
neddie
Posts: 380
Joined: 2009-09-14 07:57

Re: CanoScan 9000F support in SANE

#41 Post by neddie »

Sorry to drag up an old thread :/
On wheezy I have libsane 1.0.22-7.4, which apparently comes from around September 2012, and I'd expect it to have 9000F support in it. But when I do "man sane-pixma" it says it only supports the 8800F, not the 9000F. And it doesn't seem to recognise a 9000F at all when I plug it in.

Are there any wheezy backports I could easily try out, or is it still better if I get a sane snapshot and compile it myself? Or should what I've got work already?

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#42 Post by shugyo »

neddie wrote:Sorry to drag up an old thread :/
On wheezy I have libsane 1.0.22-7.4, which apparently comes from around September 2012, and I'd expect it to have 9000F support in it. But when I do "man sane-pixma" it says it only supports the 8800F, not the 9000F. And it doesn't seem to recognise a 9000F at all when I plug it in.

Are there any wheezy backports I could easily try out, or is it still better if I get a sane snapshot and compile it myself? Or should what I've got work already?
I don't think you should assume such things, since when a distribution creates a package has nothing to do with when the package was created by upstream. So the best would be to read the SANE webpage for that scanner, to tell you the version of the sane-pixma backend from which the 9000F was supported: http://www.sane-project.org/sane-mfgs.html#Z-CANON
As that page shows, the version must be 0.17.0 or higher.
Now you can compare in the source code of the software if you download the source package. Probably in 1.0.22 the version is still 0.16.0 or something less than what you need. Or else the scanner is in experimental stage and you need to activate it, as described in sane-pixma man page, by using the pixma experimental environment variable (again, if you read the source code for the pixma backend you will see if that is the case).

The pixma backend is actually a set of driver packages, with a common upper-level API. The individual driver files such as pixma_mp150.c or pixma_mp750.c, etc., vary quite widely and each supports some of the scanners listed in the sane-pixma man page. You can grep them to see if the 9000F is in one of them.

Finally, if you are satisfied there is no other way, you can install 1.0.23 from source, it goes into /usr/local thus not interfering with the system SANE. Instructions are provided in the root of the code, for linux.
Cheers,
Gernot

User avatar
neddie
Posts: 380
Joined: 2009-09-14 07:57

Re: CanoScan 9000F support in SANE

#43 Post by neddie »

Thanks for your quick feedback!
So, according to the current wheezy sources (libsane 1.0.22), the version number (of the backend?) is 0.16.2. And to confirm, there is mention of 8800 in the source, but no mention of 9000. So I take it that even though that's still the current version also in jessie, it hasn't got your code from early last year yet. So I think I can't use a Debian package.

Taking your advice, I tried to install from source. I got both the backend and the frontend, I was able to compile and install the backend (gives me /usr/local/lib/libsane.so.1.0.23), but I wasn't able to compile the fronted. Firstly it failed with not understanding SANE_OPTION_IS_SETTABLE - this is defined only by the backend in include/sane/sane.h, so I tried passing the --includedir to the ./configure of the frontend. Then it failed with not understanding SANE_CAP_ALWAYS_SETTABLE, which apparently has been removed from the backend with 1.0.23, but it's still referred to by gtkglue.c in the latest frontend (1.0.14).

Oddly if I do "scanimage -V" it says "scanimage (sane-backends) 1.0.23; backend version 1.0.22", so maybe it's confused now between 1.0.22 and 1.0.23?

If I do "man sane-pixma" then it does now mention the 9000F, which it didn't do before. But it still doesn't seem to know what to do with my scanner. lsusb finds it, and sane-find-scanner says that "Your USB scanner was (probably) detected", but "scanimage -L" doesn't find it, either as normal user or as root. And xsane also only wants to deal with the built-in webcam, as do the Gimp's File -> Create -> Xsane options.

Do you have an idea where I might have gone wrong? Thanks!

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#44 Post by shugyo »

neddie wrote:Taking your advice, I tried to install from source. I got both the backend and the frontend, I was able to compile and install the backend (gives me /usr/local/lib/libsane.so.1.0.23), but I wasn't able to compile the fronted. Firstly it failed with not understanding SANE_OPTION_IS_SETTABLE - this is defined only by the backend in include/sane/sane.h, so I tried passing the --includedir to the ./configure of the frontend. Then it failed with not understanding SANE_CAP_ALWAYS_SETTABLE, which apparently has been removed from the backend with 1.0.23, but it's still referred to by gtkglue.c in the latest frontend (1.0.14).
Hello Neddie,
Pleased I can help you, I hope!
First thing is that you should not need the front-end as well, you could change the softlink the frontend might have set to use a particular backend library version.
I never compile the frontend on my Debian or Ubuntu systems.
At least you correctly have the backend in /usr/local, which in the $PATH variable comes before the system version. That should be enough for the frontend to find the correct version of the backend, with the limitation some frontends have of a silly dependency on a fixed version of the backend.
Maybe you can try to run xsane as root, that often works for me.
neddie wrote:Oddly if I do "scanimage -V" it says "scanimage (sane-backends) 1.0.23; backend version 1.0.22", so maybe it's confused now between 1.0.22 and 1.0.23?
Try as root, or run directly the /usr/local version of scanimage.
neddie wrote:If I do "man sane-pixma" then it does now mention the 9000F, which it didn't do before. But it still doesn't seem to know what to do with my scanner. lsusb finds it, and sane-find-scanner says that "Your USB scanner was (probably) detected", but "scanimage -L" doesn't find it, either as normal user or as root. And xsane also only wants to deal with the built-in webcam, as do the Gimp's File -> Create -> Xsane options.
Yes, the backend man pages are installed, and found from /usr/local before the other ones.
lsusb has nothing to do with SANE, that just makes sure your USB system is working.
sane-find-scanner should find it, but it does not help with seeing if the backend really works.
Scanimage use the pixma libraries which use libusb, and this is where you find out if a) the scanner is compatible with libusb, and b) if there is any bug in the pixma code for that scanner support.
You should try the /usr/local scanimage (as root to avoid permission problems) and see what happens. You can always give the full libusb device name (I think you need to check the man pages for scanimage to see how that is written, maybe with -D parameter, not sure).
Any more info you can provide, I'll see what I can comparing on my own system (I only have the 8800F though).

User avatar
neddie
Posts: 380
Joined: 2009-09-14 07:57

Re: CanoScan 9000F support in SANE

#45 Post by neddie »

Ok, I think I'm getting really close now!

After doing this:

Code: Select all

# cd /usr/lib/i386-linux-gnu/
# ln -sf /usr/local/lib/libsane.so.1.0.23 libsane.so.1
# ln -sf /usr/local/lib/sane/libsane.la libsane.la
(after reading the README.linux again), I now get this:

Code: Select all

$ scanimage -V
scanimage (sane-backends) 1.0.23; backend version 1.0.23
$ scanimage -L
device `pixma:04A91908' is a CANON Canoscan 9000F multi-function peripheral
Yay! Now the scanner is properly recognised by xsane (as long as I run it as root, I'll fix the permissions later), but when I try to preview or scan, I just get a dialog box: "Error during read: Error during device I/O".

When I run scanimage -T as root, I get this:

Code: Select all

# scanimage -T
scanimage: scanning image of size 638x877 pixels at 24 bits/pixel
scanimage: acquiring RGB frame, 8 bits/sample
scanimage: reading one scanline, 1914 bytes...	FAIL Error: Error during device I/O
I got exactly the same behaviour from /usr/local/bin/scanimage too. Have you any more diagnostic tips please?

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#46 Post by shugyo »

Hello Neddie,
Thank you for the update. That sounds very good except for the last error on read I/O.
My suggestion is that you post your results of that post on the SANE mailing list and ask there.
Reason is I do not have the CS9000F, and there has been a lot of development which might influence the read I/O.
So the developer can get back to you once you post that information on the list.
Please let me know if you have trouble finding or registering with the list. You can find it from the SANE home page.
Regards,
Gernot

User avatar
neddie
Posts: 380
Joined: 2009-09-14 07:57

Re: CanoScan 9000F support in SANE

#47 Post by neddie »

Thanks for your help, shugyo.
I tried posting to the sane-devel list, but even though I now receive all their mails, my mails all get ignored by the list. Maybe they need to be manually approved or something.
Anyway, I used unetbootin to create a live USB stick of Mint Olivia (which uses Ubuntu's libsane 1.0.23), and from there, my scanner works perfectly! :D

So it wasn't a sane problem I was having, as such.
I can now use simplescan (which is very simple, but unfortunately only does regular scans, not transparencies), or scanimage (obviously with some trial-and-error from the command line, but does do transparencies), or xsane (which does everything but is a real struggle to use).

I think now I just need to spend some time experimenting with the settings, and maybe seeing if I can use xsane's colour models when scripting scanimage (if possible). Unless you can suggest an alternative frontend that I should try out? (Sorry if that's off the original topic)

shugyo
Posts: 98
Joined: 2009-08-24 08:56

Re: CanoScan 9000F support in SANE

#48 Post by shugyo »

neddie wrote:/../I tried posting to the sane-devel list, but even though I now receive all their mails, my mails all get ignored by the list. Maybe they need to be manually approved or something.
Anyway, I used unetbootin to create a live USB stick of Mint Olivia (which uses Ubuntu's libsane 1.0.23), and from there, my scanner works perfectly! :D
So it wasn't a sane problem I was having, as such.
Hello neddie,
No idea about the SANE ML, maybe they did not approve you yet, or you are on a banned mail provider (many webmails maybe fall under that category).
As for SANE problem, you should read the linux README to get an idea of what you might have to do on your system in case of problems. Glad you got it sorted out via a different distro though.
neddie wrote:I can now use simplescan (which is very simple, but unfortunately only does regular scans, not transparencies), or scanimage (obviously with some trial-and-error from the command line, but does do transparencies), or xsane (which does everything but is a real struggle to use).
What is so difficult about xsane? If you save your settings it should be fine.
neddie wrote:I think now I just need to spend some time experimenting with the settings, and maybe seeing if I can use xsane's colour models when scripting scanimage (if possible). Unless you can suggest an alternative frontend that I should try out? (Sorry if that's off the original topic)
I don't know anything about front-ends, unfortunately. If you read the SANE specs you can see what parameters can be available to a front-end to use. I think xsane is the most complete, but I could be wrong. Also, I think xsane is no longer under development by its original author, although again I could be wrong...

ThadeusB
Posts: 2
Joined: 2014-03-05 22:41

Re: CanoScan 9000F support in SANE

#49 Post by ThadeusB »

Hi,

I'm running Ubuntu 12.04 LTS

I am having trouble with making the SANE backend recognise the newly installed libraries for my Canon 9000F. I followed the whole routine from downloading the GIT files and the correct installation procedure - I believe! However, when querying the libsane order I get this:
$ sudo ldconfig -v | grep libsane
[sudo] password for phil:
/sbin/ldconfig.real: Can't stat /lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Can't stat /usr/lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Path `/lib/i386-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/usr/lib/i386-linux-gnu' given more than once
libsane.so.1 -> libsane.so.1.0.22
libsane.so.1 -> libsane.so.1.0.25
Two problems here: 1. my new libraries are in /usr/lib/sane, not in usr/lib/i386-linux-gnu
2. The listed order is incorrect

I suspect that this is what is preventing the scanner to link.

On another Debian forum thread I found this:-
SANE library:
86 Register new installed SANE dynamically linked shared object library.
87
88 $ sudo ldconfig -v | grep libsane
89 libsane.so.1 -> libsane.so.1.0.25
90 libsane.so.1 -> libsane.so.1.0.23
91
92 This example shows that the system first find version 1.0.25 and then 1.0.23.
93 This is the correct order.
94
95 If your system first find the old version and then the new installed one,
96 then you must change the order for library paths in /etc/ld.so.conf or you
97 must create the new configuration file /etc/ld.so.conf.d/1-sane.conf.
98
99 $ echo "/usr/local/lib" | sudo tee -a /etc/ld.so.conf.d/1-sane.conf
100
101 Then you must repeat this step.
However, I don't know how to make the changes to get the right order.

Also, I had wanted to uninstall the whole of SANE and start over with a completely new install, in the hope of it working correctly, but I can't find any instructions on how to do this.

Could someone please offer some guidance.

Thank you

ThadeusB
Posts: 2
Joined: 2014-03-05 22:41

Re: CanoScan 9000F support in SANE

#50 Post by ThadeusB »

********************** SUCCESS ********************

After a great deal of tweaking config files, I finally have it working! However, what I did to make it work doesn't quite match the instructions in the SANE readme - interesting.

The results in Treminal are now:-
$ sudo ldconfig -v | grep libsane
/sbin/ldconfig.real: Can't stat /lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Can't stat /usr/lib/i686-linux-gnu: No such file or directory
/sbin/ldconfig.real: Path `/lib/i386-linux-gnu' given more than once
/sbin/ldconfig.real: Path `/usr/lib/i386-linux-gnu' given more than once
libsane.so.1 -> libsane.so.1.0.22
libsane.so.1 -> libsane.so.1.0.25
phil@phil-Desktop:~$ scanimage -V
scanimage (sane-backends) 1.0.25git; backend version 1.0.22
Not what I expected, but it works. I have yet to work through XSANE to check for full functionality, but that's front end stuff.

I'm currently making a 4800 dpi scan: I'm surprised to see how slow it is though, compared to when running a similar scan under Windows 7 with the Canon software.

You developer guys are doing a fantastic job for which I must thank you whole heartedly.

Post Reply