Я уже писал о начале разработке аналога программе SSC Service Utility для сброса счетчиков чернил в картриджах струйных принтеров Epson:
http://www.linux.org.ru/view-message.jsp?msgid=2999309
Так вот. Есть новости.
Во-первых, я нашел единомышленников. Одну девушку-хакершу из Италии и еще одного отчаянного парня из Бразилии. Благодаря им (особенно девушке) удалось практически полностью разгадать формат сервисных команд для общения с принтерами Epson. В частности есть полный формат команд чтения и записи в EEPROM принтера, что собственно и нужно для сброса счетчиков.
Во-вторых, я обновил сайт, куда собственно и выложил форматы команд: http://reink.lerlan.ru/commands.html Исходя из этого формата видно, что у каждого EPSON принтера есть свой внутренний секретный код (пароль?), который нужен для того, чтобы выполнять над ним сервисные команды. Поэтому:
В-третьих, я обновил саму программу до версии 0.2. Теперь она умеет методом грубой силы (brute force) подбирать этот самый пароль. Имея пароль, мы можем писать и читать произвольные адреса EEPROM принтера.
Для многих старых принтеров этого уже достаточно, чтобы сбросить показания счетчиков чернил, так как для них назначение каждого адреса EEPROM описано в соответствующих сервисных инструкциях (service manual). Но для всех новых принтеров этой информации нет. Поэтому адрес памяти, по которому находятся счетчики чернил, придется как-то угадывать. Идея такая. Делаем первый тестовый отчет. Он угадывает пароль и делает первичный снимок EEPROM принтера. Затем делаем чистку головок принтера с той целью, чтобы показания уровней чернил изменились. Делаем второй тестовый отчет, который делает вторичный снимок EEPROM принтера. Оба снимка высылаются мне и я пытаюсь по ним определить адреса, содержащие количество чернил. Всё это также описано на странице: http://reink.lerlan.ru/report.html
Итак. Мне нужны люди. 1) Те, у кого есть принтеры Epson для создания тестовых отчетов. 2) Те, у кого есть сервисные инструкции (service manuals) к принтерам Epson. 3) Те, у кого есть принтеры Epson, которые не работают или которые работают, но их не жалко сломать. (Заметье, эти люди отличаются от людей типа 1).