Posts Tagged ‘elce 2012’

Beaglebone: The Perfect Telemetry Platform? – ELCE 2012

January 15th, 2013 No comments

Matt Ranostay, technical staff at Ranostay Industries, gives a presentation about a telemetry system based on Beaglebone at the Embedded Linux Conference Europe on November 5, 2012.


The author will discuss his ongoing and other team members efforts to develop hardware and software that reports sensor data to the community. This talk will be split into several parts a) types of useful sensors b) hardware design of Beaglebone capes c) and telemetry reports to Pachube/Cosm. Demonstrating that in the new world of cheap prototyping boards with I2C, GPIO, and SPI that anyone can setup a decent monitoring system for home security, automation, and weather reporting. There will be a live demo of prototype geiger counter + weather station.

The audience targeted is the professional hobbyist who likes to hack on microcontrollers in their spare time. It will take little to medium knowledge of electrical engineering to follow this talk.

Telemetry System (Weather Station + Geiger Counter) Block Diagram

Telemetry System (Weather Station + Geiger Counter) Block Diagram

You can download the slides for this presentation, and demo source (Python) is available on Github. There are also many other references at the end of the presentation slides.

Porting Android 4.0 to a Custom Industrial Board Based on TI OMAP 3 – ELCE 2012

January 15th, 2013 1 comment

Matthias Brugger, embedded engineer at ISEE, describes the steps the company had to follow (referred to as a “war story”) to port Android 4.0 to a custom industrial board at ELCE 2012, Barcelona, on November 5, 2012.


This talk will explain the lessons learned by giving a step-by-step introduction of porting Android to a custom board which was designed for an industrial environment. This includes an introduction to the Android build environment, first board bring-up and peripheral integration. The talk will cover bootloader integration, power management. It will focus on the peculiarities configuring Ethernet and Wi-Fi in Android. Also button and display integration, as well as integration of third-party accelerator support will be explained.

Android devices are getting popular not only in the mobile market but although in the industrial environment. Porting Android to a custom board can be challenging, especially as little information about Android internals are available. The talk is addressed to embedded developer and CTOs who regard the introduction of Android in the industrial field.

ISEE Ported Android 4.0 to this Custom Industrial Board

ISEE Ported Android 4.0 to this Custom Industrial Device

His talk features the key points below:

  • Android beyond smartphones? – Good for HMI centred embedded systems
  • Why a war story – Little documentation, small community, vendor specific communities, developing process of Android, and a huge jungle of programming languages. Although Android is based on Linux, Android is not Linux, and there are many differences.
  • Our custom board – Industrial board based on TI OMAP3 without battery monitor, nor phone function, but with buttons, Ethernet…
  • Android building system
  • Lessons learned
    • Add device – Devices are found under device/<manufactor>/<board> folder with 4 files: <device_name>.mk,, and
    • Bootloader/Kernel integration – Specific toolchain needed, and extra boot parameters required (androidboot.console=ttyO2, init=/init).
    • Power supply – The system hangs at boot time because there’s no battery monitor => Add a “test power driver” to shows battery 50% charged.
    • Button – Code in frameworks/base/services/input.  Key Layout File (/system/usr/keylayout) maps raw input key to internal Android key representation, and Key Char Map File (/system/usr/keychars) describes action for internal Android key
    • Touchscreen calibration
    • Wi-Fi – 5 different folders with userspace code… Legacy implementation reads wpa supplicant config file (/data/misc/wifi/wpa_supplicant.conf). A template is available in /system/etc/wifi/wpa_supplicant.conf. Drivers and firmware path defined in
    • Sound – Audio player is stagefright, AudioFlinger interfaces hardware abstraction.
    • HW acceleration – Add own multimedia framework and implement wrapper for audio (AudioTrack) and video (Surface).

You can also download the slides for this presentation.

Bluetooth Smart Devices and Low Energy support on Linux – ELCE 2012

January 15th, 2013 No comments

Andre Guedes and João Paulo Rechi Vita, software engineers at Instituto Nokia de Tecnologia (INdT), give a presentation about Bluetooth Low Energy support on Linux (BlueZ stack) at the Embedded Linux Conference Europe in Barcelona on November 5, 2012.


BlueTooth Low Energy  Architecture

Bluetooth Low Energy Architecture

This presentation will cover a brief introduction on how the Bluetooth Low Energy technology works. Then it will present the current status of its support on Linux, presenting the available APIs and how to interact with Bluetooth Smart devices. Then we’ll present the profiles we’re currently working on and what support can be expected to be found on Linux and BlueZ this year. There will be also a few demos of Bluetooth Smart devices working on Linux. The audience of this talk is application or framework developers that want to add support for Bluetooth Smart devices to their software, hardware vendors,and technology curious. Basic Bluetooth understanding is recommended but not required.

