Блоги

Персональный блог Восстановление роутеров TP-Link через serial интерфейс на примере TL-WDR4300ND и WR1043ND.

Восстановление роутеров TP-Link через serial интерфейс на примере TL-WDR4300ND и WR1043ND.

Восстановление роутеров TP-Link через serial интерфейс на примере TL-WDR4300ND и WR1043ND.

Вступление.

Постараюсь изложить собственный опыт восстановления работоспособности роутеров TP-Link, покажу что это довольно ПРОСТО, и не стоит боятся данной процедуры. Страшно только в первый раз, и страх только от не изученности материала и отсутствия опыта в данном вопросе.


В процессе смены микрокода (перепрошивки) произошли непредвиденные ситуации ( выключилось электропитание, принудительно через консоль сменили версию микрокода, предназначенную совершенно для другой модели устройства или другой железной версии устройства (hardware version)) или просто в процессе обновления все «повисло», минут 40 ждали надеясь, после чего выключили питание. После включения питания или перезагрузки вы увидели только синхронно мигающие огоньки с интервалом 2 секунды (циклическая перезагрузка) или просто все светодиодные индикаторы горят, т.е. ваш роутер превратился в мигающий кирпичь … Не в коем случае не рвите на себе волосы, не плюйтесь в монитор (хотя такие мысли меня тоже посетили), лучше сразу успокоится и смериться с полученным результатом, но выкидывать устройство ни в коем случае не надо . Лично я окирпичил свой роутер TL-WDR4300ND по невнимательности записав во flash память микрокод для совершенно другой модели роутера…не вдаваясь в подробности , после решения смены прошивки через консоль (в процессе экспериментов с установкой различных пакетов отвался WEB интерфейс и не хотел больше ставится), но делать это в субботу утром было очень плохой идеей :thumbdown: – постоянные отвлечения и спешка привели к тому, что в команде на скачивание вместо версии микрокода для роутера 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 – serial интерфейс на роутере TL-WDR4300ND

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

1.3. Соеденительный кабель.


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

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

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


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

Рис.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 Настройка Putty вместо COM3 необходимо написать свой порт (см. диспетчер устройств)

1.5. TFTP сервер


Во время процесса восстановления на нем будет находится рабочая версия прошивки для Вашей модели роутера. Подойдет любой tftp сервер, я использовал WinAgents TFTP Server, скачивая с официального сайта и проводите установку, настроек не требуется практически ни каких. В папку (каталог) сервера помещается файл микрокода, который будем записывать во флеш память роутера (по умолчанию это C:Documents and SettingsAll UsersApplication DataWinAgentsTFTP Server XTFTPRoot). На сетевой карте компьютера устанавливаем IP адрес сервера по умолчанию для роутеров TL-WR1043ND 192.168.0.5 (192.168.0.2) или для моего роутера WDR4300ND как оказалось 192.168.1.100 хотя в процессе восстановления в консоли это будет видно, откуда пытается обновить прошивку роутер.
Во время восстановительных мероприятий должен быть запущен TFTP сервер, и с корневой папке (каталоге) должен лежать файл микрокода ( *.bin ).

2. Разборка устройства, нахождение нераспаянного serial интерфейса на плате.


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

Рис.2.1 - Разобранный TL-WDR4300ND
С моделью роутера TL-WR1043ND дела обстоят сложнее, дизайнер корпуса явно был в творческом вдохновении, особенность, у роутера нет боковых стенок как таковых, что бы его разобрать, необходимо, во-первых, раскрутить 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 - Подключение роутера к serial разъему WDR4300ND

3.2. включаем роутер, запускаем соединение в Putty.


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

Рис.3.2 – свидетельство верного подключения к устройству

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

db12x>

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

(как раз на этом я и парился в свое время, как оказалось одной командой можно было все узнать):

tftpboot

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

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

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


Вводим команду:

tftpboot 0x81000000 factory-to-ddwrt4300.bin

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

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

Последнее число 7c0000 нам еще пригодится, как итог знаем, что прошивка находится в ОЗУ роутера.

3.5. Очищаем область flash памяти, необходимой для записи микрокода


(обычно советуют сначала зачистить область, а потом скачивать прошивку, я считаю, что лучше перестраховаться и сначала скачать прошивку а уж потом вводить остальные команды)
Команда для роутера WDR4300ND:

erase 0x9f020000 +7c0000

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

erase 0xbf020000 +7c0000

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

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

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


Команда для роутера WDR4300ND:

cp.b 0x81000000 0x9f020000 0x7c0000

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

cp.b 0x81000000 0xbf020000 0x7c0000

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

