[Из песочницы] Облагораживаем Wi-Fi роутер Phicomm K3C

msivhm3lfxwndizvxmtkw8h4x2o.jpeg

1. Немного предыстории
2. Технические характеристики Phicomm K3C
3. Прошивка OpenWRT
4. Русифицируем интерфейс
5. Добавляем тёмные темы

Есть у китайской фирмы Phicomm в модельном ряду Wi-Fi роутеров устройство под названием K3C AC1900 Smart WLAN Router.

В устройстве использованы связка Intel AnyWAN SoC GRX350 и Intel Home Wi-Fi Chipset WAV500 (кстати, такое же железо использовано в ASUS Blue Cave: тот же процессор Intel PXB4583EL и Wi-Fi чипы Intel PSB83514M/PSB83524M вместо PSB83513M/PSB83523M).

Существует несколько версий этого роутера:

  • B1, B1G, B2 — для Китая;
  • A1, C1, S1(VIE1) — для остальных стран (мне достался — C1 с прошивкой v. 34.1.7.30).


Чем меня заинтересовал этот роутер стандарта IEEE 802.11ac?

Тем что имеются: 4 гигабитных порта (1 WAN и 3 LAN), диапазон 5ГГц, поддержка MU-MIMO 3×3:3 и USB 3.0. Ну и не только.

1. Немного предыстории


Необязательная часть
Предыдущий мой роутер был TP-Link TL-WR941ND с железом версии 3.6 (4МБ Flash и 32МБ RAM). Стандартная прошивка периодически подвисала без причины независимо от версий (пару раз обновлял, последнее обновление для моего железа вышло в конце 2012 года).

Разочаровавшись в родных прошивках, прошил Gargoyle (емнип, версии 1.8; прошивка основана на OpenWRT, если кто не в курсе) и наконец-то роутер стал работать как должен.

У WR941 на момент покупки было неплохое железо для моих нужд (а это было порядка 10 лет назад), но сейчас мне уже стало не хватать его производительности. Порты все по 100 Мбит/с, максимальная скорость Wi-Fi — 300Мбит/с. Может для интернета это ещё нормально, но передавать файлы по локальной сети между устройствами несколько медленно. Ещё и встроенной Flash памяти не хватает даже на русификацию прошивки (даже подменой файлов через WinSCP, пытался как-то), не то что на установку более ёмких плагинов (конечно можно расширить память, установить прошивку для увеличенного объёма памяти, но у меня недостаточно прямые руки для перепайки микросхем памяти).

Но, наверное, даже всё перечисленное выше ещё не скоро вынудило бы меня сменить роутер. Вот только купил я себе в самом начале сентября этого года Xiaomi Redmi Note 5 взамен безвременно погибшего Redmi Note 4 (после 2 лет образцовой службы) и оказалось, что у RN5 и WR941 взаимная несовместимость — RN5 не хотел переподключаться после отключения от беспроводной сети, созданной с помощью WR941 (и это не единичная проблема, как я обнаружил немного позже читая тему на 4PDA).

В общем, назрела необходимость в смене роутера. Почему именно сабж? Меня заинтересовала его начинка (читал о нём как раз на SmallNetBuilder с год назад) и возможности (хотя вряд ли в ближайшем будущем будет использоваться даже их половина). Но даже не это оказалось решающим в выборе именно Phicomm K3C (я ещё присматривался к Xiaomi Mi WiFi Router 3G), а доступная цена (купил за $32 по курсу) при неплохой начинке и возможность сменить стоковую прошивку на полноценную OpenWRT. Роутер поставляется с обрезанной производителем модификацией OpenWRT (где-то читал, что в ней добавлен шпион, но подробностей не нашёл).

Модификацию OpenWRT для работы на Phicomm K3C (официально OpenWRT не поддерживает чипсет Intel WAV500) сделал китаец с ником Paldier (его GitHub и страница с файлами прошивки для данного роутера, тема роутера на форуме OpenWRT). Также он сделал порт прошивки Asus Merlin для K3C (т.к. для её установки требуется замена RAM с 256МБ на 512МБ, мы её рассматривать не будем).

В начало

2. Технические характеристики Phicomm K3C


Надеюсь нет необходимости их переводить на великий и могучий?
Взято с официального немецкого сайта (остальные варианты — китайский сайт с переводами на несколько языков и тормозами).
Также чуть подробнее о нём можно прочитать на WikiDevi (сайт по неизвестной мне причине 20 октября не обновил истёкший сертификат и страницу можно посмотреть в кэше гугла).
Если же интересует подробный обзор, тесты и фотографии потрохов сего девайса, то всё это можно найти на сайте SmallNetBuilder и форуме KoolShare (тут много фотографий и всё на китайском).

В начало

