[sane-devel] An alpha development of Sane backed for Canon FS4000

2012-08-16 Thread Andrew McDonnell
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hash: SHA1

Hello all

This is my first post here :-)

I have the use of a Canon FS4000 for a while, which is a very high
resolution 6-slot slide and negative scanner with both USB and SCSI
interface.  When I first tried to use it I discovered it was not supported
by Sane, and further I had some trouble finding and using the Windows
software that would have come with it.

Then it turned out there was a Windows command line control program written
for it; unexpectedly this was actually released under the GPL. [1], [2]

After trying out this code on an old Windows/XP box I decided to see if it
was feasible to hack it into a shape that could be integrated into SANE so I
could use the scanner on my main desktop, running Debian.  Luckily it seems
to run a SCSI protocol over USB and uses libusb, and was actually quite well
design in a somewhat modular manner, so after several weekends I managed to
get this working to the stage that I could scan a full resolution image
using the SANE command line.

I would like to have made further progress but for the moment I dont have a
lot of spare time.

My new backend driver is fs4000.  I have developed it against
git://git.debian.org/sane/sane-backends.git and tested on Debian Squeeze using:

./configure --prefix=/home/andrew/opt/sane-1.0.22-git --disable-translations
- - --enable-warnings --disable-avahi --disable-ipv6 --without-snmp
- - --enable-pnm-backend --disable-locking --enable-pthread --with-gphoto2
- - --enable-static --enable-maintainer-mode BACKENDS=fs4000


Only USB support has been integrated and tested at this stage.

My latest rebase was on commit 364509b57f2c2f83e89c0071ebefee6c5206c10c
(July 13) so it may need some tweaking to get it to build again.

I am hoping to have some more time to extend the integration with SANE in a
couple of months, but this is not guaranteed.  The library ported from
Windows covers pretty much all the functionality of the scanner, it would
seem to be just a matter of incrementally connecting this up as various Sane
properties.  I am more than available to answer any questions.

Anyway I would like to get this code to the community where it may be of use
- - - so could someone please suggest the preferred way of doing this?
I have used git extensively both locally and with git-svn at work but do not
yet have a lot of experience in pushing changes / patches to a git remote or
working with a community repository; the GIT repository page suggested
asking for a developer account but to get started perhaps it would be easier
to create a patch from my local branch?

Once that is sorted, at the very least you will be able to change the
support to 'ALPHA on the Supported Devices page :-)



thanks,
Andrew



[1] http://www.burnsorama.com/fs4000/
[2] https://github.com/gsnedders/fs4000

- - --


https://launchpad.net/~andymc73
http://blog.oldcomputerjunk.net
Twitter: @andymc73
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJQK6YzAAoJEF8I2jms4KhrNLgIAL169MZ58LMIWTIY4MUGBgre
nVmR1myI/IMc7VRTtD+dsVTWQiW5PjzsUHuGSqg/IWKR87kuRzcW7EEyZxRbxbr4
meiT6GYNZMNKRt+yeIQGkZf4ehpXU/zno+hkWFIkrTdxbXwcO65CGEPK09gdvvLx
U2mltG7XgvA8D2FM8ftBZO9Gn8fMv6fYLB0jWXIxpvA9L22NzVrLKuy+dPOJK0l5
yH4wx0YC+2EMrkdcQtVTI3MUtTduCxvHyDoYIcmWUfsAeGcLA33OQUsWigReBaHc
/uYQWI8AVWp2l/WbOi88lO9i9le1jbib0BCaou7zxOQXi2mU1I4EnbT5/SJwtbA=
=PU07
-END PGP SIGNATURE-



[sane-devel] Help with SANE testing for Canon Pixma MG5350

2012-08-16 Thread Gernot Hassenpflug
On Wed, Aug 15, 2012 at 11:15 PM, Ulf Hedlund ulfh10 at gmail.com wrote:
 Hi!

 I have recently purchased a Canon PIXMA MG5350. I am running Kubuntu 12.04
 and got the printing working just fine, however the scanner isn't
 recognized.

 On http://www.sane-project.org/lists/sane-mfgs-cvs.html#Z-CANON I saw that
 you are looking for testers. I hereby volunteer to help out with MG5350
 scanner testing, to the extent of my knowledge. I have helped out earlier
 with SANE-testing for Pixma MP800 so I am somewhat familiar with the
 process, although it was a few years ago.

