Прошивка роутера через usb

Обновлено: 05.07.2024

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

Рано или поздно каждый пользователь интернета покупает себе домой роутер, поскольку количество устройств, требующих интернета, растёт. А у многих растут дети, которые тоже требуют подключения к интернету :) Но мне больно и обидно видеть, что люди не всегда понимают, что можно и нужно делать для достижения максимального комфорта.

Небольшой дисклаймер (не знаю как это по-русски).
Я буду употреблять слово «правильно» в том смысле, что я сам считаю правильным для себя. Пройдя путь от «нуба» в Линуксе до уровня «могу советовать другим», я считаю, что мои советы по крайней мере не хуже других советов, которые можно встретить на различных форумах.

Речь пойдёт о прошивке роутера на основе известного дистрибутива DD-WRT. Это прошивка, превращающая роутер в «обычный» линукс-сервер с весьма жёсткими ограничениями памяти и быстродействия. Несмотря на это, функционал такого сервера может получиться весьма богатым.

1) Выбор оборудования

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

    , модель начального уровня, зато непревзойдённая по надёжности. Покупалась более 3 лет назад, до сих пор в строю, «ни единого разрыва»… Характеристики: WiFi (b/g) + 4 LAN 10/100, 4Mb flash, 16Mb RAM, no USB. , современный и весьма дешёвый роутер, 3 месяца в строю, также нет нареканий по работе. Характеристики: WiFi(b/g) + 4 LAN 10/100, 4Mb flash, 16Mb RAM, 1 USB.
  • Совместимось данных моделей с прошивками DD-WRT. Возможности «родных» прошивок не рассматривались вообще: зачем выбирать цвет обоев в новой квартире, если впереди — всесокурушающий ремонт?
  • Объем памяти RAM. Почти все современные роутеры имеют 16Mb RAM. Этого как раз хватает для нормальной работы, но, как известно, каждая программа стремится захватить весь доступный объём памяти. Если есть желание выжать максимум из своего роутера или есть лишняя сумма денег, лучше найти модель с 32Mb памяти.
  • Наличие портов USB, ибо весь расширенный функционал удобнее всего ставить именно на внешнем носителе, т.к. flash-память роутера не сможет вместить всех новых программ. Мой первый роутер не имел USB, поэтому приходилось немного изгаляться и «работать напильником».
2) Прошивка роутера

Прошивка — это совсем не больно! Это на самом деле простая операция, ну такая как перректальное удаление гланд… Нет, правда ничего сложного.
При самой первой смене прошивки потребуется чуть больше усилий, зато каждая следующая пойдёт всё легче и легче.
Не следует опасаться, что смена прошивок будет происходить регулярно. Выбрав для себя набор программ, входящих в одну из готовых прошивок, можно на этом успокоиться и наслаждаться жизнью. Если понадобится дополнительный функционал — всегда можно установить новые программы отдельно, для этого существует специальный механизм. Но на первых этапах может случиться так, что выбор прошивки окажется неудачным, например в прошивке не окажется такой нужной возможности как поддержка SAMBA. Не беда, скачиваем другую прошивку, 2 движения мышкой — вуаля!

Некоторые модели роутеров (в частности Asus) перед прошивкой на DD-WRT требуют специальных действий (очистка памяти или что-то в этом роде). Внимательно следуйте инструкциям на конкретную модель роутера! Особенно внимательно нужно отнестить к требованиям «выждать 5 минут после окончания прошивки». Я был немного самоуверен и, перепрошивая своему коллеге роутер, слегка поторопился выключить питание после окончания прошивки. Результат — процедура восстановления и всё по-новой.
Если сказано «подождите 5 минут» — возьмите песочные часы на 5 минут и ждите! Это серьёзно.

Я не буду рассматривать сам процесс перепрошивки (tftp, смена адреса на 192.168.0.1, интерфейс и т.д.) — это всё изложено на форумах DD-WRT.

Но, наконец, вы закончили с прошивкой, и перед вами — чудесный новый WEB-интерфейс вашего роутера. Что дальше?

3) Подготовка к установке OPTWARE

Базовый функционал вы уже получили, выбрав версию прошивки. Осталось настроить параметры подключения к вашему провайдеру (DHCP, PPTP etc), и уже можно начинать бороздить просторы вселенной. Многим домашним пользователям этого уже будет достаточно.
Настройки параметров безопасности, управление маршрутеризацией и прочие стандартные для роутеров «фишки» я также описывать не буду. Без этого всё равно не обходится ни один «нормальный» роутер.
Но ведь можно же сделать ещё лучше! Продолжим процесс.

Все дополнительные программы объединены общим понятием Optware. (они ставятся в каталог /opt, который автоматически создаётся роутером и всегда доступен для записи). Однако сам каталог /opt пуст и фактически расположен в RAM — то есть, там очень мало места и всё, что туда попадает, будет потеряно при перезагрузке. Что же делать?

Выход следующий: нам нужно постоянное место на каком-нибудь «диске». И хотя описываемые хранилища не имеют формы диска в геометрическом смысле (скорее это кристаллы кремния в пластиковых корпусах с металлическими выводами), будем всё же называть их дисками.

Если flash-память роутера достаточно большая, а размер прошивки меньше общего размера flash-памяти, то оставшееся место можно использовать для хренения данных. Если выбрать прошивку с поддержкой JFFS, то в зависимости от версии, можно получить от 0.5 до 3Mb «диск» прямо внутри роутера. Такой диск будет автоматически примонтирован как /jffs при старте.

Главной неприятностью при работе с flash-дисками является их быстрая деградация при записи. Если количество перезаписей сектора «диска» превысит некий порог (от 10 до 100 тысяч циклов), то диску придёт конец. Всё плохо… :(

Если с внутренним диском произойдёт такое, действительно будет плохо. Но если это внешний USB диск, то лёгким движением руки заменяем USB-флешку на новую — и снова в бой. Ведь USB-флешки давно уже расходный материал, не так ли? Тем более что достаточна флешка объемом 1 или 2Gb. Главное, как обычно, вовремя делать бекапы.

Как вы уже поняли, основным местом установки Optware является внешний USB диск. Важно иметь в виду, что USB должен быть определённым образом отформатирован перед установкой в роутер. Как минимум, должен присутствовать первичный раздел, отформатированный как ext2 или ext3.

    раздел ext2, размер

  • постоянно работающий где-то в сети сервер (или NAS, или просто десктоп-машина, даже ноутбук) с поддержкой SAMBA
  • прошивка с поддержкой CIFS/SAMBA

Чтобы всё заработало, достаточно в настройках роутера в разделе CIFS указать сетевой адрес и логин/пароль для доступа к расшаренной папке, и при следующей перезагрузке роутер автоматически примонтирует сетевой диск в папку /tmp/smbshare.

SD/MMC

Предположим, что у нас нет ни свободного места в flash-памяти роутера, ни USB, ни сервера. А нам очень нужно установить Optware. Что же делать?

Как обычно, «у нас с собой было» (это мой любимый девиз). Если совсем ничего нет, то придётся немного поработать напильником.

Для некоторых моделей (среди которых WRT-54GL) доступен так называемый SD/MMC mod. Достаточно приклеить куда-либо SD или MMC карту и припаять 6 проводков, и можно получить место для установки Optware и хранения пользовательских данных.

Именно такой мод я в конце концов и сделал, чтобы из старого роутера получить автономную точку доступа под WiFi Hotspot Chilli. Это — тема отдельного поста, возможно скоро соберусь и даже сделаю мини-сайт. Если кого-то ещё эта тема интересует, напишите в приват.

4) Определение точки монтирования, startup, shutdown

В зависимости от выбранного «диска» точка монтирования будет разной. Для внутренней flash-памяти это будет /jffs, для USB это будет /mnt (если разрешить автоматическое монтирование), для CIFS это будет /tmp/smbshare, для SD/MMC это будет /mmc.

Если выбран вариант USB, то следует запретить автоматическое монтирование — мы сами будем это делать «правильным» образом.
Как я уже сказал, Optware устанавливается в строго определённое место — каталог /opt. Этот каталог уже есть, нужно только примонтировать к нему реальный «диск».

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

