- PVSM.RU - https://www.pvsm.ru -
Это первая моя статья на Хабр. Спасибо Хабру за предоставление этой возможности нашей компании.
Мы делаем конечное устройство — ультратонкий клиент — терминальный клиент для «всех» (RDP, WMware, S.P.I.C.E. и другие) терминальных систем. «Всех» в кавычках потому что это пока не реализовано, но пути есть.
Сейчас готов прототип — плата DS-109 (размером 100мм*100мм) — CPU 1 ГГц, RAM 1 ГБ, NAND 4Гб,…

Закончено производство платы DS-110, характеристики платы opensourceclient.org/faq/specifications-ds-110 [1]
Ниже я кратко расскажу о пути, который привел нас под предводительством меня к нынешнему состоянию дел.
Всё началось давным-давно. Моя средняя школа пришлась на середину 80-х, тогда я стал посещать радиокружок в нашем поселке, который находится на расстоянии ~1900 км от Москвы и ~2500 км от Санкт-Петербурга.
Огромное спасибо за организацию этого кружка военруку (в то время) поселкообразующего сельскохозяйственного техникума Михаилу Михайловичу — спасибо Папа! Спасибо бессменному руководителю кружка Юрию Ивановичу (кличка «ереваныч») за привитый интерес к электронике, работе руками и головой.
В конце 80-х я в первый раз увидел компьютер. О, это был класс Yamaha, модели уже не помню, но помню черно-зеленую картинку из игры карате. Большое спасибо преподавателю информатики за эти экскурсии, спасибо Мама!
В 1990-м году мною был собран первый Sinclair ZX Spectrum с этапом пайки и запуска с помощью осцилографа, потом ещё один с дисководом. Много играл, потом более интересно стало разбираться в программах. Выписывал ZX Review, зачитывал до дыр. Уехал учиться в Санкт-Петербург. Успел послужить в вооруженных силах РФ, работал сисадмином, начальником сисадминов. Но денег денег было мало, пошел продавать.
Продавали маленькие терминальные клиенты, это те, что запускают RDP клиент и подключаются к далекому или не очень терминальному серверу Windows и показывают рабочий стол. Производства они были китайского и очень дешевые. Построенные на SOC (системе-на-чипе) и WindowsCE 5/6 версии. Спрос на них был более менее стабильный.
Работать на дядю со временем надоело и стал возникать вопрос — что же делать дальше.
Радиокружок и сисадминство не прошло даром. На горизонте появились новости о Raspberry Pi. А ведь на нём можно сделать терминальный клиент, и он будет маленьким. Предзаказ Raspberry Pi. и ожидание, а также общение с пользователями китайских терминальных клиентов позволили уточнить требования к «идеальному» терминальному клиенту.
Но ряд требований не могли быть удовлетворены тонким клиентом на основе www.raspberrypi.org [2] (который модель B), а именно:
От себя добавил, что очень удобно было бы подключаться не только к RDP серверам но и к другим (от VMware, RedHat и т.п.).
В период предзаказа Raspberry Pi, проводя время в поисках решения удовлетворяющего всем требованиям, наткнулся на Cubieboard [3], тогда ещё единственной версии, теперь это версия Cubieboard1.
Прямое сравнение характеристик Cubieboard с Raspberry Pi (да, я понимаю, что это не очень корректно, хотя...) было в пользу Cubieboard, а именно — больше памяти, быстрее процессор, открытые спецификации AllwinnerTech SOC A10, видеоускоритель позволяющий воспроизводить видео до 1080p, большое количество pin со всевозможными портами (цитирую «96 extend pin interface, including I2C, SPI, RGB/LVDS, CSI/TS, FM-IN, ADC, CVBS, VGA, SPDIF-OUT, R-TP, and more»). Последнее для терминального клиента конечно лишнее, но это уже есть в базе, а значит можно использовать плату для встраивания в другие устройства, например в 3D принтеры или умный дом — есть мощный процессор, есть много портов для управления.
Есть NAND для хранения прошивки и SD slot для карты памяти.
Можно грузиться с NAND, можно с карты памяти.
Можно загрузить Android 4.0.4, можно Ubuntu 12.04 ARM версию с возможностью обновления с оф.сайта Ubuntu.
Есть начальная поддержка FreeBSD.
В конце концов можно запустить и WindowsCE 6.0 — но это не вписывается в концепцию открытого терминального клиента.
Концепция открытого терминального клиента в нашем понимании — это возможность использовать только открытое программное обеспечение в прошивке.
В Cubieboard всё также недостаточно портов USB, нет вывода на VGA D-Sub, нет корпуса подходящего для «коробочного» решения.
Проведя много времени в поисках и думах об возможном решении пришел к мысли, а почему бы не создать что-то типа Cubieboard самим? Радиокружок не прошел даром…
Однако с тех пор электроника шагнула далеко (очень далеко, можно сказать за горизонт) вперед. Посмотрев на проблему с разных сторон пришли к выводу, что если нырять в конструирование платы самим — это займет не просто очень много времени, это займет всё обозримое время и не факт, что приведет к положительному результату.
Стали искать профессионала, которым мог бы сделать что-то типа Cubieboard в обозримые сроки и средства. Поиск такого человека/организации — это тема отдельной истории. Если будет интерес — будет и история.
Много времени занял этот поиск. В результате была найдена организация, которая осуществила разработку и производство прототипа. Прототип был протестирован, требования к окончательному варианту слегка изменились, а именно заменили разъемы USB на немного другие для снижения общей высоты.
В результате у нас получилась плата по функциям аналогичная плате Cubieboard1 [4]с некоторыми отличиями:
Отдельным пунктом выделяю, что в полный рост возможно использование Linux/GNU в виде специального дистрибутива для SOC AllwinnerTech sunxi [5] — весь исходный код доступен.
Можно использовать Ubuntu 12.04 ARM версию, она будет обновляться с официальных серверов Ubuntu.
Работают образы созданные для Cubieboard. Программные доработки необходимы только в виде переключения вывода видео с HDMI на VGA/dsub. Можно использовать полноценный Android 4.0.4.
Таким образом можно использовать нашу плату с прошивкой собранной только из открытого программного обеспечения.
Можно использовать нашу плату как отдельный «компьютер-на-плате», в самодельных конструкциях, например «умный дом», контроллер печати для 3D принтера и т.п. — огромное количество разных портов позволяет это.
Открывать документацию на плату вряд ли будем — повторить 6-ти слойную плату в домашних и не очень условиях очень непросто, наверное даже невозможно. Дарить документацию конкурентам тоже не хочется. И разработка такой платы стоила немалых средств — сначала надо их вернуть.
О начале продаж плат DS-110 будет новость на нашем сайте, до конца этого года, вероятнее всего на следующей неделе.
Характеристики платы opensourceclient.org/faq/specifications-ds-110 [1]
Для этой платы у нас есть корпус и крепление на монитор, и блок питания тоже есть.
Позже мы планируем продавать «коробочные» устройства — достал, подключил провода, настроил для подключения к «любому» терминальному серверу и работай.
Ссылки:
Сайт, который посвящен открытому терминальному клиенту opensourceclient.org [6], там же расположен и форум. Хабраэффект наверно не выдержит, мы работаем над этим.
Дистрибутив Linux специально для работы на AllwinnerTech SOC A1X — http://linux-sunxi.org/Main_Page [7]
Сайт платы Cubieboard http://cubieboard.org/ [3]
Характеристики платы Cubieboard1 http://docs.cubieboard.org/products/start#hardware_specs [8]
Производитель AllwinnerTech SOC A10 http://en.wikipedia.org/wiki/Allwinner_Technology [9], оф.сайт http://www.allwinnertech.com/ [10]
Если не хотите пропустить начало продажи нашей платы — на сайте opensourceclient.org [6] можно подписать на рассылку новостей (слева внизу).
Автор: ErshoFF
Источник [11]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/linux/50972
Ссылки в тексте:
[1] opensourceclient.org/faq/specifications-ds-110: http://opensourceclient.org/faq/specifications-ds-110
[2] www.raspberrypi.org: http://www.raspberrypi.org/
[3] Cubieboard: http://cubieboard.org/
[4] Cubieboard1: http://docs.cubieboard.org/products/start#a10-cubieboard/
[5] sunxi: http://linux-sunxi.org/
[6] opensourceclient.org: http://opensourceclient.org/
[7] http://linux-sunxi.org/Main_Page: http://linux-sunxi.org/Main_Page
[8] http://docs.cubieboard.org/products/start#hardware_specs: http://docs.cubieboard.org/products/start#hardware_specs
[9] http://en.wikipedia.org/wiki/Allwinner_Technology: http://en.wikipedia.org/wiki/Allwinner_Technology
[10] http://www.allwinnertech.com/: http://www.allwinnertech.com/
[11] Источник: http://habrahabr.ru/post/206186/
Нажмите здесь для печати.