[sane-devel] How can I help with Canon Maxify MB2000 series testing?

Louis Lagendijk louis at fazant.net
Sat Mar 17 21:40:22 UTC 2018

On Sat, 2018-03-17 at 18:36 +0000, Patrick Roncagliolo wrote:
> I have empty iptables. By reading manpages, I found that /etc/sane.d
> was not in the $SANE_CONFIG_DIR.
> I put there "bjnp://", lanched scanimage -L and it finally
> worked.
> One question/curiosity: scangearmp2 (Canon proprietary scan tool for
> linux) sends a discovery probe on port 8611 instead of 8612, and
> behaves differently from the pixma backend. Is there some reverse-
> engineered documentation about the BJNP messages, types, codes? I
> imagine so, given that pixma-backend exists, but I had no success in
> finding it.
Read the source code... NO there was no documentation whatsoever. I
reverse engineered the protocol from PCAP traces from the Windows
driver. But that is only part of the story: the bjnp protocol just
translates the USB protocol to run over TCP/IP. So the actual
processing is still done by the same backend code as used for USB
scanning. Internally in the bjnp code I map the sanner name to the USB-
id as that is used a lot in the backend...
I reverse engineered the protocol using the MP970 I had at that time,
and it still works for recent scanners that use BJNP, even though I
have seen some variations used by Canon (later Windows drivers for the
scanner use more TCP and less UDP. But that may also have been the case
with the BJNP printing part. And if it works, don't touch it...

BR, Louis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.alioth.debian.org/pipermail/sane-devel/attachments/20180317/a4519075/attachment.html>

More information about the sane-devel mailing list