Мфу samsung scx-4300, scx-4200: решение проблемы download from pc


Эта проблема встречается довольно часто при отключении питания и сбоях принтера во время перепрошивки. В результате после включения питания принтер высвечивает на экране «Download From PC«, ни на какие кнопки не реагирует. При этом USB порт не работает, с компьютера принтер не виден вообще.

Традиционно есть два варианта «поднятия» принтера из этого состояния: замена платы форматтера (основной управляющей платы) и выпаивание ПЗУ принтера с дальнейшей перепрошивкой на внешнем программаторе. Первый вариант дорогостоящий, а второй требует также наличие дополнительного оборудования и навыков работы с ним.


 

Предлагаю третий вариант «оживления» принтера без замены форматтера и выпаивания ПЗУ.

Как известно, содержимое ПЗУ принтера состоит их трех частей: основная программа, область данных и программа-загрузчик. Основная программа может обновляться по USB порту, программа-загрузчик не меняется. В загрузчике, кроме собственно процедуры загрузки, есть также программа-монитор. С ее помощью можно, например, просмотреть и изменить содержимое памяти принтера.
Я думаю, что код загрузчика одинаков в 4300-м и 4200-м — на эту мысль меня наводит установленный в моем 4300-м принтере форматтер с маркировкой «SCX4200».

При старте принтера загрузчик сначала предлагает стартовать монитор, выдавая на «DEBUG»-интерфейс (отладочная консоль, подробнее чуть позже):

=================================================================== 
Press any key to execute Monitor Program within 1 sec.(in Boot) 
===================================================================

Далее загрузчик считает контрольную сумму основной прошивки. Если контрольная сумма основной прошивки равна 0, то стартует основная прошивка, в противном случае, что может быть, например, после неудачной перепрошивки, на экран принтер выводит «Download From PC«, а на DEBUG-интерфейс выдает:

<<<DownLoad_FromPC>>> 
There is no image in RAM. Download Start!!!
Select port : 'u' [usb] 'p' [parallel]

после чего ждет символ «u» или «p», и только с DEBUG-интерфейса. Вот тут-то все и стопорится. И только получив символ «u» или «U», принтер пишет на экране «via USB» и включает USB порт.
После этого компьютер находит новое USB-устройство «Boot downloader». Теперь можно грузить прошивку, как и при обычной перепрошивке с помощью usbprns2.exe, только надо заливать прошивку с удаленными первыми четырьмя байтами (4300-4200). После заливки прошивки принтер рестартует.

МФУ Samsung SCX-4300, SCX-4200: Решение проблемы Download From PC - часть платы форматтера

Теперь о DEBUG-интерфейсе.

Samsung SCX-4300, SCX-4200: проблема Download From PC

На плате форматтера рядом с процессором есть разъем с маркировкой «DEBUG». Правда, на моей плате разъема нет, есть только место под него с 4-мя дырками, но, возможно, на некоторых форматтерах он присутствует. Цоколевка разъема приведена на фото 1. Здесь и далее TxD (Tx) — передача, RxD (Rx) — прием. Этот разъем — интерфейс RS232, он же обычный COM-порт компьютера, но только в уровнях TTL 3.3 Вольт. Для подключения принтера к компьютеру необходим преобразователь уровней RS232 (+/-12 вольт) в уровни TTL 3.3В. В интернете полно схем таких преобразователей как на 5В, так и на 3.3В, можно найти на любой вкус и цвет — например, здесь или здесь.

Нужно обратить внимание, что подключать 5-вольтовый выход TxD к 3.3-вольтовому входу RxD на форматтере принтера нужно через резистор 40…100 Ом.

Но самый простой и оптимальный вариант — купить дата-кабель на мобильник для COM-порта: они обычно 5-вольтовые. Я купил кабель для Самсунга C100 (фото 2). Мне он нравится потому, что имеет разборный разъем.
Как правило, все подобные дата-кабели питаются от ноги DTR COM-порта. Есть одна тонкость: положительное напряжение для питания кабеля на этой ножке появляется только после установления соединения в терминальной программе.

МФУ Самсунг SCX-4300, SCX-4200: дата-кабель

Для подключения к принтеру я просто допаял к разъему дата-кабеля 3 «хвоста»: GND (общий), RxD и TxD согласно фото 3. Сначала нужно найти GND: общий провод (земля) должен звониться на 5-ю ножку 9-пинового разъема (фото 4). Если воткнуть кабель в компьютер — должна звониться на корпус.

Далее надо найти RxD и TxD. Для этого подключаю дата-кабель к компьютеру, открываю программу HyperTerminal (Пуск — Программы — Стандартные — Связь — HyperTerminal), устанавливаю соединение (Call/Connect) с любыми параметрами и, нажимая любую клавишу на клавиатуре, ищу импульсы осциллографом. Проверяю и амплитуду импульсов — должна быть 5 вольт. Это выход TxD компьютера — он будет соединяться через резистор 40…100 Ом (5В > 3.3В) с RxD на DEBUG-е.

