- NLcon — представляем линейку панельных промышленных контроллеров на OC LINUX Angstrom LXDE
- Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Re: Кто-нибудь руками Angstrom собирал?
- Установка и сборка образа Angstrom Linux для платы TechNexion Thunder
- Набор разработчика от TechNexion Thunderpack
- Установка Linux 2.6.37
- Сборка образа Angstrom Linux 2.6.37
- Заключение
NLcon — представляем линейку панельных промышленных контроллеров на OC LINUX Angstrom LXDE
Панельные промышленные контроллеры из состава серий; NLCON-LXD И NLCON-CED с различными размерами экрана совиещают в себе сенсорную панель оператора и программируемый логический контроллер (ПЛК). Возможные сферы применения — от отдельных технологических линий, систем «Индустрии 4.0» и «Интернета вещей (IoT)» до сложных комплексных решений по автоматизации предприятия.
Промышленные ПЛК работают под управлением операционной системы Linux Angstrom LXDE.
Контроллеры серий NLcon-LXD, NLcon-LX, NLScon-LX являются свободно программируемыми. Логика их работы определяется потребителем в процессе программирования контроллера.
Основные характеристики контроллеров серии «NLcon-ххх» :
- ОС: Linux Angstrom LXDE
- Процессор: NVIDIA Tegra 2 (2 ядра Cortex A9, частота 1 ГГц)
- ОЗУ 256 Мбайт
- Системная флэш-память 512 Мбайт
- Флеш-карта памяти: до 128 Гбайт, SDXC
- Ethernet: >один порт Ethernet 10/100Base-T с гальванической развязкой
- Порт связи RS-485:два порта RS-485 с индивидуальной гальванической развязкой
- USB-порты: один порт USB для мыши, клавиатуры, флэш-диска, принтера
- Часы реального времени:энергонезависимые часы реального времени и 2 счетчика внешний событий (ТТЛ уровни)
- Горячая замена: есть возможность «горячей замены»
- Напряжение питания:от 10 до 30 В
- Гарантия:36 месяцев
Источник
Кто-нибудь руками Angstrom собирал?
Сделал поиск по слову Angstrom и нашел кучу замечательных постов о том как люди ставили агнстром из готовых пакетов на свои IPAQ и прочие КПК. Только мне такой вариант не подходит. Я хотел бы пообщаться с людьми которые руками собирали Angstrom Linux для своего девайса.
У меня устройство, как бы сказать не КПК, но в нем есть всё, что есть у обычного КПК. Это платформа разработчика на Atmel ARM9 с экраном, тачскрином и прочими радостями. Так вот, готовых образов под платформу нет рабочих. В смысле есть какие-то собранные под конкретную аппаратную конфигурацию для данного процессора и наверное у них всё работает, но не у меня, потому как у моей платформы есть отличия.
Собрал я руками base-image с помощью bitbake, несколько дней разбирался, пока получил результат. В итоге — стартовал с флеша он один раз и потом не стартует вовсе. По NFS не монтирует ФС совсем! Ну ладно с флешом какие-то заморочки, но NFS всегда железно работала! Бред какой-то. Короче, проблем хватает и разгребать можно долго. А есть люди, которые руками собирают весь софт. Тоже муторно, но работает. Например, руками собрал минимальную ФС на busybox — всё работает как часы. Хочешь с флеша, хочешь по NFS. Но в ангстроме то вроде бы всё доступно, набрал bitbake x11-image — и получил и графическую оболочку и набор программ необходимых.. Только это в теории. Да еще хорошо для какой-нибудь известной платформы, которую штампуют тысячами и народ покупает и тестирует этот Ангстром..
Есть соображения на тему? Т.е. вообще стоит разбираться с ангстромом и кучей багов, чтобы получить удобное средство сборки готовых образов или же пойти по пути CROSS_COMPILE=xx ./configure && make all??
Re: Кто-нибудь руками Angstrom собирал?
>Это платформа разработчика на Atmel ARM9 с экраном, тачскрином и прочими радостями. Так вот, готовых образов под платформу нет рабочих.
>В смысле есть какие-то собранные под конкретную аппаратную конфигурацию для данного процессора и наверное у них всё работает, но не у меня, потому как у моей платформы есть отличия.
Для нормальной работы нужно рабочее ядро (есть патчи на вышеуказанном сайте), загрузчкик (uboot) и тулчайн (можно воспользоваться готовым можно собрать самому). Если это все у тебя уже есть и работает работает то идем сюда
С его помощью можно и gentoo легко портировать, там есть его менеджер пакетов, но лично я предпочитаю crux. Правда там вместо glibc используется uclibc, но мне удавалось для x86 собрать даже kde3 c ними, правда я писал несколько своих патчей, как например для k3b пришлось писать свой вариант какой-то не posix ф-ции. Ангстром не пробовал и скорей всего не буду 🙂
Re: Кто-нибудь руками Angstrom собирал?
>Для нормальной работы нужно рабочее ядро (есть патчи на вышеуказанном сайте), загрузчкик (uboot) и тулчайн (можно воспользоваться готовым можно собрать самому).
Re: Кто-нибудь руками Angstrom собирал?
>тулчайн (можно воспользоваться готовым можно собрать самому)
Для buildroot нужен не тулчайн а просто рабочий gcc на хост-системе, там кросскомпиляция, тулчайн собирается самим buildroot.
Re: Кто-нибудь руками Angstrom собирал?
Ну я НЕ в начале творческого пути 🙂
buildroot: 2 недели сношений с ним дали результат — больше им пользоваться не буду. Тулчейн он собирает совсем детский — попробуйте его кому-нибудь отдать. Все пути жестко прописаны в бинарях. А потом людям объяснять, что надо для компиляции специальные ключи добавлять — нет уж. Затем это чудо создает rootfs, которую еще напильником надо подтачивать, например, пароль рута включает, а какой он — никто не знает 🙂
тулчейн: теперь только codesourcery arm-2007q3 — вообще никаких проблем с ними.
linux4sam: да, сначала пользовался убутом и ядром оттуда, но теперь собрал u-boot 1.3.4 и очень рад, ядро 2.6.25.6, патчи с maxim.org.za
Оговорюсь о своей платформе — у меня она на базе at91sam9263ek, но имеет ряд отличий. Например, стоит NOR Flash Spansion. Никто в Атмеле не догадался написать в ератах или еще где, что с этой флеши стартовать нельзя, а можно только с их родной NOR. 2 недели потерял, ладно — лирика.
Теперь взял образ Ангстром x11-demo с linux4sam, залил его в свою NOR flash: первый раз он загрузился — откалибровал тачскрин, всё работает просто сказка! Перегружаю — вот тут началось :). Куча ошибок с JFFS2, короче, так и не разобрался пока.
Вот и возник вопрос: стоит ли разбираться со всеми багами (ну или особенностями) Ангстрома и получить на выходе готовый пакет программ (продукт) или руками собирать иксы, все библиотеки, зависимости и прочее. Но зато на выходе будет 100% знакомый дистрибутив и без непонятных глюков. Это как Slackware и Ubuntu сравнивать — Angstrom это убунта, а слакварь это руками собрать весь софт.
А вы, koTuk, видимо, относитесь к числу «собираю руками», судя по патчам для k3b?
Re: Кто-нибудь руками Angstrom собирал?
>которую еще напильником надо подтачивать, например, пароль рута включает, а какой он — никто не знает 🙂
ну это разве проблема 🙂
>Теперь взял образ Ангстром x11-demo с linux4sam, залил его в свою NOR flash: первый раз он загрузился — откалибровал тачскрин, всё работает просто сказка!
У меня плата аналогичная at91sam9260ek — без встроенного контроллера lcd так что с графикой полный облом 🙂 На плате не выведен даже EBI чтобы туда можно было подключить — просто RAM запаяна и все. Загрузка с dataflash — у меня там образ initrd с ядром лежит ну и bootstrap и uboot конечно, потом монтируется mmc где лежит основной root раздел.
>Куча ошибок с JFFS2
возможно проблема с ядром
>относитесь к числу «собираю руками», судя по патчам для k3b?
кде — это все на х86 делалось и для х86, просто когда-то у меня были иллюзии что на uclibc должно работать быстрей, в общем баловство 🙂 Мне хватает buildroot — поэтому ничего другого я просто не пробовал, не могу советовать.
Re: Кто-нибудь руками Angstrom собирал?
>>Куча ошибок с JFFS2 >возможно проблема с ядром
Собранный руками busybox с тем же ядром отлично работает с флешом.
Спасибо за ответы, но у меня основной вопрос был не в том, где я уже ошибся, а в том как бы не ошибиться с выбором окружения для разработки.
Re: Кто-нибудь руками Angstrom собирал?
Работа с mtd и JFFS2 касается только ядра, busybox это чистый user space, так что даже если все так как вы пишите — завлуга там явно не busybox.
Re: Кто-нибудь руками Angstrom собирал?
> Вот и возник вопрос: стоит ли разбираться со всеми багами (ну или особенностями) Ангстрома и получить на выходе готовый пакет программ (продукт) или руками собирать иксы, все библиотеки, зависимости и прочее.
у меня для девайсов все кроскомпилится руками. оно правда собирается потом в deb (dpkg стоит на целевой платформе) и раздается пакетами, но для каждой либы/софтины пакет надо собрать отдельно (дописывается make deb).
два дня сношений — base-image ангстром из bitbake собираться отказывается. воюем дальше.
Re: Кто-нибудь руками Angstrom собирал?
я собирал для платы основанной на at91sam9263ek,
ядро и загрузчики (at91boostrap и uboot) собирал ручками,
и грузилась с nor флешки, пришлось конечно тайминги поменять
в at91boostrap и uboot, чуть-чуть их пропатчить и все заработало
>CROSS_COMPILE=xx ./configure && make all??
angstrom это и делает, плюс наложение патчей
проблемма с jffs2 скорее всего в том что не сделали erase флешки перед заливкой образа.
Re: Кто-нибудь руками Angstrom собирал?
> два дня сношений — base-image ангстром из bitbake собираться отказывается. воюем дальше.
Если нужна помощь — обращайтесь. Я на Ангстром потратил больше :), уже понимаю что к чему там..
Re: Кто-нибудь руками Angstrom собирал?
а что за NOR flash была? У меня Spansion и у него есть замечательный режим «sleep» в который флеш входит, если сигналы на входе не меняются в течении 30нс. А 9263 при старте с NOR стартует на скорости 32кГц с соответсвующей времянкой обращения к памяти.. Короче, 2 недели разбирались, пока все линии осциллографом не проверили и внимательно прочитали даташит на флеш.
> проблемма с jffs2 скорее всего в том что не сделали erase флешки перед заливкой образа.
мы не идиоты, чтобы не знать к с флешами обращатся. Проблема в стартовых скриптах Ангстрома. Мой образ на бизибоксе имеет стартовые скрипты: ifconfig.. и всё. Стартует с флешки замечательно, файлы создает, стирает, короче флеш рабочая 100%.
Re: Кто-нибудь руками Angstrom собирал?
> два дня сношений — base-image ангстром из bitbake собираться отказывается. воюем дальше.
Кстати, у меня сначала base-image тоже не собирался. Оказывется репозиторий angstrom-distribution.org не работал, даже не пинговался.. Я просто забил и на следующий проверил, что сайт ангсторма рабочий — набираю bitbake base-image -> вуаля, и есть образ :). Кстати, если машинка шустрая, то ОЧЕНЬ желательно делать параллельную компиляцию — время сборки сокращается в разы! Правда, какие-то пакеты могут не собраться, но я с таким еще не сталкивался :). x11-image собрался без проблем также
Re: Кто-нибудь руками Angstrom собирал?
> Кстати, у меня сначала base-image тоже не собирался.
Источник
Установка и сборка образа Angstrom Linux для платы TechNexion Thunder
Набор разработчика от TechNexion Thunderpack
Установка Linux 2.6.37
После беглого прочтения документации, сборки и включения Thunder я приступил к установке Linux. Скажу сразу, что через предлагаемый по умолчанию способ установки у меня установить не получилось. Происходил постоянный перезапуск процедуры установки. Поэтому я зашел на сайт TechNexion и скачал, любезно подготовленный и выложенный ими, образ содержащий Linux 2.6.37.
По инструкции указанной в документации (раздел 9.4.1 Create the SD-card with the rescue image in a Windows environment) я подготовил SD-карту для установки Linux 2.6.37 и выполнил установку.
После установки система благополучно загрузилась, но меня ожидало разочарование т.к. сеть не заработала. Начал искать информацию по сетевой карте.
В конце документации на плату приведены схемы на Thunder (раздел 16.2 Thunder baseboard schematics) на схеме видно, что сетевой картой является конвертор USB-Ethernet собранный на контроллере SMSC LAN9500-ABZJ фирмы Microchip. Поискав драйвер, в только что установленной системе, я его не обнаружил. Возможно, при сборке его забыли включить.
На сайте TechNexion, помимо готовых образов, выложены исходные коды для сборки образа вручную. Скачав «TAO-3530 Linux 2.6.37 / TI PSP 04.02.00.07 XUKR Source code» оказалось, что драйвер для нужной мне сетевой карты присутствует и включен для сборки. Осталось только пересобрать образ.
Сборка образа Angstrom Linux 2.6.37
Сборку образа я выполнял на Ubuntu 12.04, предварительно установив её на VirtualBox. В документации на Thunder разработчики советуют выполнять сборку, используя Toolchain Code Sourcery G++ 2010.09-50 (gcc 4.5.1). Хочу обратить ВНИМАНИЕ, что для сборки образа Angstrom Linux 2.6.37, предоставляемого разработчиками TechNexion, следует разворачивать именно Code Sourcery G++ 2010.09-50.
Первым делом скачиваем arm-2010.09-50-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 или с сайта Mentor Graphics и распаковываем в папку /opt/codesourcery.
Определяем переменные окружения. Для этого в файл /etc/environment дописываем:
Создаем папку files в корневом каталоге, и копируем в неё исходные коды для создания образа Angstrom Linux 2.6.37.
Теперь необходимо перезагрузить систему для того, чтобы работали, нами установленные, переменные окружения.
Осталось подправить конфигурацию ядра для включения необходимых драйверов. Так как я буду собирать образ для платы Thunder, то путь до нужного мне файла конфигурации следующий:
Файл конфигурации нужно открыть в любом удобном редакторе и включить интересующие опции. Я редактировал стандартным редактором файлового менеджера Midnight Commander.
Первое, что я посмотрел в файле конфигурации – это наличие включенного драйвера сетевой карты SMSC95xx.
Затем я включил компиляцию usb-serial драйверов.
И включил поддержку самых распространенных чипов usb-serial PL2303 и CP210x.
Закрываем редактор, предварительно сохранив изменения в файле. Теперь всё готово для сборки ядра.
Переходим в каталог xukr-20131014-omap3
И запускаем скрипт сборки с указанием названия платформы.
Данный скрипт выполнит построение загрузчика, ядра ОС, копирование всех необходимых файлов в заранее подготовленную файловую структуру и т.п.
Затем очистки исходных кодов от созданных объектных файлов.
И скрипт построения образа с указанием названия платформы.
После успешного завершения можете себя поздравить с созданием образа Angstrom Linux 2.6.37. Сам образ будет находиться в папке
/opt/files/xukr-20131014-omap3/build/thunder.
Осталось подготовить установочный SD-диск и установить. Данные действия описаны выше (см. Установка Linux 2.6.37).
После установки собранной системы у меня появилась сеть и поддержка usb-serial устройств.
Заключение
Разработчики TechNexion сделали очень удобный процесс сборки и создания образа загрузочного SD-диска не требующий глубоких познаний и опыта по сборке ядра Linux. Подготовленные ими скрипты делают всё в автоматическом режиме.
Единственно, как обычно, документация не успевает за разработчиками. Последний, на момент написания статьи, вариант документации (tao-3530-userguide-097.pdf) содержал описание сборки под старые исходники, который немного отличается.
Спасибо за внимание. В следующей статье я напишу про настройку Eclipse CDT для компиляции программ под arm, запуск приложения на Thunder и отладку программы в Eclipse.
Источник