Для начала надо разрешить доступ к роутеру по telnet или по SSH протоколу.
Рекомендую настроить доступ по SSH, так как это безопаснее и просто удобнее (можно настроить авторизацию по ключевому файлу и даже не вводить каждый раз пароль при доступе). А доступ нам понадобится неоднократно, чтобы устанавливать программы и смотреть, WTF, почему они не хотят правильно работать.

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

Создадим скрипт .rc_startup, который пока будет делать только одно: монтировать внешний «диск» в папку /opt.
Варианты:

USB mount /dev/scsi/host0/bus0/target0/lun0/part1 /opt
JFFS mkdir -p /jffs/opt
mount -o bind /jffs/opt /opt
CIFS mount.cifs $(nvram get samba_share) /jffs -o user=$(nvram get
samba_user),pass=$(nvram get samba_password)
mount -o bind /jffs/opt /opt

Сохраним его в роутере кнопкой Save startup, перезагрузим роутер (возможно, он перезагрузится сам) — после этого у роутера должен появиться каталог /opt, куда теперь можно записывать файлы. Проверим?

telnet router
cd /opt
echo "OK" >opt.ok
cat opt.ok

если получилось «OK» — значит всё ОК, если нет — значит что-то не так… Гуглим, ищем где ошибка, повторяем…

5) Установка Optware — первый шаг

Ну вот, всё позади, у нас в сети — роутер с возможностью установки Optware. Приступим.

Т.к. у меня на ноутбуках Windows, я использую Putty (telnet или SSH) для доступа к консоли роутера и WinSCP для копирования и редактирования файлов.

Подключаемся через WinSCP к роутеру и создаём в папке /tmp следующий скрипт:
opt-inst.sh

Подключаемся через Putty к роутеру и выполняем скрипт:

cd /tmp
chmod 740 ./optw-inst.sh
./optw-inst.sh

В результате работы скрипта будет создана начальная конфигурация Optware и программа-установщик opt-inst. Теперь можно приступать к установке всех остальных пакетов программ.

6) Установка первых пакетов

Для начала установим какой-нибудь совсем простой пакет, например rsync. Он нам пригодится в дальнейшем для настройки резервного копирования.

cd /opt
ipkg-opt update
ipkg-opt install rsync

Если всё прошло успешно и нет никакой ругани в консоли, то можно продолжить установку.

  • mc — Midnight Commander
  • tcpdump — сбор и анализ сетевого трафика
  • busybox — расширенные версии основных утилит Linux
7) Окончательная настройка

Тут следует сделать некоторые замечания. В разных версиях прошивок процедура запуска и останова почему-то отличается, причём в существенной части, а именно — запуск пользовательских скриптов из init.d.

В более новом роутере (версия прошивки 13972) пользовательские скрипты
/opt/etc/init.d/S* автоматически вызываются после завершения работы системного .rc_startup, и аналогично, /opt/etc/init.d/K* перед запуском .rc_shutdown. Поэтому для запуска и оснанова нужных сервисов достаточно, чтобы их соответствующие S* и K* скрипты находились в папке запуска /opt/etc/init.d

Однако и тут (по крайней мере в моём случае) не обошлось без «подводных граблей» (чьё-то меткое выражение). По законам жанра, запуск скрипта S* должен быть с параметром start, а запуск K* — с параметром stop. Но DD-WRT почему-то не передаёт start при старте, хотя и передаёт stop при останове. Пришлось делать некий work-around:

Системный скрипт .rc_statup (создаётся при запуске в /tmp и запускается силами процесса init) выглядит примерно так (некоторые подробности опущены, полный код доступен здесь):

Каждый S* и K* скрипт содержит примерно такой код:

if [ -n "$1" ]; then
OP=$1
else
OP=$(cat /tmp/.rc_stage)
fi

Системный скрипт .rc_shutdown (создаётся при перезагрузке в /tmp и запускается по команде reboot) выглядит примерно так (некоторые подробности опущены, полный код доступен здесь):

В более старом роутере (версия прошивки 13064) S* и K* скрипты вообще не вызываются автоматически, поэтому пришлось делать так:

А уже optware-скрипт /opt/.startup делает всё остальное, а именно — запускает S* скрипты.

