Pull to refresh

Многообразный мир embedded systems и место Embox в нем

Reading time15 min
Views21K
Проекту Embox уже исполнилось 9 лет, но многие не понимают, что это такое и с чем его едят зачем он нужен. Некоторые из тех, кто слышал о проекте и знают, что это операционная система, считают, что Embox — это “отечественная ОС”. Действительно, задумывался Embox как попытка сделать “свою” ОС с “блекджеком и шлюпками”, но главное — это “блэкджек и шлюпки”. То есть, во главу угла ставились некие характеристики или их сочетание, которых не хватало в других проектах.

Конечно, писать универсальную ОС даже с какими-то фишками никто не собирался. Слоган Embox — “Essential toolbox for embedded development” — подразумевает, что проект нацелен на embedded systems. Однако данное понятие очень широко, к нему относят: интернет вещей (IoT) и роботов, различные малинки (RaPi) и бортовые системы, ардуинки и АСУ-ТП, …. Список, как вы понимаете, можно продолжать очень долго, в нем есть места, где прекрасно живет Linux, а есть места, где Linux избыточен и используются различные маленькие RTOS. В данной статье я хотел бы поговорить об embedded-мире во всем его многообразии, ну и о месте Embox в нем.
Читать дальше →
Total votes 30: ↑29 and ↓1+28
Comments74

How I fix cups-printing in Buildroot

Reading time7 min
Views2.2K

image


Intro


Like I said earlier in previos articles, Buildroot is a great system for embedded Linux development. But sometimes strange things can happen.


Once upon a workday, I got the following task: add printing system in firmware (Kraftway terminal Linux next generation). Ok, so I had to add cups + cups filter and to build firmware. I set a postscript-printer and got an error "Filter failed". Trivial tasks turned into serious work.


In this article, I wrote my own way of solving this problem. It may be useful for other developers and IT-specialist and, also, for a deeper understanding of the Buildroot.


If you are a Buildroot beginner, I recommend reading my previous articles.


Update 1 may 2020


Revisioned versions of this patches applied to master.

Read more →
Total votes 2: ↑1 and ↓10
Comments0

Porting packages to buildroot using the Zabbix example

Reading time16 min
Views4.6K


The basics of porting


Originally, Buildroot offers a limited number of packages. It makes sense — there is everything you need, but any other packages can be added.


To add a package, create 2 description files, an optional checksum file, and add a link to the package in the general package list. There are hooks at different stages of the build. At the same time, Buildroot can recognize the needed type of packages:

Read more →
Total votes 2: ↑2 and ↓0+2
Comments0

buildroot — my own experience with multi-platform distro creation

Reading time5 min
Views5.5K

Introduction


In my previous article (Monitor linux) I wrote, what is this distro and how it works. Now i will write how to do it. It's may be interesting for everyone, who want to study buildroot.


Target goals


The result we get from article is the following:


  • Firmware (non-volatile image with restorable config)
  • Easy management via web-interface
  • Cross-platform (qemu x86_64, arm-based SBC like rasberry 4, beagle bone black and asus tinker board)
  • Support without extra effort
Read more →
Total votes 8: ↑6 and ↓2+4
Comments2

Пет-проекты, которые зашли слишком далеко

Reading time10 min
Views27K

Обычно пет-проект — это что-то такое для души, на несколько вечеров в свободное от работы время. Зачастую никому, кроме его создателя, не нужное. Но бывают случаи, когда всё заходит куда дальше, неожиданно для самого разработчика. Подобные пет-проекты могут стать коммерчески успешными, а могут культовыми, но не приносящими денег. А еще они могут кардинально изменить жизнь своего автора.

Elasticsearch вырос из простого приложения для рецептов, которое сделал для своей жены Шей Бэнон. Сейчас это флагманский продукт всемирно известной компании. Когда в 1991-м году Линус Торвальдс известил мир о появлении Linux, то написал: «just a hobby, won't be big and professional». Что в итоге получилось, мы все знаем.

Есть проекты-шутки, которые внезапно стали популярными в сообществе. Например, язык Rockstar («чтобы код выглядел как рок-тексты») был придуман Диланом Битти в баре без каких-либо серьёзных ожиданий, но люди подхватили идею, принялись делать пулл-реквесты, и теперь это отличный пример эзотерического языка программирования.

В этой подборке расскажем о самых разных пет-проектах — странных и полезных — и об их создателях. 

Поехали!
Total votes 37: ↑37 and ↓0+37
Comments13

Qt Lighthouse + Android = android-lighthouse

Reading time2 min
Views7K

Lighthouse


Начато портирование Qt Lighthouse на Android. Порт пока что далеко не полный, но QtCore, QtNetwork, QtXml, QtSvg, QtSql уже работают достаточно хорошо. Дальше у автора по планам улучшение QtGui и QtMultimedia.

Вот видео с эмулятора, на которых показаны некоторые примеры из поставки Qt: Wiggly, Animated Tiles, Elastic Nodes, Tooltips.
Читать дальше →
Total votes 43: ↑37 and ↓6+31
Comments25

DIY-одноплатник или OrangePi на минималках

Reading time14 min
Views18K

Некоторое время назад Arduino казалось какой-то непонятной магией когда только узнал про нее. Потом быстро перешел к самим микроконтроллерам. Позже, работая программистом микроконтроллеров, захотелось чего-то большего и я уже смотрел в сторону линукса и одноплатных компьютеров. В руки попал Raspberry Pi, но это готовый продукт с определенной периферией (не хочу HDMI, хочу RGB LCD) и некоторое время спустя я уже думал как сделать что-то подобное самому.

Читать далее
Total votes 82: ↑82 and ↓0+82
Comments19

Как мы сделали Embedded Controller для ПЛК на Linux

Level of difficultyMedium
Reading time15 min
Views9.3K

Мы уже рассказывали о том, как приручили робота-пайщика, как делаем устройства и тестируем их. Теперь хотим поделиться опытом разработки полноценного Embedded Controller для ПЛК на Linux — какие задачи решает, как устроен и что у него под капотом в прошивке.

Читать далее
Total votes 45: ↑44.5 and ↓0.5+44
Comments36

Переселение души: linux на android планшете

Reading time4 min
Views108K
Доброго времени суток всем.

Моя история начинается с прочтения данной статьи, после которой я и решился приобрести чудо китайского планшетостроения: superpad. Данный планшет брался как игрушка для «поковырять немного», по совместительству, читалка, игралка на пары и смотрелка в долгую дорогу… Сразу отмечу, что у меня два usb винчестера на 500 гб и 1тб, на которых и хранится все самое важное для веселой жизни, и разбиты они в ntfs и ext4. И, естественно, планшет их не видит.

Вот мой доброволец


Вот и первая причина поковыряться. После просмотра 200 страниц форума на xda-developers.com очертились определенные
плюсы и минусы
минусы плюсы
нужны соответствующие модули ядра linux обновление прошивки до 2.2, заботливо собранную народными умельцами из стекла и картона + прошивки superpad 2
ушлые китайцы исходных кодов ядра под данный девайс не дают и всячески препятствуют их получению…


На данном этапе все попытки вскрытия данного планшета отложились в долгий ящик. До славного времени для студента – сессии. А так как на сессии студенты делают абсолютно все, лишь бы не по предмету, то веселые ночные посиделки в интернете на заведомо буржуйских сайтах возобновились. И пришла гениальная идея поставить на данный планшет православный linux, в моем случае – ubuntu.
Что из этого вышло, смотрим ниже.
Читать дальше →
Total votes 51: ↑45 and ↓6+39
Comments11

eSSL — SSL сертификаты для встраиваемых систем

Reading time11 min
Views12K
В наше время сетевые технологии развиваются столь стремительно что еще недавно казавшийся бредовым лозунг "интернет в каждом холодильнике" уже не кажется фантастикой. Но вместе с тем начинают становиться актуальными вопросы безопасности встраиваемых устройств имеющих WEB интерфейс с выходом в локальную и, не дай бог, в глобальную сеть. SSL технология призвана помочь этому позволяя работать с WEB интерфейсом по протоколу HTTPS, но встраиваемые системы имеют здесь свои особенности.
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments2

Как я собирал свой мод dd-wrt для ASUS RT-N13U

Reading time2 min
Views24K
Начну с предыстории. Попался мне в руки за недорого сей чудо девайс ASUS RT-N13U и сразу появилось желание использовать его по полной, но к сожалению родная прошивка оставляла желать лучшего и я побрел искать альтернативы на просторах интернета и набрел на dd-wrt.
Читать дальше →
Total votes 17: ↑12 and ↓5+7
Comments10

Контроллер «Virt2real», или просто — Виртурилка

Reading time15 min
Views192K
— Ты пил пиво, — тихо заговорил Джо. — Плохо работал консервный нож.
Ты сказал, что сам смастеришь консервный нож, побольше и получше. Это я и есть.
Генри Каттнер, «Робот-зазнайка»


UPD> Начат сбор предзаказов habrahabr.ru/post/163865

Кто-бы мог подумать, что мы своими руками сможем разработать такую красавицу и умницу. Мало того — не просто разработать на бумаге, а ещё и получить десяток работающих образцов.

Картинка Для Привлечения Внимания


Пролог


Давным-давно мы с коллегой начали заниматься управлением через Интернет всякими штуковинами типа вебкамер и маленьких машинок. Чуть позже у нас появились ездящие девайсы посерьёзнее, способные нести на борту свой контроллер и ёмкую батарею. К тому же я увлёкся всякими летающими штуковинами — самолётами и коптерами, что внесло дополнительную лепту в список хотелок.

Не покидала мысль о том что хорошо бы сделать видео не «вид сбоку или сверху», а вид с борта девайса, от первого лица. То что самолётчики/коптеристы называют FPV. Было это примерно пару лет назад. Пробовали ставить на машинку аналоговую камеру и передатчик, принимали видео на ТВ-тюнер, далее отдавали на видеосервер для раздачи рулящим машинками. Но сразу всплыли нюансы — одновременно можно транслировать только 3-4 видеопотока, иначе появляются наводки с одного канала на другой. Плюс дороговизна такого решения, плюс проблемы с разрешёнными частотами, плюс паршивое качество картинки с постоянно появляющимися помехами… В общем, попробовали и забили на это дело. К тому же, возможностей управляющего контроллера (тогда всё было сделано на базе всем известной Ардуинки) начало нехватать. Стали искать другие варианты, чтоб было недорого, дёшево, удобно и практично. Но имеющиеся в продаже (за границей, само собой и с довольно высокой стомостью) на тот момент железки для нужд не подходили. Одни умели всё кроме видео, другие умели только видео, но не позволяли подключать периферию, и т.д. и т.п.

Читать дальше →
Total votes 234: ↑231 and ↓3+228
Comments210

НТЦ Метротек. Часть 2. Беркут-ММТ и забег по граблям

Reading time3 min
Views6.8K

В прошлый раз я остановил рассказ на том, что мы рискнули сделать собственный модульный прибор, чтобы не привязывать разработки к сторонним решениям, таким, как наладонники iPAQ, давно ушедшим с рынка и вытесненным в конце концов смартфонами.


Итак, 2005-2006 годы.

Читать дальше →
Total votes 28: ↑28 and ↓0+28
Comments2

Автосборка Fsbl, U-Boot, linux kernel и установка debian для arm64 для Zynq Ultrascale zcu106

Level of difficultyMedium
Reading time15 min
Views3.8K

В данной статье описывается способ создания минималистичного образа sd карты c debian arm64 на примере отладочной платы с zynq ultrascale zcu106. Данный способ можно использовать для создания загрузочных образов других устройств с соответствующими изменениями. Битстрим, ядро Linux и dts для удобства разработки размещаются отдельными файлами.

Также описан способ загрузки по сети ядра Linux, dts и корневой файловой системы debian, который позволит сократить время разработки и ресурс карты памяти.

Читать далее
Total votes 16: ↑16 and ↓0+16
Comments9

Wiren Board — встраиваемый компьютер с Wi-Fi, GPRS, GPS, NFC и Ethernet из коробки

Reading time9 min
Views89K


update: Мы ещё живы и наконец-то открыли продажи!готовим первую партию к продаже конце сентября.
Новая версия стала куда лучше и выглядит теперь вот так:


Подробности в нашем блоге.
/update

TL;DR (Abstract)


Мы сделали маленький «одноплатный» встраиваемый компьютер с хорошим набором периферии, в основном беспроводной (GSM/GPRS, NFC, Wi-Fi, GPS, Ethernet, etc). Рабочее название — Wiren Board (от Wireless Enabled)

Предполагается, что использоваться он будет для всяческой автоматизации — то есть в качестве «мозга» для оборудования. Если вы хотите сделать умное устройство, не разрабатывая целиком собственное сложное железо, то это для вас. Впрочем, для DIY наш компьютер тоже весьма полезен, и об этом направлении мы не забыли при разработке. Если понадобится дополнить чем-то специфическим — функциональность можно расширять готовыми модулями. Что ещё приятно, стоимость компьютера мы планируем сделать всего около $100.

Первая версия уже готова, открыт предзаказ.

Что привело нас к разработке встраиваемого компьютера, через какие этапы мы прошли, и что в итоге получилось — читайте дальше.
Читать дальше
Total votes 117: ↑111 and ↓6+105
Comments75

Система контроля доступа на Wiren Board

Reading time4 min
Views26K


Всем привет!

Мы уже писали о том, что делаем Wiren Board — компактный индустриальный компьютер с Wi-Fi, GPRS, GPS, NFC и Ethernet под управлением Linux. На его основе можно быстро делать готовые устройства, задействовав нужные модули.
Чтобы показать его возможности, мы решили сделать законченное устройство. Сегодняшняя статья — про систему контроля доступа на Wiren Board.

Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments44

Как мы делали Wiren Board

Reading time7 min
Views58K
Последние 9 месяцев мы разрабатывали Wiren Board — компактный индустриальный компьютер с множеством встроенных интерфейсов (Wi-Fi, GPRS, GPS, NFC, Ethernet и т.д.) Мы уже писали о нём, и получили кучу отзывов и пожеланий. В итоге в новую версию было внесено много изменений, и эта статья про самые значительные из них.

По сравнению с апрельским прототипом на плате появились 2 USB-host, интерфейс RS-485 и разъём с 8 GPIO. Кроме этого мы сделали новую схему питания, поддерживающую входные напряжения от 5 до 22 вольт, Passive PoE и подключение Li-Pol аккумулятора, добавили управление низковольтной нагрузкой и аналоговые входы на клеммниках.



Как мы это делали, с какими трудностями столкнулись и что получилось в итоге — читайте в нашей статье.
Читать дальше →
Total votes 96: ↑93 and ↓3+90
Comments79

Новогоднее тестирование Wiren Board

Reading time3 min
Views24K


Когда мы выпустили Wiren Board — компактный индустриальный компьютер c Wi-Fi, GPRS, GPS и NFC — многие спрашивали у нас, проверяли ли мы его при экстремальных температурах. Обычно мы отвечали, что все компоненты Wiren Board подобраны для индустриального диапазона, а тестировать нужно уже законченные устройства в корпусе.
Но на Новый год случаются самые настоящие чудеса — и сегодня мы публикуем отчёт об испытании Wiren Board льдом и пламенем. А поможет нам в этом самая настоящая Снегурочка!
Читать дальше →
Total votes 43: ↑29 and ↓14+15
Comments21

Buildroot — часть 1. Общие сведения, сборка минимальной системы, настройка через меню

Reading time7 min
Views65K

Введение


В данной серии статей я хочу рассмотреть систему сборки дистрибутива buildroot и поделиться опытом её кастомизации. Здесь будет практический опыт создания небольшой ОС с графическим интерфейсом и минимальным функционалом.


Прежде всего, не следует путать систему сборки и дистрибутив. Buildroot может собрать систему из набора пакетов, которые ему предложили. Buildroot построен на make-файлах и поэтому имеет огромные возможности по кастомизации. Заменить пакет на другую версию, добавить свой пакет, поменять правила сборки пакета, кастомизировать файловую систему после установки всех пакетов? Всё это умеет buildroot.


В России buildroot используется, но на мой взгляд мало русскоязычной информации для новичков.


Цель работы — собрать дистрибутив с live-загрузкой, интерфейсом icewm и браузером. Целевая платформа — virtualbox.


Зачем собирать свой дистрибутив? Зачастую нужен ограниченный функционал при ограниченных ресурсах. Ещё чаще в автоматизации нужно создавать прошивки. Приспосабливать дистрибутив общего назначения, вычищая лишние пакеты и превращать его в прошивку путь более трудоёмкий, чем собрать новый дистриб. Использование Gentoo тоже имеет свои ограничения.


Buildroot система очень мощная, но она ничего не сделает за вас. Она может лишь дать возможности и автоматизировать процесс сборки.


Альтернативные системы сборки (yocto, open build system и прочие) не рассматриваются и не сравниваются.

Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments14

Buildroot — часть 2. Создание конфигурации своей платы; применение external tree, rootfs-overlay, post-build скриптов

Reading time5 min
Views18K

В данном разделе я рассматриваю часть возможностей по кастомизации, которые потребовались мне. Это не полный список того, что предлагает buildroot, но они вполне рабочие и не требуют вмешательства в файлы самого buildroot.

Читать дальше →
Total votes 15: ↑15 and ↓0+15
Comments24
1