Запомните программа не меняет серийный номер чипа и не делает полную прошивку чипа. Поэтому чип не отходит больше того, что он печатал ранее и лучше использовать прошитый чип в новом принтере. Список принтеров доступных для прошивки чипов: Xerox WorkCentre 3210. Xerox WorkCentre 3220. Xerox Phaser 3140. Samsung SCX-3200. Samsung SCX-3217. Samsung SCX-4223F. Samsung SCX-4300. Samsung SCX-4600. Samsung SCX-4623. Samsung SCX-4824. Samsung SCX-4828. Samsung CLP-310/315. Samsung CLX-3170/3171. Samsung ML-2855. Samsung ML-1640/1641/1645/2240/2241/2245. Samsung ML-1910/1915/2525/2580/SP-650. Samsung ML-1660/1665. Невозможность прошивки печально известные самсунговских чипов с криптозащитой S3CC921, да и вообще их отсутствие отдельно от фирменных картриджей делало заправку принтеров и МФУ, где они применяются, невозможной. На протяжении года довольно успешно «боролись» с такими принтерами путем разовойсменыпрошивки самого принтера на модифицированную, позволяющую принтеру работать без чипа. Но производитель в ответ закрыл доступ к своим прошивкам, а «достать» прошивку можно не из любой модели, так что проблема заправки картриджей новых самсунговских принтеров остается актуальной. Программа PS3CC921.EXE позволяет с некоторыми ограничениями читать и записывать эти чипы. Это тестовая версия программатора. Пока программатор может работать лишь с одной версией чипа из 4-х возможных и записывает лишь часть прочитанного. Ограничения программы связаны с отсутствием у меня вообще какой-либо информации по этому чипу, а потому все изложенное в дальнейшем добыто и продолжает добываться исключительно опытным путем. Тем не менее даже в таком виде программа может быть полезна. Железо. Для работы программы нужен программатор I2C для COM или LPT порта, а также компьютер, имеющий хотя бы один «настоящий» последовательный или параллельный порт. Программа доступается к ним при помощи своего драйвера I2CDRV.SYS, так что USB эмуляторы этих портов работать не будут. Параметры всех параллельных и последовательных портов берутся из реестра, а затем порты сканируются на предмет подключенного программатора. Хотя по отзывам чип работает и от 5 вольтового питания, но я на всякий случай питание на него я подал с USB через стабилизатор на 3.3 вольта 78ls33. На 3.3 вольта я прицепил и подтягивающие резисторы по шинам SDA и SCL. Программа. Программатор – это консольная программа. Если ее запустить без параметров, она читает чип и записывает содержимое в файл RS3CC921.BIN размером 384 байта в текущей папке. При запуске с именем файла в командной строке программа читает этот файл и пишет содержимое в микросхему. Принимается только файлы длиной 384 байта. Редактировать полученный бинарный файл можно в любом HEX-редакторе, например, подойдет FlexHex, WinHex. Как я понял, память микросхемы состоит из 2-х блоков. Первый блок имеет размер 256 байт и находится в файле по адресам 0x00 –0xFF (hex). Этот блок читается и записывается программатором без проблем, и именно здесь находится большинство счетчиков принтера. Отмечу, что область памяти 0xC0 –0xFF принтерами не используется, и в разных чипах содержит разные данные. Для исключения затирания этой информации запись в эту область я в данной версии программы заблокировал, данные по этим адресам в файле при записи игнорируются. Второй блок расположен в файле по адресам 0x100 –0x17F. Он нормально читается, но пока он доступен как однократно программируемый. Это значит, что однократная запись возможна только в ячейки памяти, которые содержат число 0xFF. В этом блоке находятся в основном константы: номер CRUM-а, емкость и тип картриджа, дата выпуска, и т.д. В этой области также расположено несколько важных однократно программируемых данных. Это флаг окончания тонера «Exhaust toner» (0x14C), флаг игнорирования тонера «Clear toner» (0x14D), 16 байтное поле «Progress Bar» (0x160-0x16F). Флаги изначально равны 0xFF, а при активации флагов принтер пишет число «01». Поле «Progress Bar» в новом картридже содержит 10 байт 0xFF. При увеличении счетчика страниц CRUM-а принтер заполняет это поле слева направо байтами 0xA5. Если поделить число байт 0xA5 на общее число байт (16) и умножить на 100%, то получим процент израсходованного тонера, вычисленного исходя из количества распечатанных страниц. Принтер периодически проверяет поле «Progress Bar», и, если нужно, счетчик страниц CRUM-а корректируется по этому полю. Пока эта память доступна как однократно программируемая, предлагаю на новом катридже поля (Exhaust toner – 0x14c) и «Progress Bar» (0x160-0x16F), если они есть в конкретной модели принтера, заполнять нулевыми байтами. Использование памяти s3cc921 в различных принтерах. В чипах принтеров 46хх серии нужно обнулить область памяти 0x00 –0xBF, записать число 0x64 (=100% - Toner amount/остаток тонера) по смещению 0x1F, обнулить 0xFF байты Progress Bar-а и 0xFF байт поля Exhaust toner. Если поле Exhaust toner уже равно 0x01, то чип в этих принтерах работать скорее всего уже не будет. Но эти чипы можно, например, использовать в принтерах 1910, 2525 серии, где это поле не используется. В чипах принтеров 482х и 2855 серии (и в XEROX 3210/3220) тоже нужно обнулить область памяти 0x00 –0xBF, записать число 0x64 (=100% - Toneramount/остаток тонера) по смещению 0x1F, обнулить 0xFF байт поля Exhaust toner. В прошивках этой серии принтеров, включая 41 версию 482х, на данный момент поле Progress Bar не используется. Но можно его и обнулить – на работу принтера это влиять не должно. В чипах принтеров 191х, 252х серии (и в XEROX 3140/3155) нужно обнулить область памяти 0x00 –0xBF, обнулить 0xFF байты Progress Bar-а. Поля Toner amount и Exhaust toner в этих принтерах на данный момент не используются. Обнуление чипов 164х, 224х серии аналогично 191х. Отмечу только, что только последние прошивки используют Progress Bar. То есть закончившийся по этому полю чип вполне возможно использовать в принтерах со старыми версиями прошивок В принтерах 4300 все просто - нужно обнулить область памяти 0x00 –0xBF и все. По другим принтерам достоверной информации у меня пока нет, но, думаю, что приведенная подробные карты памяти позволят обнулять прошивки и этих принтеров. |