Аналогично устроен и системный скрипт .rc_shutdown: (только запускает /opt/.shutdown не в фоновом режиме, а непосредственно)

Конечно для подключения нам нужен Putty ( Putty - официальный сайт ). неоднократно уже было на нашем канале как подключать, статьи:

вот скриншот с роутера Xiaomi Mi, но принцип один и тот же (скорость ставим не 115200, а 119000 )

Производим ряд подключений

  • Подключаем конвертер Serial-USB
  • Включаем соединение в Putty > "Open"

При включении роутер в сеть (обязательно уже должен быть подключен адаптер USB-Serial и открыта консоль в Putty, иначе пока все будите включать пропустите U-boot)

Настраиваем:

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

Про кодировку

  • Чаще всего используется кодировка UTF-8
  • Реже Windows-1251, центральная Европа (например Asus RT-N65U, статья: " Попытка восстановить роутер Asus RT-N65U или как умирают роутеры ")

Про скорость

Все дело в том что сначала при загрузке U-boot и чуть опосля бегут крокозябры и в начале ничего не видно, а там же интересная информация что делать?

Настраивать скорость UART

Ее можно и нужно настроить в двух местах:

  • 1. Через панель управления
  • 2. Через Putty

Через панель управления

Панель управления\Оборудование и звук\Диспетчер устройств\Порты (COM и LTP)

Выбираем ваш порт, у меня "USB-SERIAL CH340", далее "Параметры порта"

Нам нужна скорость порта, по умолчанию она 9600 но!

Скорость (BaudRate, БодРейд) лучше выставить скорость большую чем скорость нашего устройства (роутера), поэтому меняем 9600 на 115200 . Хотя у меня работает все и на стандартной скорости 9600, но это может помочь в других случаях.

Скорость в Putty

А вот скорость в настройках терминала в нашем случае это программа Putty должна ровняется скорости (BaudRate, БодРейд) устройства. ее мы подбираем руками экспериментально, но чаще всего это то же 115200 или 57600

Общепринятый ряд стандартных скоростей: 300; 600; 1200; 2400; 4800; 9600; 19200; 38400; 57600 ; 115200 ; 230400; 460800; 921600 бод. (скорость в бодах иногда используются синонимы бодрейт или битрейт)

Тем не менее при стандартной скорости 115200 все равно бегут крокозябры, но потом все налаживается

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

Как узнать версию прошивки роутера

Дно роутера

Для начала необходимо выяснить номер текущей версии микрокода. Переворачиваем сетевое оборудование, на нижней стороне внимательно изучаем наклейку.

Зная номер аппаратной ревизии, загружаем корректную версию ПО для перепрошивки роутера TP-Link.

Как прошить роутер TP-Link

Прошивки ПО для TP-Link-роутеров хранятся на сайте в зависимости от версий. Также прилагается подробная инструкция по обновлению в видеоформате и FAQ – наиболее часто встречающимся вопросам-ответам.

Скачиваем прошивку. Она представляет собой архив. Его необходимо распаковать на локальном диске, чтобы получить доступ к самой прошивке. Обычно программа представлена в виде файла с расширением .bin, но в старых моделях еще встречается файл .ras. Это устаревший вариант микрокода, не используемый в современных роутерах для обновления.

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

После создания копии переходим к разделу «Обновление встроенного ПО»:

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

После завершения процесса роутер автоматически перезагрузится. Его настройки сбросятся на заводские.

Существуют и другие способы, чтобы прошить модем TP-Link до актуальной версии.

Прошивка через USB-порт

Флешка

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

Нажимаем «Обновить», ожидаем окончания процесса. Данный способ подходит, если сетевое устройство TP-Link находится на удаленном расстоянии от рабочей станции, и роутер напрямую не подключен ни к одному ПК.

Прошивка через мобильное приложение TP-Link Tether

Обновление прошивки на роутере TP-Link также производится через мобильное приложение. Ниже приведены ссылки для скачивания прошивок с магазина интернет-приложений:

Стоит сказать, что у приложений есть список совместимости. Он находится в описании к ПО. Производитель официально заявляет, что список со временем будет пополняться.

Tp link Tether