3. Прошивка OpenWRT


  1. Подключаем роутер к компьютеру/ноутбуку, через порт LAN (любой из трёх) и интернету через WAN (т.к. нужно будет скачать прошивку, чуть больше 30МБ).
  2. Узнаём адес роутера в локальной сети (он нам понадобится далее, обычно это 192.168.2.1).
  3. Запускаем предварительно скачанную утилиту RoutAckPro (600кБ веса и куча китайского текста внутри; не знаю куда лучше залить, но её можно скачать с форума 4PDA после регистрации на нём). Если адрес отличается от указанного выше, то вводим его в форму IP. Нажимаем в окне кнопку Telnet. Если всё сделано правильно то в окне появится текст 打开Telnet完成. Теперь утилиту можно закрыть, т.е. мы подготовили роутер к смене прошивки через Telnet.

    Окно RoutAckPro
    Окно RoutAckPro

  4. Через программу PuTTY (Smartty или другую подобную) соединяемся по Telnet с роутером (IP указываем тот же, что и для RoutAckPro, порт — 23).

    Окно PuTTY
    Окно PuTTY с настройками подключения.

  5. В консоль PuTTY вводим для перехода в директорию tmp:
    cd /tmp

  6. Определяемся какую нам необходимо скачать прошивку (версия железа напечатана на наклейке приклеенной ко дну роутера, в моём случае это »H/W С1», т.е. мне необходима прошивка для С1).
  7. Выбираем на сайте Paldier необходимую нам версию файла fullimage.img. Для меня это
    http://k3c.paldier.com/openwrt/C1/fullimage.img

    Поэтому пишем в консоли PuTTY следующее:
    wget http://k3c.paldier.com/openwrt/C1/fullimage.img

  8. Затем вводим команду
    /usr/sbin/upgrade /tmp/fullimage.img fullimage 0 1

    и дожидаемся сообщения о успешной прошивке.
  9. После этого вводим
    rm -rf /overlay/*
    	sync && sleep 10 && reboot

    и ждём пока роутер перезапустится (пара минут). После этого можно подключится к его веб-интерфейсу (адрес 192.168.2.1, пароль admin).
  10. После первой загрузки советуют сделать сброс (скрытой кнопкой на роутере, чуть правее от гнезда питания, или через веб-интерфейс).

    OpenWRT
    Теперь у роутера будет вот такой интерфейс


Инструкцию по перепрошивке составил пользователь форума 4PDA WayOutt, за что ему огромное спасибо.

Если вы не хотите сразу подключать K3C к интернету и у Вас имеется USB-флешка или USB-картридер с флеш-картой.
Пропускаем п.5, а в п.7 вместо того, чтобы скачивать файл прошивки на роутер командой wget, скачиваем его на ПК (вдруг ещё понадобится в дальнейшем) и копируем файл на флешку и подключаем её к USB-порту роутера.
В п.8 вводим вот такую команду:
/usr/sbin/upgrade /tmp/usb/.run/mountd/sda1/fullimage.img fullimage 0 1

Остальные пункты остаются без изменений.


В начало

4. Русифицируем интерфейс


Но прошивка от Paldier, к сожалению, не содержит русского перевода, но зато имеет список сайтов которые должны блокироваться в Китае (поэтому мы с дефолтными настроками не можем зайти на тот же гитхаб, но это решается убиранием одной галочки в настройках V2Ray).

Поэтому мы будем устанавливать русскую локализацию для LuCI.

Делается это довольно просто:

  1. Заходим System ==> Software ==> вкладка Actions.
  2. В поле Download and install package вводим
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-base-ru_git-19.297.26179-fbefeed-1_all.ipk
    и жмём кнопку Ok справа.
    Список ссылок к пакетам для русификации интерфейса и быстрый способ их установки
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-advanced-reboot-ru_git-19.297.26179-fbefeed-42_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-aria2-ru_1.0.1-2_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-base-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-ddns-ru_2.4.9-3_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-firewall-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-hd-idle-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-minidlna-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-mwan3-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-nlbwmon-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-samba-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-transmission-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-upnp-ru_git-19.297.26179-fbefeed-1_all.ipk
    http://downloads.openwrt.org/releases/18.06.0/packages/mips_24kc/luci/luci-i18n-wireguard-ru_git-19.297.26179-fbefeed-1_all.ipk

    *Если вы заметили, прошивка у нас OpenWRT 15.05, а пакеты от OpenWRT 18.06.0. Но это нормально, т.к. LuCI в прошивке использована из OpenWRT 18.06

    Ну или скачиваем эти пакеты, сохраняем их на флешку, а затем подключаем её в USB-порт роутера и устанавливаем их через PuTTY командой

    opkg install /tmp/usb/.run/mountd/sda1/luci-i18n-*.ipk

    *Установятся все ipk-пакеты, находящиеся по пути /tmp/usb/.run/mountd/sda1/ и имеющие имя начинающиеся с luci-i18n-. Это самый быстрый способ русификации (на установку уйдёт несколько секунд): через веб-интерфейс придётся каждый пакет устанавливать отдельно (к тому же не уверен, что получится обновится с локального носителя) и на установку уйдёт несколько минут, через интернет и PuTTY нужно прописывать путь к каждому пакету, что тоже не так быстро.

  3. Переходим в любой раздел или просто обновляем страницу и можно радоваться почти полностью русскоязычному интерфейсу (некоторые модули не имеют русской локализации).

    AdvancedTomatoMaterial
    Тема AdvancedTomatoMaterial

    Bootstrap
    Тема Bootstrap

  4. Также у нас появляется пункт Русский (Russian) в списке доступных языков.


В начало

5. Добавляем тёмные темы


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

http://apollo.open-resource.org/downloads/luci-theme-darkmatter_0.2-beta-2_all.ipk


В результате мы получаем в списке тем симпатичную тему Darkmatter.
Darkmatter

Также можно установить тёмную модификацию темы Bootstrap (мне она больше всего нравится, т.к. работает быстрее материальных). Взять её можно вот здесь (в прикреплённом к тому сообщению архиве *.ipk.zip дважды запакован пакет с темой).

Dark
Тема Dark от Sunny на основе Bootstrap

У меня же сейчас стоит её версия немного переделанная мной.

Dark mod

В начало

P.S. Конструктивные советы относительно оформления/содержания приветствуются.

© Habrahabr.ru