Подзабросил я свой сайт — его никто не читает, да и мне лень тратить время чтобы что-то сюда писать. Тем не менее, жизнь не стоит на месте, и интересного происходил довольно-таки много.
Листал я авито от нечего делать, и увидел интересный лот — какая-то контора продает сотню абсолютно новых Depo Sky A60 тонких клиентов по 600 рублей. Я бы прошел мимо, но два гигабитных порта уж очень приглянулись за такой прайс.
Железо за такие деньги более чем достойное:
SoC: Marvell Kirkwood 88F6282 (1.6Ghz, armv5, 1 core)
RAM: 1Gb DDR2-533
Flash: 1Gb NAND (TSOP48)
LAN: 1Gbit x2
USB: 6xUSB2.0
DVI-I, Audio+mic, RS-232.
Также в наличии аудио и старое видео на PCI-E (SiS VOLARI Z11).
Второй PCI-E выведен на mini pci-e внутри корпуса.

Сначала были мысли типа «а сныкали/закрыли ли разработчики uart в который пишет uboot, или есть шансы что он все-таки будет на плате», но при копании с тонким я был приятно удивлен — uboot пишет прямо на внешний COM порт. Вот такой кабель потребуется для подключения к uboot консоли. Можно взять на озоне за три сотки. Параметры подключения классические — 115200n8.

Сразу же возникла идея ставить такую штуку с Openwrt до роутера для прозрачного rutube+adguardhome для всей локалки. Но обломчик — поиск кастомов для железки ничего не дал.
Поиск стоковых прошивок тоже был нелегким, но все-таки я наткнулся на эту тему на doozan форуме. В ней человек с таким же устройством выкладывает стоковые прошивки + жалуется, что не может запустить на этом клиенте образы debian с doozan форума. «Хм, под этот старый тонкий есть актуальное ядро?» подумал я. Начал шерстить doozan форум, и понял, что этот SoC уже в mainline linux, поэтому нет проблемы взять: ванильное ядро + кастомный конфиг (c dozan форума) + rootfs любого дистра для armv5 = и получить полноценную ОС для этого тонкого. Только вот нужен еще dts для моего девайса, которого у меня конечно же не было. В стоковой прошивке его тоже не было (ибо там старое ядро 2.6.39). Надеясь на быстрое решение проблемы (чтобы кто-то подкинул мне готовый dts 😄), я создал эту тему на все том же doozan форуме.
Довольно быстро мы подобрали нормальный dts от похожего устройства. Правда возникли некоторые сложности (не рабочее usb из-за конченного хаба, что по i2c регулирует мощность портов, не рабочее старое видео и аудио) — но меня это мало волновало. Современная нормальная ОС завелась на дешевом девайсе с двумя гигабитными сетевыми — а большего я и не ждал. Также владелец doozan форума (bodhi) добавил этот тонкий клиент в список поддерживаемых для своих сборок.
Поиграв немного с debian я решил впихнуть на девайс openwrt, ибо для описанной выше цели она будет поудобнее. Сначала я взял mainline ядро + rootfs от похожего девайса + положил модули ядра в rootfs. Все работало, но не нравились ошибки при установки kmod пакетов, ибо модули с репозиториев openwrt к кастомному ядру не подходили. Немного погуглив я выяснил, что marvel kirkwood в openwrt и так поддерживается, но образов для этого тонкого клиента конечно же никто не делал. Ну значит сделаю я🙂.
Нашел девайс максимально похожий на тонкий клиент с поддержкой openwrt — им оказался cisco on100. Далее «сборка» openwrt для тонкого делалась из образа для cisco on100, она заключалась в замене dtb для тонкого + перепаковка ubifs под флешку в тонком. Как итог — Openwrt работает, репы включая kmod пакеты тоже работают. Но проблемы тоже есть: добавились болячки из дерева устройств (не рабочие usb/pci-e/video/audio) + подлянку принесли разрабы openwrt — они собирают ядра для kirkwood без highmem, поэтому видно только 768МБ ОЗУ.
Девайс не имеет аппаратного ната (hardware nat offload) в нормальном понимании, но это компенсируется софтовым костылем в ядре в драйвере платформы (NFP), так что если ставить девайс до роутера для прозрачного rutube — скорости приличные (все 500MBit от провайдера отдает как минимум) +не забывайте врубать софтовое ускорение средствами ядра (software offload). Также без nat тестировал между двумя компами через тонкий клиент — получил цифры в районе 800+MBit.

Итог своей «работы» я бы и не выкладывал, но один человек попросил создать отдельную темы и выложить — вот я и выложил в этой теме на все том-же doozan форуме. После этого девайс с openwrt заметили ребята с 4pda (вот моё сообщение, а болтали они о тонком еще раньше), и понеслось — сборку скачали около сотни раз, и оригинальный лот довольно-таки быстро раскупили с avito, но до сих пор этот тонкий новым можно найти на все том же авито от других продавцов за < 1000 рублей.
Даже нашелся «особо одаренный» барыга, который перепродавал эти тонкие с моей сборкой openwrt на авито в три раза дороже (вроде бы он барижит до сих пор). Я такое не поддерживаю, ибо драть втридорога за то, что ты просто существуешь и смог прошить чужую сборку по инструкции — тупо, да и других ребят лишаешь дешевого товара (который бы они могли купить для себя). Не покупайте у него ничего.


Ниже привожу своё переведенное сообщение с публикацией сборки
(на случай закрытия doozan форума):

Что можно скачать:
1) Debian (rootfs сделал через debootstrap, systemd логи лежат в ОЗУ) с конфигами ядра от bodhi
Ссылка (образы и инструкции)
2) OpenWRT с официальным ядром (kmod пакеты работают)
(официальное ядро без highmem, так что будет доступно только 768МБ ОЗУ)
Ссылка (образы и инструкции)
3) Стоковые прошивки и исходники (а также руководство с паролями)
Ссылка, зеркало, зеркало

Проблемы всех сборок (так как работа над FTD (dtb/dts) не закончена):
-usb — работают только очень маломощные девайсы (и то не всегда)
-mini pci-e — не работает
-videocard, soundcard — не работает

Дополнительные ссылки:
Тема, в которой мы работает над деревом устройств (usb, pci-e,…)
Тема с ядрами и rootfs debian 12 от bodhi (если вас не чем-то не устраивает эта сборка)

Если хотите собрать openwrt сами, то вот шикарная инструкция как это сделать (но для кастомизации под тонкий клиент потребуются скилы FDT/UBI/др), или если вас устраивает все по дефолту, то просто расковыряем образ похожего девайса:

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

CAPTCHA ImageChange Image