The agenda of the talk is as follows:

  • Intro to BLE technology – Specified in Bluetooth 4.0 for low power consumption (Coin-cell battery devices), fast connection establishment and short range. BLE is to be used in PCs, wellness and medical devices, mobile phones, as well as sensors and automation.
  • LE profiles supported by BlueZ
    • Generic Attribute Profile
    • Proximity Profile – When reporter distances from monitor an alert is emitted
    • Find Me Profile – Emit an alert on the remote device upon a command
    • Time Profile – Synchronizes the current local time
    • Health Thermometer Profile – Temperature measurements at periodic intervals
    • HID over GATT Profile – LE Human Interface Devices
  • Broadcaster & Observer – Undirected connectionless data transfer used for sensors and info advertisement.
  • Current support status
  • Work in progress – GATT API improvements, Broadcaster and Observer APIs and Profiles (Alert Notification, Phone alert status)
  • Demos – Proximity, Time and HID over GATT

You can also download the slides for this presentation.

Categories: Linux, Video Tags: bluetooth, bluez, elce 2012, indt, Linux, nokia

Wireless Networking with IEEE 802.15.4 and 6LoWPAN – ELCE 2012

January 15th, 2013 No comments

Alan Ott, founder of Signal 11 Software, gives a presentation dealing with wireless networking for the internet of things in Linux, especially with 802.15.4 and 6LoWPAN standards at the Embedded Linux Conference in Barcelona, Spain on November 5, 2012.


With the rise of the internet of things, low-power wireless devices will become increasingly prevalent. IEEE 802.15.4 is a wireless networking protocol designed for low-power and low-data-rate devices, such as those used in wireless sensor networks. While some higher layer protocols based on 802.15.4 are proprietary, an open standard called 6LoWPAN enables IPv6 traffic over 802.15.4. This presentation will give overviews of 802.15.4, its status in the Linux kernel, hardware support, comparison with other wireless protocols, and a demonstration of a simple 802.15.4/6loWPAN network.

This presentation is targeted toward developers who wish to create low-power, low-data-rate wireless networks for sensors or other applications. Attendees can expect to gain a basic understanding of 802.15.4 and 6loWPAN and also gain some ideas for use in their own systems. Technical expertise required is low.

Beaglebone based Alarm System with Adafruit Proto Cape, Microchip MRF24J40MA, Maxbotix HRLV-EZ0,  LM7805 (5V regulator)and Battery

Beaglebone based Alarm System with Adafruit Proto Cape, Microchip MRF24J40MA (802.15.4 radio transceiver module), Maxbotix HRLV-EZ0 ( ultrasonic rangefinder), LM7805 (5V regulator) and Battery. PS: I almost forget the Altoids can and the piece of cork…

Alan talk covers the following main items:

  • IEEE 802.15.4 Introduction:
    • Standard for low-power, low data rate wireless communication between small devices.
    • It’s not  Zigbee which sits on top of 802.15.4 (OSI Level 3 vs OSI Levels 1 & 2). Zigbee license conflicts with the GPL and can’t be implemented in the Linux kernel.
    • 802.15.4 can operate on 2.4 GHz, 915 MHz and 865 MHz bands depending on local regulations.
    • Uses – Industrial control and monitoring, wireless sensor networks, intelligent agriculture, security systems, smart grid
    • Technical details – Frame type, security, PANs, addressing, etc…
  • 6LoWPAN Overview – IPv6 over IEEE 802.15.4 can provide an IP address to all small devices.
  • Linux Support for IEEE 802.15.4 and 6LoWPAN with 2 kernel trees and independent projects:
    • Linux-Zigbee project – 802.15.4 and partial 6LoWPAN implementation. No updates of the kernel for 6 months. The project includes user space tools (iz, izcoordinator, and izchat) and support for multiple drivers for chips from Atmel, TI, Analog Devices and Redwire.
    • Linux-wsn project – Project up-to-date in mainline kernel with support for raw 802.15.4 sockets and 6LoWPAN. It uses the same user space tools as Linux-Zigbee, and provides drivers for Atmel AT86RF230, Microchip MRF24J40 and Redwire Econotag. Many things currently work, but there’s still more things to do for both 802.15.4 and 6LoWPAN implementations.
  • Other Support for IEEE 802.15.4 and 6LoWPAN – Contiki OS and TinyOS,

The presentation also includes a security system demo (Alarm) with 2 nodes: A Beaglebone + Microchip MRF24J40MA + Maxbotix Ultrasonic Range Finder (HRLV-EZ0) and a laptop + Redwire Econotag.

You can also download the slides for this presentation. The documentation and source code for the demo is available at

OpenOCD: Hardware Debugging and More – ELCE 2012

January 15th, 2013 No comments

Peter Stuge, self-employed hardware, software and security consultant, talks about OpenOCD open source tool for JTAG debugging at ELCE 2012 in Barcelona.