Потом соединяю TxD компьютера поочередно с остальными проводами кабеля до тех пор, пока на экране терминала не пойдет эхо вводимых с клавиатуры символов. Это RxD компьютера — будет соединяться с TxD на DEBUG-е.

Мне пришлось разобрать принтер и снять форматтер — дырки на DEBUG-е были залиты припоем. Я разъем не ставил, просто очистил дырки «отсосом», а потом вставлял в них одножильный провод подходящего диаметра уже при собранном принтере. Предполагаю, что принтер уже подключен к компьютеру по USB. Землю я подсоединяю в первую очередь и к металлическому основанию, на котором закреплены платы — так надежнее, потом подсоединяю RxD и TxD (фото 5).

Подключать компьютер через переходник к принтеру нужно очень аккуратно, все сигналы идут сразу на микросхему процессора. Запускаю HyperTerminal, выставляю параметры 115200 8 N 1 без управления потоком, устанавливаю соединение (Call/Connect), включаю принтер. Если принтер «убит»перепрошивкой, то в терминале должно появиться:

=================================================================== 
Press any key to execute Monitor Program within 1 sec.(in Boot) 
===================================================================
<<<DownLoad_FromPC>>> 
There is no image in RAM. Download Start!!!
Select port : 'u' [usb] 'p' [parallel]

Нажимаю на клавиатуре «u» или «U», потом запускаю на компьютере стандартную программу прошивки:

 usbprns2.exe <firmware_name>

где <firmware_name> — имя файла стандартной прошивки без первых 4-х байт (4300-4200).

Принтер загружает прошивку как и в обычном режиме, затем рестартует. Если при включении принтера на экран терминала ничего не выводится, советую попробовать перезапустить HyperTerminal, проверить и заново переустановить параметры соединения (конечно, при условии, что переходник проверен и работает).

Несколько слов о встроенном мониторе. Вызвать его можно при старте принтера как с рабочей прошивкой, так и с нерабочей. Для этого при старте принтера нужно ввести любой символ. Причем нажимать клавишу на клавиатуре нужно практически с включением питания, а не ждать, когда он напишет приглашение, иначе он быстро запускает основную прошивку. В результате на экране терминальной программы увидим следующее:

=================================== ================================ 
Press any key to execute Monitor Program within 1 sec.(in Boot) 
=================================== ================================ 

[тут я нажал Enter]

---------------------------------------------------------------- 
START-UP MODE : Monitor Program 
Boot into pROBE+ like stand-alone mode 
[Type 'help' to see command info.] 
Version : B0.30 12-01-2003 by Keetaek Kim 
---------------------------------------------------------------- 
Do you want to download via parallel port?[N] : n

[тут я нажал n]

pROBE+>

Вводим «help» и получаем список команд монитора:

pROBE+> help
-----ROM monitor command format-----------
dm start_addr <byte_count>
dm.b start_addr <byte_count>
dm.w start_addr <byte_count>
dm.l start_addr <byte_count>
ESC repeat memory dump
fm start_addr byte_count byte_value
fm.b start_addr byte_count byte_value
fm.w start_addr word_count word_value
fm.l start_addr long_count long_value
pm addr byte_value
pm.b addr byte_value
pm.w addr word_value
pm.l addr long_value
ul byte_count : upload image
flash : upgrade flash image
fl : upgrade flash image
go jmp_addr
dl load_addr
dhry : check dhry speed

pROBE+>

Все адреса и данные шестнадцатеричные. Все команды монитора не пробовал, могу сказать только, что dm (display memory) — просмотр содержимого памяти, go — переход по адресу. Например, запуск основной прошивки:

go 10000 Enter

Остальные команды я не тестировал, но, думаю, что самой интересной и нужной будет команда flash — после ввода «flash» принтер переходит в тот же режим, как и при восстановлении убитой прошивки.

Встроенный монитор может пригодиться для восстановления принтера после заливки некорректной прошивки, когда контрольная сумма совпадает, но прошивка работать не хочет. С помощью монитора возможна также заливка прошивки более младшей версии поверх более старшей, что нельзя сделать в стандартном режиме. Возможна и кросс-прошивка 4300 <-> 4200. Но при этом нужно учесть, что, в отличие от программирования флешки программатором, не меняется область CRUM и внутренних переменных 4000h…0ffffh, так что работоспособность переделки таким образом 4300 <-> 4200 под большим вопросом.

Думаю, что данная методика может быть применена не только для «оживления» SCX-4300, SCX-4200, но и других Самсунгов.

В заключение подчеркну, что этот материал адресован профессионалам. Возможно, в описании есть ошибки или неточности — замечания и пожелания принимаются на e-mail, указанный в подписи.

StartCopy.ru, Лутов Андрей, Донецк, Украина

 


Статьи по теме:

Рубрика Ремонт печатающих устройств. Добавить в избранное. Оставить комментарий or leave a trackback.
Статистика:60/ 0,185s/ 52.27 MB