Nothing more than according to the original article:
https://w2.eff.org/Privacy/printers/docucolor/
Each column is read top-to-bottom as a single byte of seven bits (omitting the first parity bit); the bytes are then read right-to-left. The columns (which we have chosen to number from left to right) have the following meanings
- 15: unknown (often zero; constant for each individual printer; may convey some non-user-visible fact about the printer’s model or configuration)
- 14, 13, 12, 11: printer serial number in binary-coded-decimal, two digits per byte (constant for each individual printer; see below)
- 10: separator (typically all ones; does not appear to code information)
- 9: unused
- 8: year that page was printed (without century; 2005 is coded as 5)
- 7: month that page was printed
- 6: day that page was printed
- 5: hour that page was printed (may be UTC time zone, or may be set inaccurately within printer)
- 4, 3: unused
- 2: minute that page was printed
- 1: row parity bit (set to guarantee an odd number of dots present per row)
For example:
This is 2024 because in the 8th column (YY) there are the 4th and 5th dots in yellow, giving a binary value of 00011000.
We can then convert this binary value into a decimal value, giving us 24 (16 + 8).
@pfm also explained the decoding process very well in his article