[Printers] Re: scanned images

Patrick Murphy murph99 at yahoo.com
Wed Sep 7 16:27:57 PDT 2005


bunnie,

Seth posted a reply regarding how to see what time the DocuColor 12 printers
think it is.  Hopefully you will have the chance to grab a cover sheet, config
sheet, or whatever has the "current" time on it.

I did get the printer serial number from your website.  I still can't establish
a link between the serial number and the data embedded in the image, or between
the serial number and the EEPROM data.  I'm starting to think that there is
some interpretation from raw data -> serial number that is not apparent.  I'm
thinking this may be the case because I can't see how you get "CNBC55L0QJ" from
4-8 bytes of data.  Possibly, 1-4 bytes establish the device family/model, and
3-5 bytes contain the embedded serial number.

Even if an interpretation scheme exists, we may still be able to fathom it via
RE.  I posted another comment to your blog that suggests a procedure to try, in
an attempt to get the printer to think it has a new serial number.  If we
succeed in this, then we can see what difference it makes in an embedded data
image.

The scheme for extracting data from 2600N images is quite complex.  I'm
thinking about putting together a presentation that explains it, but first I
need to resolve some outstanding questions.  I'm missing the last step -
linking the data to the printer model/serial number - so I need to understand
how to translate the data properly.

Here's an overview of the scheme I've developed to extract the data.  It's
brief, and sure to raise questions :)

Use the bitmap viewer/rotator that DC wrote.  There is only 1 place in the data
that has the following "marker" pattern:

  0 1
  1 1

Rotate the bitmap so the 0 is in the upper left corner.  Following the marker
rows, there are 4 groups of 5 rows.  Each group has 4 data rows and one
checksum row.  The last row is all 0s and is not used.

Column 1 is not used.  Column 10 is not used, except as a spacer between
columns  2-9 and 11-18.

Each row has 2 numbers on it.  Each of these numbers is one bit, so the only
possible "digits" are 1, 2, 4, or 8.  Therefore, there are 16 possible
2-"digit" numbers:  11, 12, 14, 18, 21, 22, 24, 28, 41, 42, 44, 48, 81, 82, 84,
88.  I believe each one of these represents a single hex digit, though that's
the part I haven't been able to establish yet.

Each row alternates between the columns it uses.  For example, row 3 uses
columns 3, 5, 7, and 9 for the first "digit", and 12, 14, 16, and 18 for the
second "digit".  But then row 4 uses columns 2, 4, 6, and 8 for the first
"digit", and then 11, 13, 15, and 17 for the second.  This method spreads out
the dots so they are less noticeable in a straight line, and it guarantees that
there is only one unique marker.

A checksum row contains the inverse bitwise XOR of the preceding 4 rows.  A
checksum row is the only row allowed to have more than 1 bit set in a "digit".

With a little perseverance, I believe we can uncover the link between the 2600N
embedded image data, the serial number, and the EEPROM data.

Let me know if you have any questions or comments.  I'm looking forward to
hearing from you!

Patrick


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 



More information about the printers mailing list