![](https://habrastorage.org/webt/gt/rw/f1/gtrwf1ghf2wuy5n7b6dwmj4zj6c.png)
Друзья! Случалось ли вам размышлять о том, как создаются смартфоны и планшеты? Какие инструменты задействованы в этом процессе и откуда происходят материнские платы различных форм-факторов и размеров, но с похожей компоновкой элементов? Недавно мне попался на глаза девкит, известный также как evaluation board, старого, но популярного в своё время чипсета Qualcomm Snapdragon 410, за 4 000 рублей. Эта небольшая статья подробно расскажет вам, чем отличается девкит от одноплатного компьютера, из каких компонентов он состоит и что он умеет. Наслаждайтесь чтением!
❯ Что такое девкит?
Если вы опытный инженер, то, вероятно, уже знаете, что такое evaluation board. Однако, нынешний материал написан в популярном научном стиле для всех, поэтому прошу не судить строго — я постарался описать всё максимально доступно для обычного читателя!
Итак, начнем с азов. В каждом смартфоне и планшете есть необходимый набор компонентов для функционирования системы:
Кажется сложным? Но после практического опыта в ремонте и моддинге смартфонов это становится гораздо проще 🙂
Всё же, создать сложную систему для смартфонов и планшетов “на коленке” довольно проблематично. Для разработчиков существуют специальные платы, известные как evaluation board или девкиты.
Dragonboard 800
На таких платах расположены все необходимые компоненты: процессор, память, радиопередатчик, аудиоразъёмы для звука и микрофона, зарядное устройство для аккумулятора, USB-порты и, конечно же, JTAG для отладки с гребенкой пинов процессора. Иногда на девкиты устанавливают уже готовые дисплеи и тачскрины, а процессор с оперативной памятью и флэш-памятью выносят в отдельные системы на модуле (SoM) для возможности быстрой замены неисправного процессора и упрощения дизайна платы. Таким образом, девкиты формально представляют собой две платы – основную с интерфейсами и гребенкой пинов процессора и девкит с процессором и необходимыми компонентами на борту.
Честно говоря, evaluation kit’ы мало чем отличаются от современных одноплатных компьютеров — главное различие в размерах (одноплатники гораздо компактнее и подходят для готовых устройств), доступных шинах и GPIO. Хотя тут тоже встречаются интересные устройства, такие как Olimex A20 SoM, который выводит почти все пины с процессора AllWinner A20. Можно сказать, что одноплатники берут своё начало от девкитов и являются их более доступными и поддерживаемыми сообществом аналогами.
Недавно мне удалось приобрести девкит Snapdragon 410 под названием Variscite Dart SD410. Правда, это не самый навороченный из доступных девкитов (в нём отсутствует GSM-модуль), но зато это полноценная плата с собственным дисплеем, тачскрином и различными ОС образами. Нашёл я его на известной онлайн-барахолке, продавец хотел сделать из него игровую консоль, но у него не получилось. Так что выставил за 5 000 рублей, немного поторговался и теперь он у меня. Я, как большой любитель редких и интересных одноплатников и девкитов, не могу не радоваться.
Давайте распакуем этот чудо-девайс и познакомимся с ним поближе!
❯ Распаковка
Девкит поставляется в довольно большой коробке с кратким руководством и блоком питания. У старых девкитов, таких как Idea6410 на базе Samsung S3C6410, в комплекте также шли DVD-диски с лицензионной Visual Studio 2005, Platform Builder c Windows CE и, конечно же, BSP.
Плата прикреплена к специальному «столу», чтобы все компоненты не болтались. Несмотря на довольно крупные размеры, девкит можно превратить в готовое устройство, размеры которого будут близки к 7-дюймовому планшету. Делаем свой Nintendo Switch на Snapdragon?! 🙂
На верхней стороне платы расположен коннектор для камеры, гребенка для JTAG, I2C/SPI и множество GPIO. Также сверху находится батарейка для поддержки RTC и три кнопки, характерные для Android (назад, домой и включение), а также перемычки для переключения режимов загрузки. SD410 поддерживает загрузку с MicroSD, eMMC и… USB! Это неожиданно для устройства на Snapdragon!
В центре располагается съёмная система на модуле с процессором и оперативной памятью. Чипсет APQ8016E с eMMC от Samsung, на плате SoM также можно найти радиотракт Wi-Fi/BT/GPS и с обратной стороны — контроллер питания. Фактически это минимально необходимый набор для работы планшета или смартфона, остальная плата — разведенная периферия!
На нижней стороне платы разведен сетевой контроллер для LAN, USB-порты и 3,5-миллиметровые аудиоразъемы для микрофона и динамиков. Также имеются точки для ручной пайки динамиков и некоторых других элементов.
С левой стороны платы находится дисплей с емкостным тачскрином. Меня сразу удивила надпись LVDS, так как в мобильных устройствах обычно используется MIPI DSI (похожий протокол). Однако, сняв и осмотрев дисплейный модуль, я обнаружил, что Variscite создали переходную плату с TTL RGB на LVDS с помощью внешнего скалера. Зачем это сделано – не знаю. С обратной же стороны платы выведены пины DSI для подключения дисплея от мобильных устройств.
С правой стороны платы расположен переключатель питания и несколько пользовательских светодиодов, которые можно запрограммировать. Кнопки тоже подключены к отдельным экспортированным GPIO и могут быть использованы для собственных целей.
Давайте запустим плату!
❯ Запуск
Для функционирования платы необходимо как минимум две вещи. Первая — исходный код ядра. К сожалению, не все чипсеты поддерживают Mainline-ядро Linux и используют свои ветви, которые ещё не объединены с основной веткой. Вторая вещь — BSP (Board Support Package) — пакет поддержки системы для конкретной платы. В случае с Linux, BSP содержит конфигурацию сборки ядра, device-tree или machine-файлы (если ядро не Mainline и без поддержки dtb) с описанием подключенных к плате устройств и драйвера для дополнительной периферии (например, контроллера дисплея).
Для того чтобы получить образы системы, нужно зарегистрироваться на сайте вендора и зайти на приватный FTP… но у меня такой возможности нет, так как я купил устройство с рук. Однако продавец прислал мне BSP с recovery-образами двух систем: Android и Yocto Linux.
Android уже был предустановлен на eMMC, всё довольно стандартно: обычная система версии 7.1, AOSP, с различным тестовым и презентационным софтом от Qualcomm. В принципе, это фактически готовый Android-планшет, только с внешней гребенкой и питанием от 5В:
Куда более интересным выглядит установка Linux. Образы поставляются в виде прошивки для fastboot, которые шьются буквально одной кнопкой. Для начала нужно ввести плату в режим fastboot: для этого включаем плату, удерживая кнопку «назад». Затем распаковываем архив с Yocto Linux и выбираем нужный образ — есть десктопный, консольный и с оконным менеджером Weston. Я выбрал последний: распаковываем gz-архив и редактируем скрипт прошивки, чтобы он брал образ rootfs с Westone:
После этого запускаем процесс прошивки и ждём около 30 секунд:
И вот у нас полноценный Linux, как на одноплатнике!
❯ Заключение
Ну что, друзья, в сегодняшнем материале мы с вами познакомились с такой интересной системой на модуле. Надеюсь, вам было любопытно! А с какими интересными девбордами и чипсетами работали вы?
Если у вас есть похожие девкиты или одноплатные компьютеры на интересных чипсетах, например, старых самсунгов (S5PC), OMAP’ов, i.MX и т.д., и они вам не особо нужны — я готов рассмотреть их покупку. Особенно интересен процессор Intel PXA (или его продолжатель Marvel PXA). В своё время киты с такими процессорами были несложно достать. Пишите в личку на Хабре 🙂
📚 Читайте также:
И кстати, храню все свои мобильные проекты в одном месте — в облаке Timeweb. Рекомендую всем, кто хочет надежное решение — взгляните: