Building Yocto linux for Intel Edison with 3G USB modems support

26 мая 2016 г. 20:55 Linux   Intel Edison  

Today we are going to build custom Yocto Linux image for embedded IoT computer called Intel Edison. My main aim why I need to build image was enabling mobile internet USB dongles support, but this guide can be also used if you want to do any other image tuning. To achieve USB modems support we need:

1. Include USB to Serial drivers for modem (to have /tty/USBx ports which will allow communicating with GSM/CDMA module inside of our USB Dongle)

2. Most of the dongles plugged in the system as USB storage Device. But to enable internet connection we need to switch dongle in USB Modem mode. This will lead to changing USB Vendor ID and appearing /tty/USBx ports (of course only if USB serial drivers will be installed). To implement switching, we need to include usb_modeswitch package in our Linux.

3. We need to enable PPP kernel drivers for creating PPP data connection to our mobile provider. 

4. We will also install pppd which will make a call to the mobile operator, create connection and create network interface (e.g. ppp0) which will connect our device to big world of the internet!

Собираем Yocto Linux для Intel Edison

6 марта 2016 г. 17:44 Linux   Intel Edison  

Yocto Project - это Open Source инфраструктура которая позволяет самостоятельно собрать дистрибутив Linux с нужными функциям для встраиваемых систем на архитектурах ARM, PowerPC, MIPS, x86 и x86-64. Название Yocto происходит от приставки дольних единиц измерения в СИ, эквивалентную 10-24. Для использования Yocto на встраиваемой системе необходимо включить в дистрибутив так называемый BSP (Board Support Package), который будет состоять из драйверов и пакетов обеспечивающих работу аппаратного обеспечения. В частности на основе Yocto создаются дистрибутивы для Intel Edison с названием Yocto* complete image, которые предлагается скачать на стринице загрузки https://software.intel.com/en-us/iot/hardware/edison/downloads. Самостаятельная сборка дистрибутива дает намного больше возможностей в разработке - вы можете включать дополнительные бинарные пакеты в систему, конфигурировать ядро Linux (в частности добавлять в ядро модули для поддержки новых устройств), добавлять патчи с исправлениями которые выходят еще до выпуска дистрибутива, имеете возможность создавать бинарные пакеты ipk для менеджера opkg, используемого в Yocto, запускать дистримутив в эмуляторе QEMU. В статье мы собрем дистрибутив и слегка модефицируем его для своих нужд.

Внимание: эта статья описывает сборку ранней версии Yocto, гайда по сборке новой версии тут