Рис.3.6 – процесс записи файла микрокода роутера
Если все так, значит процесс прошел успешно!
:wow:

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-wr741nd-tp-link-tl-743nd.html
http://forum.ru-board.com/topic.cgi?forum=81&topic=4729
https://docs.google.com/file/d/0B8RHAmW4AacRYzZjMjZkMGUtZjFiNi00MTRhLTgyN2YtMDM1YjRjNjJlN2Y4/edit?hl=en&pli=1

Инструкцию (мануал) на основе собственного опыта и переживаний составил и оформил TemaBAR

18 декабря 2012 г. 02:03
76
78102
10
Добавить комментарий

Добавить комментарий

Изображение с кодом валидации

Пользователи, оставляющие комментарии, несут полную правовую ответственность за их содержание.
Информация об IP-адресах сохраняется.

В комментариях запрещено:

  • Использовать нецензурные выражения, оскорбления и угрозы.
  • Публиковать адреса, телефоны и ссылки содержащие прямую рекламу.
  • Обсуждать цену товара в разных регионах сети DNS и её изменение.
  • Писать отвлеченные от темы и бессмысленные комментарии.
  • Спасибо за статью!!! восстановил свой окирпиченный 1043! Горел только один идикатор PWR (обновлял прошивку Гаргулью и галочку поставил сохранить настройки). Использовал кабель для телефонов Pantech, который продали в ремонте сотовых как ненужный. Нашел на нем TX RX. С роутера данные шли, но tpl никак не мог ввести, уже думал флеху выпаивать, купил 150 Ом резисторы, но для начала решил попробовать припаять к VCC и RX этот резистор (т.к. на нем напряжение было порядка 1В) и Чудо! с первого раза в все команды в Putty пошли и в строгом соответствии с инструкцией залил прошиву от Гаргульи. все работает! Спасибо еще раз!
    Ответить # Аноним Екатеринбург 07.05.2015 05:02 7 мая 2015 г. 15:02
  • Тп-линки очень удобные и надёжные роутеры, настраивать очень просто, я настроил по мануалу http://www.carbofos.com/blog/webmaster/6452.html
    Ответить # Аноним Владивосток 24.02.2015 20:39 25 февраля 2015 г. 06:39
  • Где искать проблему, на выходе VCC и GRD замерял тестером напряжение, там выдает не постоянные показатели, скачет напряжение в пределах 3.4 - 4 вольта, а как я понял там должно быть 3.3
    Ответить # Аноним Киев 07.12.2014 19:11 8 декабря 2014 г. 05:11
  • Какзалось бы, причем тут UART?
    Ответить # Аноним Владивосток 15.10.2014 14:00 16 октября 2014 г. 01:00
  • Походу разобрался почему не могу ввести tpl видимо при пайке дорожка RX слезла, кто знает куда еще можно припаять RX?
    Ответить # Аноним Краснодар 26.08.2014 21:16 27 августа 2014 г. 08:16
  • Походу разобрался почему не могу ввести tpl видимо при пайке дорожка RX слезла, кто знает куда еще можно припаять RX?
    Ответить # Аноним Краснодар 26.08.2014 21:16 27 августа 2014 г. 08:16
  • Походу разобрался почему не могу ввести tpl видимо при пайке дорожка RX слезла, кто знает куда еще можно припаять RX?
    Ответить # Аноним Краснодар 26.08.2014 21:16 27 августа 2014 г. 08:16
  • Заказал USB UART конвертер подключил, теперь вижу нормальные буквы, но ввести tpl не могу. В чем может быть проблема?
    Ответить # Аноним Краснодар 25.08.2014 18:52 26 августа 2014 г. 05:52
  • роутер TP-Link TL-WR1043ND имеющиеся инструменты: https://www.dropbox.com/sc/jjl7o1pnf31wogw/AADKaf0IIQxpks-61HsRgLaTa подключался на прямую к Com порту в системной плате через com провод, в итоге получил в терминале не читаемые иероглифы. Пошел в магазин купил usb2.0 to rs232 думал дело в нем, но не тут то было в итоге получил эти же иероглифы. Никак не могу понять от чего появляются не понятные иероглифы, мог бы кто-нибудь подробно описать из-за чего такое происходит и как с этим бороться. Из выше прочитанного понял, что нужно припаивать резистор на 100ом, но не понял куда именно, либо между контактами vcc и tx делать перемычку из резистора, либо подключать 4й провод к плате через 100ом резистор к vcc, только вот проблема в ком кабеле у меня всего три провода, либо припаивать на каждый провод по резистору на 100ом. В общем я запутался, помогите пожалуйста восстановить этот гигабитный кирпич.
    Ответить # Аноним Киров 24.08.2014 17:25 25 августа 2014 г. 04:25
    • Была такая же ерунда! В итоге перепутано ТХD с RХD на шнурке!
      Ответить # Аноним Южный 03.12.2014 16:10 4 декабря 2014 г. 02:10
  • Установить кодировку в клиенте :)
    Ответить # Аноним Владивосток 13.08.2014 02:11 13 августа 2014 г. 13:11
    • кодировку менял, сейчас закажу готовый шнур, может в нем дело.
      Ответить # DDX777 Краснодар 13.08.2014 19:18 14 августа 2014 г. 06:18
  • При запуске вылазят кракозябры, скорость выставлял разную не помогает. Думал что не правильно запаял, перепаял, не помогло. Использовал USB COM переходник и шнур COM. Есть какие либо идеи?
    Ответить # DDX777 Краснодар 12.08.2014 19:23 13 августа 2014 г. 06:23
  • Прошивал tp-link wr1043. кабель использовал mobil action ma-8620e. правда, если использовать его как расписано про CA-42, то в putty тишина,если у вас есть провод с чипом pl2303 внутри, то можно прямо к ножкам припаяться. Например, у вас есть провод usb-rs232, но его напрямую использовать нельзя другие уровни по напряжению. Можно вскрыть провод и припаяться, чтобы получить TTL проводки прямо к ногам микросхемы 2303HX: 1 нога - TX, 5 нога - RX, 7 нога - GND. с первого раза и довольно крепко и четко взялось. Когда в putty все пошло можно не вводить на скорость на клавиатуре tpl, а скопировать в буфер и просто кликнуть правой кнопкой. бывает что не загружается прошивка с TFTP Serverа, нужно отключить брандмауэр. я заливал сначала горгулью - нужный размер. потом на сайте горгульи есть ссылка на подготовленную(sysupgrade) к переходу на заводскую прошивку прошивку :) с нее можно уже через веб интерфейс загрузить любую заводскую прошивку. https://yadi.sk/d/pfkdODd4ZLnHp
    Ответить # Аноним смоленск 09.08.2014 18:29 10 августа 2014 г. 05:29
  • Добрый день ! не подскажите я не успеваю ввести команду TPL у меня сразу начинается грузить прошивку но она крива стала что можно в этом случае делать?
    Ответить # Аноним Москва 03.07.2014 09:19 3 июля 2014 г. 20:19
  • Спасибо огромное, автору респект:)
    Ответить # Аноним Псков 17.06.2014 19:47 18 июня 2014 г. 06:47
  • Метода рабочая, вот только может есть кто в Омске у кого такой кабель завалялся? Отпишите на мыло incforcv@gmail.com
    Ответить # Аноним Омск 16.06.2014 04:52 16 июня 2014 г. 15:52
  • Автору - огромное спасибо за мануал! От себя могу только то наблюдение, что если что не получалось с первого раза - только из-за собственной невнимательности...
    Ответить # Аноним Саратов 04.01.2014 18:57 5 января 2014 г. 05:57
  • TemaBar,респект за пытливый ум и прямые руки! Есть вопросы: 1) эти адреса - 0x9f020000 и 0xbf020000 Вы откуда взяли? (у меня роутер 842ND,адрес возможно совсем другой) 2) сетевой интерфейс компаноута реагирует на подключение кабеля? (в моём случае статус "не подключён") спасибо!
    Ответить # Аноним Замкадом 02.12.2013 11:49 2 декабря 2013 г. 22:49
  • Добрый день! дело вот в чем. распаял rs232 как положено путти выдает кракозябры начал эксперементировать , подключил rx в tx а Gnd пдлкючил Внимание к VCC и о чудо появился нормальный текст нвчал вводить tpl реакции ни какой и двумя руками печятал и пкм нажимал не проходит. подскажите в чем засада ! заранее спасибо!
    Ответить # Аноним Екатеринбург 27.11.2013 08:02 27 ноября 2013 г. 19:02
  • Здравствуйте!!! У меня к вам такой вопрос. А по вашей инструкции можно ли восстановить роутер F@st 2804?
    Ответить # Аноним Оренбург 11.07.2013 20:43 12 июля 2013 г. 07:43
  • Народ заказал адаптер... Пришло 2 шт. Один продам кому нужен рублей за 200. Пишите в ЛС. Ждал 1.5 месяца. Отправлю Почтой или ТК за Ваш счет.
    Ответить # _AK_ Оренбург 02.07.2013 14:05 3 июля 2013 г. 01:05