Чтобы перепрошить роутер «ТП-Линк», надо скачать приложение, включить «вай-фай» на мобильном устройстве. Далее найти модель, микрокод которой надо обновить, подключаемся к ней через TP-Link Tether. Сетевое оборудование попросит пользователя ввести учетные данные.

После прохождения процедуры авторизации, попадаем в главное меню. В нем нужно посмотреть список подключенных устройств к сетевому оборудованию, установить параметры родительского контроля или изменить конфигурацию подключения к сети «Интернет».

К сожалению, обновить прошивку роутера через мобильное приложение теперь нельзя. На текущий момент функция недоступна.

Альтернативные версии прошивок

Кроме официальных версий прошивок для сетевого оборудования TP-Link, существуют и альтернативные сборки. Они созданы инициативными разработчиками для расширения функциональных возможностей заводских установок роутеров TP-Link для домашнего пользования, а также для точек доступа Auranet.

Способ обновления у них такой же, как и у официальных прошивок.

Восстановление роутера TP-Link после неудачной прошивки

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

Разница только в одной цифре в строке IP-адреса.

После этого нажимаем ОК во всех окнах. Рекомендуется также дезактивировать антивирусное ПО и межсетевой экран. Они способны заблокировать дальнейшие действия пользователя.

Show Dir

Открываем программу TftpD от имени локального администратора. Смотрим на поле Server Interface, где должен указываться адрес, прописанный вручную на сетевой карте ПК выше. Потом нажимаем на кнопку Show Dir и проверяем, есть ли там имя файла загруженной прошивки. Если нет, ее необходимо скопировать в каталог с программой. Если программка присутствует, оставляем TftpD открытым и продолжаем процедуру восстановления.

Возвращаемся к роутеру TP-Link, выключаем его. Далее следует нажать на нем кнопку питания, после этого удерживать кнопку Reset до тех пор, пока не запустится автоматическая процедура восстановления.

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

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

Заключение

Статья рассказывает о методах обновления встроенного программного обеспечения на сетевом оборудовании TP-Link. Также представлена краткая информация об альтернативных прошивках.

Ремонт любой сложной электронной техники, в настоящее время можно условно разделить на два варианта: либо программный ремонт, “софтовый”, либо ремонт аппаратный, на уровне “железа”. Если первый подразумевает собой просто настройку аппарата, которую способен выполнить любой пользователь знакомый с техникой, в случае если по каким-либо причинам его настройки сбились в процессе эксплуатации.

Ремонт аппаратный - это чаще всего пайка, замена определенных радиодеталей которые вышли из строя по различным причинам. Будь то перегрев, например из-за набившейся пыли в корпусе устройства, и как следствие худшая теплоотдача, или же попадание влаги и в результате короткое замыкание. Либо то-же самое, любимое всеми мастерами КЗ устроенное на плате поселившимися насекомыми в корпусе устройства), а следы их деятельности, на платах, встречаются нередко.

Прошиваем с помощью клипсы

Прошиваем с помощью клипсы

Но существует и третий вид ремонта, обычно применительно к цифровой технике, в котором эти два вида ремонта бывают совмещены - это перепрошивка устройства. И если смартфон или планшет мы можем перепрошить просто подключив его к компьютеру по USB кабелю, то например, с роутером, материнской платой или видеокартой такой способ не пройдет. Все они содержат в своем составе Flash память, специальную микросхему, обычно 24 или 25 серии, в которой и хранится наша прошивка.


Микросхема памяти 25 серия

С материнскими платами и видеокартами обычно все просто - нужен программатор Flash и EEPROM памяти, например простой и дешевый CH341A о котором и пойдет речь, как одном из вариантов для решения нашей проблемы. Также для прошивания памяти без выпаивания будет нужна специальная клипса, для прошивания микросхем в корпусе SO-8 или SO-16. У меня есть обе клипсы в моей домашней мастерской.


Клипса для прошивания SO-8

Первая из них, для микросхем в корпусе SO-8, обычно бывает нужна во много раз чаще, чем вторая, для микросхем в корпусе SO-16. Которая пригодилась мне всего один раз для перепрошивки роутера Zyxel, они же, к слову сказать, так как считают себя известным брендом, оригинальничают и ставят иногда микросхемы в подобных корпусах SO-16, и хорошо еще если не микросхемы 29 серии, кто в теме - тот сразу поймет.