Hello Ulf,
Welcome back! Thank you for volunteering... if you could take Windows
snoops for the MG5300 family in the same way as you did for the MP800
that would help tremendously.
Regards,
Gernot Hassenpflug



[sane-devel] Canon DR-9050C

2012-08-16 Thread Philip Gwyn
Hello,

I have a Canon DR-9050C scanner.  The canon_dr driver recognises it, but
can't access it.  I see some activity in December about this, but nothing
seems to have been resolved and I see no related patches in GIT.

I also have a binary driver from Canon that my supplier found.  This is a
packatge called cndrvsane-dr9050c-1.00-0.  It has source code for the USB
interface (a SUID root program that is forked off and talks to the USB
device) and for sanei client that talks to a binary blob that does the real
work.  This driver is confusingly called canondr without the underscore.

This works except that it can't wake the scanner from suspend mode.  The
scanner has to be power cycled.

I would very much like to get canon_dr driver working for the DR-9050C.  I
am a computer programer with experience with C (amoungst others).  I don't
have much experience with low-level USB nor scanner protocols, however.  If
someone could point me towards an intro to either, it would be nice.

I intend to do a USB capture of what canon_dr and canondr are doing and
compare the 2.  I assume something like wireshark will do the trick.

My environment is CentOS 5, sane-backends 1.0.22.

I also have Window 7 on another computer that could be used to capture the
USB activity of the TWAIN driver.  I know little about Windows though and
next to nothing about Windows developement.

Any help apreciated,

-Philip
-- next part --
An HTML attachment was scrubbed...
URL: 
http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20120816/640b0378/attachment.html


[sane-devel] Canon DR-9050C

2012-08-16 Thread Philip Gwyn
This is annoying: To get the most recent wireshark working, I moved the dev
to a machine with CentOS 6.  But it only has USB 1.0 and only works in
32bits.  However, it doesn't exhibit the problems I'm having with Canon's
binary blob, specifically not waking up from stand-by mode.

Pcap output of a sucessful canondr scan and unsuccessful canon_dr scan:
   http://pied.nu/Sane/canon_dr-20120815-1130.tar.gz

-Philip
-- next part --
An HTML attachment was scrubbed...
URL: 
http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20120816/ca55b807/attachment.html


[sane-devel] Canon DR-9050C

2012-08-16 Thread m. allan noah
Thanks for the traces, Philip. I have had sporadic reports of attempts
to use this scanner, but no-one has provided such detailed info.

Basically, the Canon DR series machines are scsi over usb. We add a 12
byte header to a normal scsi command. So, you can download the scsi
spec from many places online, and see how the basics work. Now, they
have added their own commands, and use various extensions to standard
command payloads, so we are forced to guess sometimes.

Wireshark makes things a little more difficult, because it shows all
the low level USB stuff, that really does not matter to us. So, you
have to learn to ignore every other packet in those logs, and the
first 0x40 bytes of the packets you do care about.

I took a brief spin thru your logs, and it appears that the scanner is
unhappy when we send the 0xd6 command, which I call SET_SCAN_MODE.
Your 'success' logs show instead the use of an 0xe5 command, whose
format is unknown to me. ISTR some other user reported this recently
for some other model.

So, the immediate course of action is to disable calls to ssm in the
sane backend, and see if it will scan. Then we make a series of small
area, low resolution scans in the working driver, changing one
parameter each time. Then we see how the calls to the 0xe5 command
change. It might be that we never determine what they do, or that they
only do something under the windows driver.

Then, we can use that info to update the backend to enable those
features, if they seem useful. Probably the best place to start is
some scripts to help you 'diff' pcap files.

allan

On Thu, Aug 16, 2012 at 2:03 PM, Philip Gwyn philipgwyn at gmail.com wrote:
 This is annoying: To get the most recent wireshark working, I moved the dev
 to a machine with CentOS 6.  But it only has USB 1.0 and only works in
 32bits.  However, it doesn't exhibit the problems I'm having with Canon's
 binary blob, specifically not waking up from stand-by mode.

 Pcap output of a sucessful canondr scan and unsuccessful canon_dr scan:
http://pied.nu/Sane/canon_dr-20120815-1130.tar.gz

 -Philip


 --
 sane-devel mailing list: sane-devel at lists.alioth.debian.org
 http://lists.alioth.debian.org/cgi-bin/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