What code can I use to read the eeprom and dump the contents?
You need a datasheet for the chip. Read that. Then read up on the Wire library, you'll need it to send the I2C commands.
Doing a google search you can find pre programmed modules that you replace the old one with. I'm not sure if you have modules like this because the chips cannot be re-programmed and the toner level is estimated by the printer firmware. Something like the amount of pages the printer has done.
Is this not possible to just scan the I2C bus until you find the device? It seemed to work for this guy. However I can't seem to get it to work with mine and could use some help from people much smarter than me.
You are also correct in that the toner chip comes pre-programmed with a number that the printer deducts from (and writes back to the chip) until it is at zero.Is it writing back to the chip or is the chip just a serial number that the printer sees a new toner cartridge and then assumes the toner is full and subtracts the usage level internal to the printer and not writing to the chip.Until you can dump the contents and see if it changes between prints you cannot be sure.All of that is documented very well on the link I posted above.But the link you supplied seems to be for a totally different printer and toner chip so may not be relevant to the one your using.