Разъем клипсы SO-16

Дело в том, что для того чтобы прошить микросхему 29 серии, нам необходим намного более дорогой программатор - MiniPro TL866A, который у меня также есть, но нет ни переходника с корпуса Dip на данный корпус, который имеет очень частое расположение ножек, и по сравнению с пайкой которого паять микросхему в SMD корпусе, те же SO-8 или SO-16 - детская забава. Так вот, мне на ремонт достался как раз роутер Zyxel с микросхемой 29 серии. В первый раз когда я ремонтировал предыдущий роутер Zyxel, микросхема была последовательной памяти, 25 серия, пусть и в корпусе SO-16. Тогда, как вы понимаете, выполнить ремонт было в разы проще.


Микросхема памяти 29 серии

Так как же все-таки мы можем восстановить роутер, если нам “повезло” и у нас стоит именно такая микросхема 29 серии? Производители роутеров, в данном случае, предусматривают аварийное перепрошивание через TFTP сервер. Но проблема в том, что иногда у нас бывает затерт загрузочный раздел в памяти микросхемы, который называется U-Boot. В таком случае вам подойдет вариант прошивки памяти роутера по определенным адресам, которые вы должны будете найти самостоятельно на специализированных форумах по перепрошивке роутеров. Но обычно все бывает намного проще - прошивка сбилась, данные необходимые для работы роутера в штатном режиме потеряны, но загрузочная область и калибровочная область целы. В Таком случае будет нужен простой и дешевый адаптер USB-TTL, стоимость которого на Али экспресс составляет всего порядка 40 рублей.


Также подойдет адаптер на микросхеме CH340A, который используется для заливки скетчей в плату Ардуино Pro mini, которая не имеет распаянного на плате загрузчика CH340A. Так-же подойдут адаптеры на базе pl2303, либо программатор Flash и EEPROM памяти CH341A, про который уже писал выше, и который может после перестановки перемычки работать в режиме USB-UART адаптера.


Программатор Flash и EEPROM памяти + USB-TTL

В крайнем случае можно будет воспользоваться кабелем для прошивания от старого мобильного телефона, также содержащим конвертер USB-COM, только нужно будет обязательно согласовать уровни по питанию. Питание с адаптера необходимо брать строго 3.3 вольта, никаких 5 вольт, которые он может выдавать, с определенного пина. Итак, допустим у нас есть этот адаптер, (вернее любой из перечисленных выше), мы установили для него драйвер, зашли в диспетчер устройств в Windows и определили, какому номеру СОМ порта соответствует наш адаптер. А данный адаптер это и есть не что иное, как виртуальный СОМ порт в вашей системе.

Ищем номер СОМ порта

Затем нам нужна какая-либо программа - терминал, в которой с помощью консольных команд, мы и будем восстанавливать наш роутер перепрошивая его. Но перепрошивать роутер мы будем не через данный адаптер, адаптер используется только для управления процессом прошивки. Как же в данном случае мы прошьем роутер? Существуют, конечно, варианты прошивки роутера через его процессор ARM по интерфейсу JTAG, и у меня есть и этот программатор, приобретенный на Али экспресс - это программатор Wiggler, подключаемый по LPT интерфейсу, но попробовав разобраться с ним решил, что способ перепрошивки с помощью TFTP сервера намного проще.


Программатор JTAG Wiggler

Разберем подробнее данный, более простой вариант, для которого JTAG программатор не нужен, это перепрошивка, как уже писал выше, через TFTP сервер. Для этого нам потребуется, подключить наш адаптер USB–UART к 4 пинам на плате роутера. Правда иногда бывает так, что производитель контактные площадки и дорожки развел, а сами пины не впаял. В таком случае можно самостоятельно впаять гребенку состоящую из 4 пинов, приобретенную в радиомагазине либо выпаянную с донорской материнской платы или какого другого устройства.


Эти пины в принципе можно даже не впаивать если нет возможности, а просто аккуратно подпаяться к пятакам на плате, контактным площадкам, куда должны были быть впаяны эти пины. Для этой цели очень удобен тонкий провод МГТФ. Итак, мы подключили адаптер к компьютеру, установили драйвер, обеспечили необходимое нам надежное соединение с этими 3 из 4 пинов на плате.