The presentation walks through how to use the OpenOCD open source software to debug embedded systems on the hardware level via JTAG interface, allowing single stepping, setting breakpoints, inspecting register and memory contents and more, starting before the CPU even executes the first instruction. After an introduction to JTAG debugging we look at how to use OpenOCD both standalone for firmware flashing as well as together with the GDB GNU Debugger for convenient debugging of bootloaders or the Linux kernel. These tasks will be demonstrated, and the respective OpenOCD configuration details will be explained.The presentation targets intermediate-level developers who work on bootloaders, BSPs and kernel drivers, deeply embedded systems, and test and production engineers with an interest in using OpenOCD, which can allow unified tooling across all of development, testing and production.

The presentation slides are not available, but you may want to have a look at the presentation slides for “Using OpenOCD JTAG in Android Kernel Debugging” by Mike Anderson, the PTR group. The video in the previous link at very bad audio however.

F2FS – A New Flash File System for Mobile Devices – ELCE 2012

January 15th, 2013 No comments

Joo-Young Hwang, principal engineer at Samsung, presents F2FS (Flash-Friendly File System), a new file system designed for storage in mobile devices at the Embedded Linux Conference in Barcelona, Spain, on November 5, 2012.


Recent mobile devices adopt various flash storages as a primary storage. File system support for those flash storages is a must for flash device performance and lifespan. I will present a new file system, called F2FS, designed for mobile flash storages. F2FS is designed considering the characteristics of the underlying flash storage which has flash translation layer (FTL). F2FS outperforms EXT4, which is a popular file system for Android phones, in most of benchmarks. I will describe motivation, design, and implementation of the file system, then show performance comparison data with EXT4. Target audiences are those who are interested in file system support for flash storages such as eMMC and SSD. Kernel and file system expertise helps but is not mandatory to listen to this talk.

F2FS vs EXT4 - Bonnie++ Benchmark Result DUT: Pandaboard with Linux 3.3 and 64GB eMMC with 12GB partition

F2FS vs EXT4 – Bonnie++ Benchmark Results
DUT: Pandaboard with Linux 3.3 running in a 64GB eMMC with a 12GB partition

The talk is divided into 4 sections:

  • Introduction – NAND flash memories (SSD, eMMC, SD card) and current file systems and memory management used.
  • F2FS Design Overview
  • Performance Evaluation Results – Ext4 vs F2FS on eMMC in Pandaboard (Linux) and Galaxy Nexus (Android).
  • Summary

You can also download the slides for this presentation. You can find more information on F2FS lwn article. F2FS has been added to Linux 3.6 and greater.

Modular Graphics on Embedded ARM – ELCE 2012

January 15th, 2013 No comments

Philipp Zabel, kernel developer at Pengutronix, discusses about graphics and video support for Linux on embedded SoCs at Embedded Linux Conference Europe 2012.


Porting Linux to new ARM based application processors has recently become easier than ever: the kernel gained many new frameworks like common-clock, oftree and pinmux. However, things get complicated when it comes to high end embedded graphics units.Those graphics systems tend to be composed of a multitude of on-SoC functional blocks that can operate on shared graphics buffers and video signals, as well as off-SoC encoder/converter chips that can be mixed and matched with any SoC.The old framebuffer is certainly not enough for today’s hardware any more, while modern frameworks like KMS and DRM have their own hassles on non-PC style graphics systems.The talk outlines issues we found while working on graphics and video support for the MX53 and MX6 CPUs and gives suggestions for possible future improvements.This presentation is aimed at developers interested in the linux graphics stack.

You can also download the slides for this presentation. Pengutronix modular graphics driver (imx-drm) for Freescale i.MX5/6 SoC can be retrieved on their git repository.

Embedded Linux Boot Time Optimizations – ELCE 2012

January 15th, 2013 No comments

Alexandre Belloni, embedded Linux engineer and trainer at Adeneo Embedded, gives a presentation about different techniques to optimize boot time for Embedded Linux at ELCE 2012. He also explains how they’ve measured the boot time.


A common problem faced when embedding Linux is the long boot time before the system is functional. There are many ways to improve boot up time. For a particular project, we had to answer a CAN message from Linux userspace in less than 420 ms from going out of CPU reset. We will describe our methodology and the techniques we finally chose to implement in that particular use case. We will also detail how we measured the boot time efficiently. A live demo will show the results of our work.

More specifically, Alexandre discusses two projects at Adeneo where boot time was critical:

  • An automotive platform based on Freescale i.mx53 needs to reply to a CAN message in less than 500ms
  • An OpenGL application must boot as fast as possible on a platform powered by Freescale i.mx6 Quad. After optimization, the app starts within 590ms from reset, 720ms from power on, instead of the 15 to 53!? seconds in the initial rootfs. See video demo.

He describes the different techniques tried to optimize the bootloader, kernel and rootfs, and provides the techniques they finally used in the final solutions.

You can also download the slides for this presentation. Adeneo released the bootloader source code (they completely got rid of U-boot), and you can find most of the techniques used on the Boot Time page from