[sane-devel] Rising project : Support of Konica-Minolta Magicolor 2480MF

Ilia Sotnikov hostcc at gmail.com
Sun Aug 8 17:21:31 UTC 2010

Seems that I have a good news...

Several months ago almost finished implementing the backend for
Konica-Minolta devices (BizHub 162/132, DiMage 1611 to name them).
Looking through the sniffs Reinhold and Jean-Marc collected I could
say that the protocol is kind of similar.

Commands I've found:
Start scan	                0x08
Get last error	        0x09
Stop scan   	        0x0a
Get image params	0x0b
Set scan area     	0x0c
Get status         	0x0d
Read		                0x0e
Get buttons   	        0x0f
Set button wait   	0x10

Basic command structure is:
03 [1  byte] (could be counted as 'signature')
command [1 byte]
argument1 size [4 byte]
argument1 [argument1 size]
argumentN size [4 byte]
argumentN [argumentN size]
end-of-record [4 byte] 00 00 00 00

Contents of the commands and arguments are little-endian (host order).
First argument serves also as a return value (if a command has one).

Now the differences:
- those devices I investigated are only black-white machines, also
with fixed size of scan area (scanner accepts no X/Y coordinates, just
an index of a predefined area). I workarounded the fixed area issue by
scanning at a suitable predefined area (implemented) and than cropping
to what frontend requested (not finished).
- device has several endpoints of same type in one interface
descriptor (3 and 5 being OUT, 4 and 6 being IN, uses 5 and 6 for
scanning functions). SANE USB layer ignores them all but first. This
is the reason I didn't submit the backend - didn't finish the USB
layer changes. As I see MagiColor devices have separate
descriptors/configurations for different functions, though.

Since I changed the job I have no access to the machines, thus the
process was freezed.
I could provide the backend sources, looks like it would be suitable
to operate MagiColor devices with some modifications.

Best regards,
 Ilia Sotnikov

More information about the sane-devel mailing list