Главная » Ремонт » Как я восстанавливал TP-Link 1043

Как я восстанавливал TP-Link 1043

Есть у нас дома роутер TP-Link 1043ND. Люблю я баловаться с обновлением прошивок, что однажды привело к печальному результату.

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

Я, конечно, опечалился. Стал смотреть цены на новые роутеры. Не порадовался им. Потому стал думать и гадать, как девайсу починять. Вспомнил, что когда-то видел статью на рутрекере о перепрошивке через внутренний интерфейс (хорошо, что когда-то интересовался темой перед началом экспериментов с ddwtr). Нашёл статью, починил, как там сказано. Теперь радуюсь. Кабель, кстати, нашёлся подходящий на работе — не пришлось мастерить (только rx-tx перепутаны были).

Ниже привожу статью целиком,  чтобы не потерялась ценная информация (в последнее время рутрекер то досят, то ломают). Исходник http://rutracker.org/forum/viewtopic.php?t=4282529

PS: Размер прошивки у меня отличался из-за наличия boot`а, соответственно, немного другие адреса были в пп.. 3.3-3.6.

 

Восстановление роутеров TP-Link через serial интерфейс. На примере TL-WDR4300ND и WR1043ND.
Вступление.
Постараюсь изложить собственный опыт восстановления работоспособности роутеров TP-Link, покажу что это довольно ПРОСТО, и не стоит боятся данной процедуры. Страшно только в первый раз, и страх только от не изученности материала и отсутствия опыта в данном вопросе.
В процессе смены микрокода (перепрошивки) произошли непредвиденные ситуации ( выключилось электропитание, принудительно через консоль сменили версию микрокода, предназначенную совершенно для другой модели устройства или другой железной версии устройства (hardware version)) или просто в процессе обновления все «повисло», минут 40 ждали надеясь, после чего выключили питание. После включения питания или перезагрузки вы увидели только синхронно мигающие огоньки с интервалом 2 секунды (циклическая перезагрузка) или просто все светодиодные индикаторы горят, т.е. ваш роутер превратился в мигающий кирпичь… Не в коем случае не рвите на себе волосы, не плюйтесь в монитор (хотя такие мысли меня тоже посетили), лучше сразу успокоится и смериться с полученным результатом, но выкидывать устройство ни в коем случае не надо . Лично я окирпичил свой роутер TL-WDR4300ND по невнимательности записав во flash память микрокод для совершенно другой модели роутера…не вдаваясь в подробности , после решения смены прошивки через консоль (в процессе экспериментов с установкой различных пакетов отвался WEB интерфейс и не хотел больше ставится), но делать это в субботу утром было очень плохой идеей – постоянные отвлечения и спешка привели к тому, что в команде на скачивание вместо версии микрокода для роутера WDR4300ND была скачена версия для WR1043ND, дальше пошла команда на запись в память… опять как так и надо в самом названии прописал лично руками 1043…при прошивке через консоль проверки на совместимость просто нет, тупо записал все в память и пошел в перезагрузку, итог очевиден — мигающий всеми светодиодными индикаторами приборчик… Вот и пришлось изучать вопрос восстановления работоспособности роутера через неприпаянный интерфейс serial. К моменту восстановления было много статей как восстановить популярную модель TL-WR1043ND. Но ни слова как это сделать с TL-WDR4300ND, думал будет все аналогично, как оказалось в процессе восстановления вылезло несколько особенностей…
Основная часть.
1. Подготовительный этап.Serial интерфейс в роутерах Tp-Link. Кабель. Программное обеспечение. Общая часть для всех роутеров.
Основная особенность восстановления роутера через serial интерфейс – это необходимость полностью разобрать устройство (возможно придется и работать с паяльником, хотя я прямой работы паяльником на плате устройства избежал).
Суть процесса:
-роутер подключается к serial интерфейсу роутера для подачи команд через консоль
-роутер подключен через сетевой интерфейс 1LAN роутера подключен к сетевой карте компьюетра
-На компьютере запущен TFTP сервер с файлом микрокода (прошивки)
-введя определенную последовательность команд, роутер скачает прошивку с TFTP сервера себе в ОЗУ, после чего запишет в свою flash память, после чего перезагрузится
Если все сделано верно произойдет «оживление» устройства.
1.1. Получение рабочей версии микрокода (прошивки) для роутера.
Для прошивки необходима рабочая версия микрокода для Вашей модели роутера для чего необходимо точно узнаете модель роутера и его железную ревизию
Если Вы будите восстанваливать работоспособность роутера альтернативными версиями микрокода (dd-wrt, open-wrt) – смело скачивать последнюю прошивку или сборку на основе альтернативных прошивок для Вашего роутера.
DD-WRT качаем отсюда ftp://dd-wrt.com/others/eko/BrainSlayer-V24-preSP2/ , выбираем текущий год, и самую последнюю версию релиза, далее находим раздел с файлами прошивки Вашей модели роутера. Качаем файл прошивки factory-to-ddwrt.bin
Open-WRT качаем отсюда http://downloads.openwrt.org/snapshots/trunk/ar71xx/ файл прошивки
Главное не ошибиться с версией (моделью) роутера!!!
1.2. Serial интерфейс представлен как 4 контактный нераспаянный разъем на плате устройства (4 pin)
На рис. 1.1-1.2 показано расположение serial интерфейсов и их распиновка.

1.1

Рис.1.1 – serial интерфейс на роутере TL-WDR4300ND

 

1.2

Рис. 1.2 – serial интерфейс на роутере TL-WR1043ND
1.3. Соеденительный кабель.
Для подключения устройства к компьютеру понадобится кабель, тут есть несколько вариантов
а) использовать COM кабель, разрезав один конец и припаяв к serial интерфейсу на плате
б) использовать USB to SERIAL RS232 кабель возможно использование старых дата кабелей мобильных телефонов Nokia, но я сделал проще – заказал кабель из Китайского интернет магазина (за 12 дней дошло)
мой вариант был использование кабеля PL2303HX USB To TTL COM. Поэтому распишу про него подробнее.

cabel

Цена с доставкой из Китая выходит 4$ (примерно 120-140 рублей) и 12 дней ожидания посылки.
Нормально работающие драйвера для данного устройства были скачены с официального китайского сайта, хоть и написано что работают в os Vista, Win7, но на деле они нормально работают только в ос WindowsXP, поэтому работы по восстановлению велись именно с этой ОС.
Драйвер ставится до первого подключения кабеля в USB разъем!!!.
После установки драйвера перезагружаем ОС, только после этого возможно подключение провода, в диспетчере устройств проверяем устройство (рис. 1.3) в моем случае это COM3.

1.3

Рис.1.3 – проверка установленного кабеля в диспетчере устройств


Проводки с контактами не подписаны, и ни где нет расшифровки цветового обозначения контактов, поэтому пришлось разобрать корпус кабеля для выявления (рис.1.4), нам необходимы только 3 контакта GND, TX и RX

gnd-rx

1.4

Рис.1.4 – китайский кабель за 3$ с доставкой. Распознование контактов


Ссылка в будущее, для подключения использовал 4 пиновый коннектор со старой материнской платы для питания вентилятора, подключив только 3 контакта, способ подключения к устройству (рис. 1.5): TX кабеля подключить к RX serial интерфейса; RX кабеля к TX serial интерфейса; GND кабеля к GND serial.

1.5

Рис.1.5 – метод подключения кабеля к serial интерфейсу роутера.

 

1.4. Терминальная программа
Для ввода команд необходима любая терминальная программа, но мне больше нравится отличнейшая программа Putty, которая может работать через ssh, telnet и т.д. Необходимоустановить (если ее еще нет) и настроить данную программу:
Conection type —Serial
Serial line — номер COM порта у меня это COM3
Speed — 115200
Data bits — 8
Stop bits — 1
Flow control — none
( визуально показано на рис.1.6):

1.6

Рис. 1.6 Настройка Putty вместо COM3 необходимо написать свой порт (см. диспетчер устройств)

1.5. TFTP сервер
Во время процесса восстановления на нем будет находится рабочая версия прошивки для Вашей модели роутера. Подойдет любой tftp сервер, я использовал WinAgents TFTP Server, скачивая с официального сайта и проводите установку, настроек не требуется практически ни каких. В папку (каталог) сервера помещается файл микрокода, который будем записывать во флеш память роутера (по умолчанию это C:\Documents and Settings\All Users\Application Data\WinAgents\TFTP Server X\TFTPRoot\). На сетевой карте компьютера устанавливаем IP адрес сервера по умолчанию для роутеров TL-WR1043ND 192.168.0.5 (192.168.0.2) или для моего роутера WDR4300ND как оказалось 192.168.1.100 хотя в процессе восстановления в консоли это будет видно, откуда пытается обновить прошивку роутер.
Во время восстановительных мероприятий должен быть запущен TFTP сервер, и с корневой папке (каталоге) должен лежать файл микрокода ( *.bin ).
2. Разборка устройства, нахождение нераспаянного serial интерфейса на плате.
Пришел черед решительных действий. Процесс разборки делайте как можно аккуратнее, не следует спешить, чрезмерно применять физическую силу.
Модель роутера TL-WDR4300ND довольно просто разбирается, необходимо открутить все шурупы с нижней части устройства ( сложилось впечатление что даже без шурупов все держалось бы просто отлично, они как дополнительная страховка) дальше, испытывая страх сломать пластик, отковырнуть верхнюю крышку, процесс сложноватый, я использовал стальную линейку и спички (фиксация отошедших зажимов, что бы не защелкнулись) данный процесс занял намного больше времени, чем откручивание шурупов.

2.1

Рис.2.1 — Разобранный TL-WDR4300ND

С моделью роутера TL-WR1043ND дела обстоят сложнее, дизайнер корпуса явно был в творческом вдохновении, особенность, у роутера нет боковых стенок как таковых, что бы его разобрать, необходимо, во-первых, раскрутить 2 шурупа, во-вторых, скрутить фиксаторы с разъемов антен беспроводной связи и утопить их полностью в корпус, в четвертых, выдвинуть насебя черную среднюю часть корпуса (П образная ребристая рамка с дырками для подключения устройств и вентиляция), отщелкиваем по бокам две защелки и раскрываем копрус… вот такие необходимо проделать манипуляции

2.2

Рис.2.2 — разобранный TL-WR1043ND

Других моделей роутеров TP-Link на данный момент я не разбирал.
3. Процесс восстановления работоспособности роутера.
Вот и добрались до главной части данного руководства (мануала).
Что же должно быть на данный момент:
-Разобранный и подготовленный роутер (возможно с припаянным коннектором к разъему serial на плате), сетевым кабелем соединен с компьютером через LAN1
-кабель (можно предварительно подключить, можно уже во время включения роутера)
-запущенный TFTP сервер
-рабочая версия микрокода (прошивки) для вашего роутера, находящаяся в корневой папке tftp сервера
-терминальная программа Putty, настроенная и готовая к соединению
3.1. Подключаем кабель к serial разъему на плате устройства (рис 3.1), соединяем роутер и компьютер сетевым кабелем: LAN1 роутера и сетевая карта компьютера (на сетевой карте прописывем IPv4 адрес 192.168.1.100 для версии роутера WDR4300ND)

3.1

Рис.3.1 — Подключение роутера к serial разъему WDR4300ND

3.2. включаем роутер, запускаем соединение в Putty.
Руки трясутся, сердцебиение повышенное, нервы на пределе, хотя волноваться не чего, все будет просто и безболезнено.
Если контакты были правильно подсоединены, то в окне терминального соединения мы увидим следующие периодически повторяющиеся строки:

3.2

Рис.3.2 – свидетельство верного подключения к устройству
Данные строки повторяются с периодичностью 1-2 секунды, синхронно с этим роутер синхронно мигает всеми светодиодными индикаторами (ну прям дискотека). Для начала ввода команд Вам необходимо успеть ввести команду tpl и нажать enter за 1 секунду в интервале после надписи Autobooting in 1 seconds и последующей перезагрузкой роутера, у меня данная операция получилась раза с пятого. Если все выполнено на экране Вы увидите предложение для ввода команд :

Цитата:
db12x>

3.3. Проверяем IP адрес tftp сервера с которого будет пытаться получить версию микрокода роутер, что же там на заводе в него запрограммировали (как раз на этом я и парился в свое время, как оказалось одной командой можно было все узнать):

Код:
tftpboot

В окне консольного соединения должно появится следующее (рис.3.3), где точно определим какой адрес должен быть у сетевой карты компьютера, если он не тот что Выставлен вами, просто сразу смените его.

3.3

Рис.3.3 –проверка ip адреса сетевой карты (tftp сервера)

3.4. Скачивание прошивки роутером с tftp сервера
Вводим команду:

Код:
tftpboot 0x81000000 factory-to-ddwrt4300.bin

где factory-to-ddwrt4300.bin имя файла прошивки, лежащее на вашем запущенном tftp сервере,
Если все верно вы увидете процесс скачивания прошивки (рис.3.4)

3.4

Рис.3.4 – Удачное получение роутером файла микрокода с tftp сервера

Последнее число 7c0000 нам еще пригодится, как итог знаем, что прошивка находится в ОЗУ роутера.
3.5. Очищаем область flash памяти, необходимой для записи микрокода
(обычно советуют сначала зачистить область, а потом скачивать прошивку, я считаю, что лучше перестраховаться и сначала скачать прошивку а уж потом вводить остальные команды)
Команда для роутера WDR4300ND:

Код:
erase 0x9f020000 +7c0000

для роутера WR1043ND адрес будет иметь такой вид 0xbf020000:

Код:
erase 0xbf020000 +7c0000

должно произойти что то подобное рисунку 3.5

3.5

Рис.3.5 – очистка памяти для записи

3.6. Запись образа микрокода на flash память роутера
Команда для роутера WDR4300ND:

Код:
cp.b 0x81000000 0x9f020000 0x7c0000

Для роутера WR1043ND:

Код:
cp.b 0x81000000 0xbf020000 0x7c0000

В окне отобразится следующее (рис.3.6)

3.6

Рис.3.6 – процесс записи файла микрокода роутера

Если все так, значит процесс прошел успешно!

3.7. Перезагружаем роутер либо выключаем питание, либо команда

Код:
reset

если роутер один раз мигнул всеми световыми индикаторами, и дальше пошло удачная загрузка, то Поздравляю, роутер восстановлен, можно заходить в WEB интерфейс (если вы восстановили прошивкой ddwrt или сборкой open-wrt с вебинтерфейсом) дальше можно настраивать подобно моей инструкции.
Заключение
Вот такой несложный процесс восстановления работоспособности роутеров TP-Link используя serial интерфейс. Помогает при реанимировании роутеров во время непредвиденных деструкивных действий с микрокодом (прошивкой) роутера.
Конечно есть еще один замечательный способ восстановления через так же нераспаянный разъем JTAG, но данный способ требует наличия программатора, и намного большего багажа знаний и опыта работы с «железом».
Надеюсь данная инструкция кому-нибудь поможет восстановить устройство, сэкономит время для изучения кучи материала, побережет нервы и финансовые ресурсы. Все просто, если относится ко всему спокойно.
При возникновении вопросов и пожеланий пишите тут, совместными усилиями постараемся во всем разобраться.
Использованные, переработанные, объединённые, переваренные материалы для создания данного руководства были подчерпаны со следующих информационных ресурсов и веток форумов:
http://forum.ixbt.com/topic.cgi?id=14:56970
http://wiki.openwrt.org/toh/tp-link/start
http://wiki.openwrt.org/toh/tp-link/tl-wdr4300
http://intervito.blogspot.ru/2010/11/tp-link-tl-wr7…nk-tl-743nd.html
http://forum.ru-board.com/topic.cgi?forum=81&topic=4729
https://docs.google.com/file/d/0B8RHAmW4AacRYzZjMjZ…?hl=en&pli=1
Инструкцию (мануал) на основе собственного опыта и переживаний составил и оформил TemaBAR 

Выскажись тут