Переделка роутера D-link DIR-620 в Zyxel Keenetic или делаем из г. конфетку
Что такое D-link DIR-620 и что такое Zyxel Keenetic, и для чего нужно переделывать одно в другое?
Достаточно почитать тему по DIR-620 на хоботе или на родном сайте D-link, чтобы понять что к чему. Имея неплохую элементную базу (чип Ralink 3052 2T2R на 300Мбит, 32Мб RAM и 8Мб Flash, USB порт), роутер подкачал в программном обеспечении — большинство гневных отзывов относится именно к прошивке. Хотя, чего ещё желать от устройства за 54$, позиционируемого для бюджетного сектора. Однако, Zyxel Keenetic собран на той же элементной базе, но отличается как по цене 105$, так и по программному оснащению. Заявлена поддержка USB накопителей, 3G и 4G модемов, торрент-клиент transmission прямо в роутере, и всё это реально работает. А можно ли из DIR-620 сделать Keenetic? Оказалось, что можно.
Переделка состоит из двух частей: прошивки и аппаратной доработки.
Для прошивки понадобится подключиться к последовательному порту внутри роутера. То есть, в любом случае, устройство придётся вскрыть, потеряв при этом гарантию.
Однако, забегая вперед скажу, что полученный результат того стоит.
Дополнение от 25.09.2011
Справедливости ради, стоит отметить, что пользователем deadc0de разработан другой метод перепрошивки в keenetic без перепайки и вскрытия устройства, который заключается в заливке модифицированной прошивки. Поэтому метод, описываемый в этой статье, стал неактуальным. Однако, его можно рассматривать как альтернативный, или аварийный, когда устройство перестало быть доступным по сети.
Часть №1: Прошивка
Изготавливаем кабель для подключения к последовательному порту роутера. Я использовал готовый кабель MA-8720P от сотового Siemens.
Вот кабель:
По совместительству, используется при ремонте накопителей Seagate через технологический разъём.
Подойдёт любой, у которого на выходе уровни 3.3В. Припаиваем к кабелю кусочек разъёма, например от шлейфика для флопа. Разбираем роутер и видим, что у DIR-620 последовательный порт не распаян, есть только пятачки, поэтому припаиваем туда штырьки для удобства подключения. Вот картинка с назначениями выводов (увеличить по щелчку):
Скачиваем программу TFTP32 — это бесплатный tftp сервер под windows. Скачиваем прошивку от Keenetic. Распаковываем и переименовываем файл в a.bin для удобства. Устанавливаем TFTP32 и кладём в корневую директорию tftp сервера файл a.bin.
Прописываем в своём компьютере IP адрес 10.10.10.3 и маску 255.255.255.0 (впрочем можно оставить и тот, который уже прописан, тогда его нужно будет вписать при прошивке). Запускаем TFTP32, запускаем HyperTerminal (под Windows 7 придётся воспрользоваться программой Putty), указываем порт, куда подключен наш кабель, задаём параметры подключения: скорость 57600, четность 8N1, управление потоком отключено. Подключаем роутер к нашему кабелю и включаем питание.
Если схема собрана правильно, видим на экране терминала:
U-Boot 1.1.3 (Feb 9 2010 — 10:44:20)
Board: Ralink APSoC DRAM: 32 MB
relocate_code Pointer at: 81fb0000
flash_protect ON: from 0xBF000000 to 0xBF01D3F3
flash_protect ON: from 0xBF030000 to 0xBF030FFF
============================================
Ralink UBoot Version: 3.3
———————————————
ASIC 3052_MP2 (Port5None)
DRAM component: 128 Mbits SDR
DRAM bus: 32 bit
Total memory: 32 MBytes
Flash component: NOR Flash
Date:Feb 9 2010 Time:10:44:20
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384
SDRAM bus set to 32 bit
SDRAM size =32 Mbytes
Please choose the operation:
1: Load system code to SDRAM via TFTP.
2: Load system code then write to Flash via TFTP.
3: Boot system code via Flash (default).
4: Entr boot command line interface.
9: Load Boot Loader code then write to Flash via TFTP.
Для прошивки нужно войти в режим записи, в нашем случае это пункт 2: Load system code then write to Flash via TFTP. Тут главное не упустить момент, так как на выбор даётся всего 3 секунды. Если с первого раза не получилось, придётся перезагрузить роутер снова.
2: System Load Linux Kernel then write to Flash via TFTP.
Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N) — Y
Please Input new ones /or Ctrl-C to discard
Input device IP (10.10.10.123) ==:10.10.10.123 — ENTER
Input server IP (10.10.10.3) ==:10.10.10.3 — ENTER
Input Linux Kernel filename () ==:a.bin — имя файла и ENTER
Предполагается, что у роутера адрес 10.10.10.123, у tftp сервера адрес 10.10.10.3 (мы прописывали на предыдущем шаге. Если оставили свой адрес, то укажите его, а роутеру присвойте любой свободный
из той же подсети). Загрузится прошивка, сотрётся содержимое флешки, зальётся новая прошивка. Всё это будет видно на экране терминала. После прошивки роутер перезагрузится:
Please press Enter to activate this console. Sending discover.
Sending discover.
На всякий случай сбрасываем настройки роутера длинным нажатием Reset. После перезагрузки у него будет адрес 192.168.1.1, логин: admin, пароль 1234. Поэтому прописываем себе IP адрес из этого диапазона или включаем автоматическое получение IP адреса (у роутера уже включен DHCP сервер).
Роутер уже работает по кабелю. Заходим браузером по адресу 192.168.1.1 и попадаем в интерфейс Zyxel Keenetic, радуемся новым возможностям в виде поддержки USB флешек, принтеров, модемов, и т.д. Одна только незадача, оказывается выключен модуль Wi-fi, так как в оригинальном Zyxel Keenetic есть ещё маленький выключатель беспроводного модуля, а в DIR-620 он отсутствует.
Часть №2: Доработка
О неработающем Wi-fi можно узнать из закладки Монитор веб-интерфейса: «Беспроводная сеть Wi-Fi выключена тумблером на корпусе».
Техническая информация:
Роутер построен на чипе Ralink RT3052, часть её выводов может работать как вход, так и выход, что определяется значением внутренних регистров, которые программируются во время загрузки микропрограммы. Производители Zyxel сделали выключатель Wi-Fi, который использует одну из ножек RT3052. В DIR-620 эта же ножка управляет светодиодом.
Нужная нам ножка RT3052 соединена с 4-ым выводом микросхемы 74lvc125a, к которой подключены светодиоды. 4й вывод отвечает за значок глобуса.
Чтобы заработал Wi-Fi, нужно припаять резистор номиналом 4,7 кОм между дорожкой, соединённой с 4-ой ножкой 74lvc125a, и плюсом питания 3,3 Вольт. Удобнее это сделать, припаяв резистор с обратной стороны платы между выводом 3,3V разъёма последовательного порта и площадкой под нераспаянный конденсатор С259.
Чтобы заработал индикатор-глобус, отпаиваем 4-ю ножку 74lvc125a от площадки (приподнимаем) и соединяем её с общим проводом. Удобнее подпаяться к площадке под конденсатор C142.
После этих действий получаем полностью работоспособный роутер — старшую модель Zyxel Keenetic.
Написано и опробовано по материалам конференции ixbt. Большое спасибо пользователю allep за предложенный метод переделки.
Как я прошил старый роутер, а Keenetic лишился двух с половиной тысяч рублей
Четыре года назад я написал о том, как обустроил интернет на даче. Роутер Zyxel Keenetic Omni II в паре с USB-модемом отлично покрывал двухэтажный дом сетью в диапазоне 2.4 ГГц, и даже немного оставалось на участок. Все были довольны.
Шли годы. Роутер работал, как новый, чего нельзя сказать о USB-модемах. Их хватало в лучшем случае на сезон, а в худшем — на пару месяцев. Да, я понимаю, что летом жарко, а конструкция модемов в принципе не заточена под режим 24х7. И все же отдавать каждый раз по 2-3 тысячи рублей не нравилось категорически. И вот на днях дал дуба очередной брендированный Huawei из старых запасов. Я собрался покупать замену, но обнаружил, что последний раз прошивка у Omni II обновлялась в 2018 году, а все модемы, продающиеся в Саратове, выпущены позже. Может заработают, может нет. Лотерея.
Прошивку перестали обновлять, потому что у Keenetic Omni II всего 8 мегабайт флэш-памяти, и новая Keenetic OS туда просто не влезает. С учетом того, что модель 4 года назад стоила недорого (2500 рублей), да и к флагманам не относилась, ругаться смысла нет. Проще купить актуальный Keenetic 4G с почти аналогичными характеристиками, который стоит сейчас 2900. Там операционка новая, все свежие модемы поддерживаются и даже MESH можно мутить.
Но тут я вспомнил, что кроме официальных обновлений у Keenetic есть как бы неофициальные. Но на самом деле вполне себе. Минута гугления — и вот она, заветная ссылка, где лежат прошивки для всех старичков. Нашел для Omni II, залил… И чудо-чудное случилось! Новый интерфейс, поддержка всех модемов на середину июня 2020 года, и даже автоматические обновления вернулись, только из другого источника. Да, ядро там старое, из Keenetic OS 2.x, но дачный труженик не гордый, переживет.
Покрутив похорошевший Omni II в руках, я понял, что Keenetic 4G покупать не буду. То есть компания, поощряя выход прошивок для старых моделей, лишила себя почти трех тысяч рублей лично от меня.
С точки зрения современного бизнеса, это так себе ход. Пользователь должен тратить деньги как можно чаще. Но по-человечески это очень правильно. Да, я денег в кассу не занес, но написал этот пост о положительном опыте. И кто-то, выбирая новый роутер, возьмет информацию на заметку. Жизнь покажет, какой подход практичнее.