meyerd / xeroxpatrone

Xerox Phaser 6130 Printer Cartridge Chip Reset Tool
http://meyerd.github.io/xeroxpatrone
9 stars 2 forks source link

xerox 6010 eeproms #7

Open Skymax7 opened 4 years ago

Skymax7 commented 4 years ago

Hello, I'm on tried to read xerox 6010 chips eeproms type as 106R0... from toner cartdriges with arduino. I get some issues, I tried many ways/sketchs until read 512K data like this

ƒ…‡‰‹‘“•—™›Ÿ¡£¥§©«­¯±³µ·¹»½¿ÁÃÅÇÉËÍÏÑÓÕ×ÙÛÝßáãåçéëíïñóõ÷ùûýÿƒ…‡‰‹‘“•—™›Ÿ¡£¥§©«­¯±³µ·¹»½¿ÁÃÅÇÉËÍÏÑÓÕ×ÙÛÝßáãåçéëíïñóõ÷ùûýÿƒ…‡‰‹‘“•—™›Ÿ¡£¥§©«­¯±³µ·¹»½¿ÁÃÅÇÉËÍÏÑÓÕ×ÙÛÝßáãåçéëíïñóõ÷ùûýÿƒ…‡‰‹‘“•—™›Ÿ¡£¥§©«­¯±³µ·¹»½¿ÁÃÅÇÉËÍÏÑÓÕ×ÙÛÝßáãåçéëíïñóõ÷ùûýÿ

I compare this code with your dumps and I never find the words "xerox". I read used almost empty chip and new chip (not original) and I get same data.. Can you help me ?

Max

meyerd commented 4 years ago

hello, it is difficult to debug the data like this as copy-pasting could change the encoding. If you opened the file with a text editor it could indeed be correct but the text editor interpreting the encoding and changing what is visible. Could you open other files downloaded from this page and compare what is in there. I would recommend to use a hex editor to view the binary files as this is the only way to surely correctly edit such files on byte level. Also make sure that the arduino sketches are downloading and dumping the raw bytewise data and not encoding those in any protocol (the serial output of the arduino programming environment does some interpretation of the bytes).

Skymax7 commented 4 years ago

hello! thanks for your reply. I got Hex data from arduino serial print function like this 81 83 85 87 89 8B 8D 8F 91 93 95 97 99 9B 9D 9F A1 A3 A5 A7 A9 AB AD AF B1 B3 B5 B7 B9 BB BD BF C1 C3 C5 C7 C9 CB CD CF D1 D3 D5 D7 D9 DB DD DF E1 E3 E5 E7 E9 EB ED EF F1 F3 F5 F7 F9 FB FD FF

and with a hex editor I see that isn't "xerox" word inside... little issue but also I get same code from new chip for resetting. So I think this isn't correct data. For reading data I found this usefull skecth project < (https://github.com/lugu/reset_sp112) > Other codes ways I get only 0x80 or 0xFF.. The problem is that I don't found any datasheet for this chip and I think that is a special calls for reading that like as send some bits MSB or LSB. I miss these. I looking your code and inside i2c-dev.h I see that'are some codes for i2c communcation... Probably I need to use some special code for read fine the chip. I found the address device on 0x73 but probabily I miss to send anything to chip.. some address for reading data code ?

meyerd commented 4 years ago

The numbers seem to counting up in Hex. So this could be an error or the sketch trying to evaluate all the eeprom addresses. I2c eeproms are more or less standardized on how to read out the values over i2c. You most of the times have a read address and a write address (which is the read address with some extra bit set). To get the concrete read address for your chip, you have to look at the concrete soldering of the address pins, which control 3 of the bits of the address. For that you need the type of the eeprom and possibly a datasheet. Most of the eeprom i2c types have some 24 in their type description. Without that it would be difficult to go further ...

The link you provided is useful. What you could do is to try different addresses and save all the data and then look if one of the addresses provided some sensible output that resembles something xerox. very likely this is the correct one.

Skymax7 commented 4 years ago

Agree, the key is datasheet of the chip, but little hard find it because the chip is a black half ball without any sign over it. I found some details on a russian like as code with lot of detalis. xerox_6010_eprom_code.pdf So, the I2C address for black is E6 while I found it with ic2scanner only on 0x73 and 0x00 address. Reading on E6 I get nothing... I found some datasheet chips here http://iwt.kiev.ua/filess but the big question is ....what is my chip ?

Skymax7 commented 4 years ago

On meanwhile that I look for datasheet I have thinked about this idea.... but , another easy way can be make your project working fine also for 6010 ?

meyerd commented 4 years ago

As of the documentation pdf you provided, the chip on that printer seems to be something different than only a simple EEPROM. All the chips I encountered up to now were just simple I2C eeproms with no additional functionality. As described in the PDF, the chip for 6010 seems to have a one time writable structure and a read only part. This I didn't encounter yet in any model. To read out the data there, a documentation of this chip is necessary i guess.