Джамперы Ардуино для адаптера

Для соединения с гребенкой удобно использовать джамперы, перемычки, используемые для подключения плат Ардуино к шилдам. Каким же образом, нам нужно соединить данные 3 провода? И почему всего три, если контактов четыре? Питание на роутеры не рекомендуют подавать от адаптера, питание должно приходить от собственного блока питания. Поэтому плюс питания лучше отсоединить, даже если вы используете как и положено напряжение 3.3 вольта.


Соединение адаптера и роутера - схема

Земли устройств, соединяемых между собой при перепрошивании, нужно объединять, поэтому землю, пин GND, подсоединить нужно будет обязательно. А вот оставшиеся два пина, RX и TX, нужно подсоединить “перекрестив” их между собой, то есть RX соединить с TX, а TX, с RX. Итак, мы подключили все правильно, затем нам нужно правильно настроить терминал, я предпочитаю пользоваться Putty, для того чтобы иметь возможность управлять нашим роутером через консоль, и соответственно залить в него новую прошивку.


Значит мы выбираем в настройках Putty порт Serial, последовательный порт, или СОМ порт, затем устанавливаем нужный номер СОМ порта, который мы предварительно посмотрели в диспетчере устройств. После этого нужно настроить скорость СОМ порта, обычно это 57600, реже 115200 бод. И наконец, убедившись еще раз, что все соединено правильно, ничего на плате не “коротит”, не будет замкнуто, в процессе перепрошивки, мы войдя заранее в настроенную консоль и подаем питания на роутер от родного блока питания.


Кракозябры в терминале

Если у вас на экране, побежали “кракозябры”, значит вы неправильно настроили скорость СОМ порта и нужно либо почитать какая скорость должна быть установлена для вашей модели роутера, либо подобрать ее экспериментально до пропадания “кракозябров” и появления обычного текста. Затем нужно будет нажать, сразу после включения питания роутера, поймав нужный момент, что бывает не так просто, определенную комбинацию клавиш, либо tpl, для роутеров TP-Link, либо цифры 4, вход в консоль, либо цифру 2, для роутеров Zyxel, запуск перепрошивки с TFTP сервера.


Интерфейс TFTP сервера

Сам сервер должен быть запущен от имени администратора в сетевых подключениях, там должен быть указан ip адрес сервера, который подскажет либо консоль, либо можете самостоятельно найти в интернете. В TFTP сервере нужно будет указать ip адрес клиента и папку, в которой находится наша прошивка.


Меняем настройки сетевого подключения

Сама прошивка должна быть обязательно без Boota, то есть когда мы шьем прошивку прицепившись клипсой, через программатор 25 серии SPI, нам необходим Фуллфлеш, или иначе говоря прошивка с загрузчиком, в данном случае прошивка должна быть стандартная, без загрузчика, какую обычно предоставляет производитель, на своем сайте. Имя файла прошивки лучше сделать попроще, например 123.bin, его будет нужно ввести в консоли, при запуске процесса перепрошивания.


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

Объяснение процесса прошивания получилось конечно объемное, но сам процесс для человека выполнившего его хотя бы пару раз, становится довольно простым делом. А учитывая, что роутеры это техника, которая долго не живет, особенно в период, когда проходят грозы, в мае - июне, думаю данная статья будет полезна новичкам желающим сэкономить средства на покупке нового роутера. Всем удачных ремонтов! Специально для сайта Радиосхемы - AKV.

Форум по обсуждению материала КОНВЕРТЕР USB-UART: ПЕРЕПРОШИВКА АДАПТЕРОМ


Коммуникационный протокол UART - что это и как он работает, подробное описание интерфейса и распиновка разъёмов.


Простая транзисторная схема робота следующего по нарисованной линии. Без микроконтроллеров и дорогих деталей.


Куда применить отжившие свой век моторы от винчестеров ПК - подключение такого двигателя и варианты идей.


Подключение и испытание усилительного модуля на транзисторах КТ835 от электрофона "Россия 321 Стерео".

Читайте также: