Posts

Developing Real-Time Systems on Application Processors

Image
Monday, February 13, 2017 Application processor usage continues to broaden. System-on-Chips, often powered by ARM ®  Cortex-A cores, are overtaking several spaces where small ARM ®  Cortex-M, and other microcontroller devices, have traditionally dominated. This trend is driven by several facts, such as: The strong requirements for connectivity, often related to IoT and not only from a hardware point of view, but also related to software, protocols and security The need for highly interactive interfaces such as multi-touch, high resolution screens and elaborate graphical user interfaces The decreasing price of SoCs, as consequence of its volume gain and new production capabilities

Patching Kernel in OpenEmbedded

Image
Thursday, January 19, 2017 Introduction Despite  OpenEmbedded / Yocto  being nice tools to generate your image, using the build system to compile and test tiny alterations applied to independent packages, although possible, can become confusing and slow. My suggestion to alter the kernel is to compile it separately, test all the changes made by the end of the project, and add the changes to OpenEmbedded/Yocto. To illustrate the process, we will add support to the inertial measurement unit  mma8653  accelerometer by  NXP  (formerly Freescale) to the kernel 4.4.14 used by the Toradex computer on module  Colibri VF61 . Procedure The first thing to do is to have OpenEmbedded and its prerequisites installed. You can follow  this article 's  prerequisites  and  installation  sections to do so. In order to find where and which kernel is being used for your target, you can first find the recipes for the kernels used b...

Android or Linux for embedded systems, some thoughts

Image
Tuesday, December 27, 2016 While now hard to remember, there was a time when the term “embedded Linux” was viewed with suspicion. The outcrop of small, low-power, Linux-based devices - and readily available open source software - has since transformed the industry; nowadays it’s not “why would you run Linux here” but rather - “why wouldn’t you”? With embedded systems boosting more performance and graphics capabilities than ever before, and with GUI-enabled touchscreen devices taking hold in a wide range of applications, from small control panels to huge infotainment screens, Android - once viewed as a purely consumer OS - is becoming an interesting alternative. In this post, Antmicro, Toradex’s long-time partner and provider of software & product development services for mutual customers, as well as the maintainer of Android images for Toradex modules, explains the differences and commonalities between those two operating systems. Over the years, we have developed numer...

Experimenting with OpenCL on Apalis iMX6Q

Image
Friday, December 2, 2016 Introduction Nowadays, technological devices are demanding increasingly higher processing power and speed than ever before. To cope with the advances in technology, companies create various ways to achieve better processing performance. One such way that Apple Inc. found was to create the Open Computing Language (OpenCL). On June 16, 2008, Apple submitted a proposal to the Khronos Group to work on OpenCL. After five months of work, OpenCL 1.0 was released to the public on December 8, 2008. OpenCL is a low level API for parallel programming of diverse processors found in personal computers, servers, mobile devices, as well as embedded devices. The programming language for OpenCL is a C-like language. It is made to work in heterogeneous platforms containing CPU's, GPU's, and processors from such popular manufacturers as NXP ® , NVIDIA ® , Intel ® , AMD, IBM, etc. The purpose of OpenCL is to improve the speed and responsiveness of a wide range ...