Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink

Similar documents
Track Two Building an Internet Radio with the TI Sitara AM3517 using LinuxLink

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink

Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink

Track One Building a connected home automation device with the Digi ConnectCore Wi-i.MX51 using LinuxLink

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink

Track Two Building an Internet Radio with the TI Sitara AM3517 using LinuxLink

using the Texas Instruments Zoom

Display Modules (DL-DM) Application Developer's Guide

Hands-on with the Sitara Linux SDK

ID 730L: Getting Started with Multimedia Programming on Linux on SH7724

Zoom OMAP-L138 experimenter Kit Lab Manual

User s Manual for the Boundary Devices Nitrogen R board

Embedded Linux system development training 5-day session

RakunLS1, Qseven SBC module with LS1021A

Jade IdeaBoxx. Product Manual

Developing Environment for Intel Mainstone Board

Digi Embedded Yocto 1.6. First Steps Guide

Hands-On Workshop: Freescale Audio Solution Framework, Part 2

Timesys University. Complete software solutions for Vybrid

Quick Start Guide EX-9686U/A-L(A9) Copyright TOPSCCC Technology CO., LTD. All rights reserved

EMBEDDED LINUX ON ARM9 Weekend Workshop

i.mx Product Family and Freescale codec offering to meet Automotive and Industrial Requirements

TQ2440 Development Platform Manual

LTIB for i.mx28, a step-by-step guide

Kick Start your Embedded Development with Qt

400AP Application Note Uploading Firmware Images to 400AP NAND Flash Models

Embedded Linux Conference Europe Sascha Hauer

Oxalis Getting Started

iw-rainbow-g3 / G3V FAQs:

The Yocto Project. Chris Young S/W Specialist SILICA Europe. Harmonising Software Development across multiple Embedded ARM SOC targets

Linux. For BCT RE2G2. User Guide. Document Reference: BCTRE2G2 Linux User Guide. Document Issue: Associated SDK release: 1.

Lab 1. OMAP5912 Starter Kit (OSK5912)

Quick Start Guide for i.mx28 EVK. i.mx28 EVK Multimedia and connectivity

Jade IdeaBoxx. The quickstart kit to jumpstart development. Fujitsu Semiconductor America Inc.

Quick Start Guide SBC21/NSD21/EC 21 SBC21 / EC21 / NSD21. Quick Start Guide. Copyright IC Nexus Corporation. All rights reserved

MYD-IMX28X Development Board

Introduction to creating 3D UI with BeagleBoard. ESC-341 Presented by Diego Dompe

ARM Powered SoCs OpenEmbedded: a framework for toolcha. generation and rootfs management

Getting Started with FreeRTOS BSP for i.mx 7Dual

Die Brummbeere Documentation

Pengwyn Documentation

i.mx5x Modular Design Platform: Product Prototyping Accelerator

Developing i.mx Multimedia Applications Processors with Windows Embedded CE 6.0 WinCE 6.0 on the i.mx25 and i.mx35 PDK s

Getting Started with TargetOS on the ZedBoard 1 Introduction

Qt for Device Creation

D1 - Embedded Linux. Building and installing an embedded and real-time Linux platform. Objectives. Course environment.

NI Linux Real-Time. Fanie Coetzer. Field Sales Engineer SA North. ni.com

Labs instructions for Enabling BeagleBone with TI SDK 5.x

Q7M EVK (Q7M120

Getting Started with Kinetis SDK (KSDK) v.1.2

Linux. For BCT TM1 / HB5. User Guide. Document Reference: BCTTM1HB5 Linux User Guide. Document Issue: 1.2. Associated SDK release: 1.

COMX-P4080. Release Notes L69C February 2011

Android System Development Training 4-day session

Yocto Project components

Timesys University. Learn Embedded Linux by Building a Video Surveillance Device

Content. 1. Overview Setup Demonstration Linux Application Project on DE10-Nano Android Application Project...

U-Boot and Linux Kernel Debug using CCSv5

PetaLinux SDK User Guide. Eclipse Plugin Guide

Android In Industrial Applications. A Field Report

Getting Started with Kinetis SDK (KSDK) v.1.3

How I survived to a SoC with a terrible Linux BSP

SAM9-L9261 User Manual. All boards produced by Olimex are ROHS compliant. Rev.C, September 2009 Copyright(c) 2009, OLIMEX Ltd, All rights reserved

Introduction p. 1 Why Linux? p. 2 Embedded Linux Today p. 3 Open Source and the GPL p. 3 Free Versus Freedom p. 4 Standards and Relevant Bodies p.

Petitboot - A kexec based bootloader. Geoff Levand - Linux Plumbers Conference 2012 August 29-31, San Diego, CA

Notes on uclinux for Spartan 3E 1500 Development Kit. using EDK 9.1 and PetaLinux

Application Note: Demo programs for PremierWave EN and PremierWave XN

SBC-S32V234 QUICK START GUIDE (QSG)

For Additional Information - End of Life Products

SBC-S32V234 QUICK START GUIDE (QSG)

RZ/G Verified Linux Package V2.1.0-RT

AT91SAM9G45-EVK Linux. User Manual

GET STARTED FAST WITH THIS COMPREHENSIVE ENABLEMENT OFFERING FOR LPC800 MCUS

i.mx 6UltraLite Evaluation Kit Quick Start Guide s datasheet has been downloaded from at this pag

Hands-on Workshop: Optimizing the MPC5121e Multicore Processor for Multimeida Applications

Android OS and Power Architecture

Release Notes Zebra VC80x Android N Update 003 based on NG-00-A (GMS)

Getting Started. With Windows CE and the Topaz i.mx25 Development Kit

Freescale Semiconductor Inc. Vybrid DS-5 Getting Started Guide Rev 1.0

Overview. 1/13/ Preliminary Product Brief

Tooling for Success: Embedded Linux File System Management

Software Development Using Full System Simulation with Freescale QorIQ Communications Processors

Release Notes for Linux Add-In 1.3.0

CodeWarrior U-Boot Debugging

Booting Linux Fast & Fancy. Embedded Linux Conference Europe Cambridge, Robert Schwebel

Session Overview. Background Integration Mender libostree (aktualizr) SWUpdate resin.io

Use U-Boot. U-Boot Main Commands. U-Boot script capability

Automation beyond Testing and Embedded System Validation

S2C K7 Prodigy Logic Module Series

HiSilicon STB Push-to-Talk Development Kit for Amazon AVS

Welcome to our joint Yealink/Alloy Webinar!

SABRE Board for Smart Devices

D1S - Embedded Linux with Ac6 System Workbench

Introduction to Intel Boot Loader Development Kit (Intel BLDK) Intel SSG/SSD/UEFI

i.mx31 3-Stack Platform Linux SDK Standard Release Package User s Guide

HC-3120 Linux-Ready Cortex-A8 Industrial 12 HMI Computing (Hardware) User Guide

Use of Mojo PowerPoint Template. Your name, Title

ARM+DSP - a winning combination on Qseven

Embedded Android? Not so fast!

Embest SOC8200 Single Board Computer

Quick Start Guide. SABRE Platform for Smart Devices Based on the i.mx 6 Series

Transcription:

Track Three Building a Rich UI Based Dual Display Video Player with the Freescale i.mx53 using LinuxLink Session 1 How to capture your initial Linux based product requirements and quickly build a custom BSP/SDK to jumpstart your development Audio streaming is available for this event. Turn on your speakers to listen.

2 Tools You Can Use Q&A and/or Chat Click on Q&A panel (?) or Chat panel icon in the bottom, right corner Type in your question in the space provided Click on Submit

3 Tools You Can Use Polling The poll will appear on your screen Select your answer for each question Click on Submit

4 Session Information You can download the slides for today s session at http:///embedded-linux/training/timesysuniversity/freescale_imx53 You can view a recording of today s session at http:///embedded-linux/training/timesysuniversity/freescale_imx53 Today s speakers: Maciej Halasz Director, Product Management Timesys

5 Building a Rich UI Based Dual Display Video Player Device Session 1 Today How to capture your initial Linux based product requirements and quickly build a custom BSP/SDK to jumpstart your development Session 2 July 26 @ 1pm EDT How to build a media player control panel using Qt Embedded for Linux Session 3 August 18 @ 1pm EDT How to leverage hardware accelerated video features to play back 720p/1080p video Session 4 September 7 @ 1pm EDT How to optimize, test and integrate the solution for fast boot and quick deployment

6 Today s Agenda Developing a product with the Freescale i.mx53 QSB Session Hardware/Software Requirements Embedded Linux Primer Where do I start my Linux design Product Requirements Assemble a custom BSP using LinuxLink Web Edition Reflect product requirements Produce complete Linux design Learn how to find information Application/System Development environment setup with an SDK Deploy the images on the Freescale i.mx53 board

7 Developing a product with the Freescale i.mx53 Quick Start board

8 Obstacles to Rapid Product Development What is my development target? What do I do for the BSP? How to get from a demo to a product? Can I use an IDE for development? How do I manage updates? Where do we start? Application engineer System engineer

9 Obstacles to Rapid Product Development What is my development target? What do I do for the BSP? How to get from a demo to a product? Can I use an IDE for development? How do I manage updates? Where do we start? Application engineer System engineer

10 What is my development target? Custom Product Available now Time Build on custom hardware Ideal, but wont be ready for months

11 Develop for the Reference Board Custom Product Available now Time i.mx53 QSB is inexpensive I can develop software for the i.mx53 instead of PC

12 What do I do for a BSP? Freescale Open Source Board Vendor Timesys How do I boot?

13 Configurable BSP and beyond LinuxLink Free Web Edition Intuitive wizard based UI no learning curve Builds on Web no desktop environment required Built against downloaded images for consistency Seamless integration with IDE

14 Session Hardware/Software Requirements

15 What We Need to Build Our Product A Host Machine Linux Windows is ok, but you ll need a VirtualBox with a Linux installation Cross-development environment Linux source code for the product Bootloader Linux kernel APIs Various Linux utilities IDE with WYSIWYG for faster assembly

16 Giveaway If you attend at least 3 out of 4 sessions in this Timesys University track, we will automatically enter you into a drawing for a chance to win a Freescale i.mx53 Quick Start Development Board

17 Embedded Linux Primer

System Application 18 Embedded Linux Reference Model Hardware Software Application (e.g. Base Station Control) Application 1 Application 2 Middleware and Application Services Networking Security UI Reliability LCD Networking Linux kernel Driver Driver Driver Driver more Board SOC Target Reliability HW accel. App Features Third-Party Application Hundreds of APIs from Open Source and Proprietary Bootloader Driver Driver Driver Driver more Virtualization SD USB more Host Development Tools Cross-Development Environment (SDK) IDE Application Debugging Build System (e.g. Factory) RFS, Kernel, App Collaborative Development Profiling Tracing System Management KGDB/ printk Debugging JTAG SMP support, RT enhancements Target Images Binaries Deployment Target Management

19 Embedded Linux Challenges Assembling a Linux platform can be very complex The code is free, but Achieving a consistent and repeatable build can be challenging Difficult to keep pace Over 40,000 independent sources on the Web Maintained by thousands of developers Difficult to pick the right combinations Hidden dependencies, abandoned projects Numerous revision conflicts Difficult to find tools that work Many open source tools are available Difficult to assemble the associated patches and libraries Limited-to-no support

20 Boot Process in Short Typical Linux System Structure Boot Process Sequence Power On User Application(s) Flash init Root Filesystem Packages Scripts Linux Kernel Device A Device C Bootloader Device A Device B Hardware U-boot Hardware Init U-boot Copies kernel to memory/uncompress Kernel Boot Hardware/Subsystems initialization RFS Fetch/Mount/Boot into User Application TIME

21 Product Requirements Where Do I Start My Linux Development?

22 What Are We Building? Dual Display Media Player Features: Control Panel Built with Qt Embedded Buttons to control video playback CPU utilization Video output Two framebuffers on a single LCD (blending) LCD/Component Hardware accelerated video - 1080p movie playback GStreamer Codecs Boot fast from microsd flash

23 Project Requirements (Freescale i.mx53 QSB) Graphics Touchscreen Applications Screen calibration Control Panel Ethernet Secure Connection Transfer (FTP/SCP) Console (Telnet/SSH) VGA/Component Video Out 720p/1080p USB Storage (USB stick) Extensions SD/MMC Card Filesystem Serial port communication MicroSD Boot from Additional storage Audio (optional) Alsa Mixer Sound playback

24 Dual Display Video Player (Blueprint) Media Playback Application User Interface, Buttons, etc CPU usage Audio Video Plaback Network access Middleware LCD calibration Qt Embedded setup scripts alsa-utils GStreamer Codecs openssh shell Framebuffer 1 alsa Framebuffer 2 networking Linux kernel Driver Driver Driver Driver Driver Driver Driver U-Boot bootloader Driver Driver i.mx53 QSB LCD Touch Screen Serial GPIO NAND SDIO Audio USB VPU Ethernet

25 Assemble a Custom BSP Using the LinuxLink Web Edition

26 Requirements Helper Feature What do I need Where to select Linux Kernel Latest, 2.6.35 kernel Linux kernel Cross Toolchain GCC, Binutils, GDB Toolchains C Library glibc Toolchains Touch Screen tslib Packages Qt qt-embedded-linux Packages Dual Display Demo timesys-theatre-1080p Packages GStreamer Media Codecs gstreamer gst-plugins (base, good) gst-fsl-plugin fsl-mm-codelib firmware-imx Packages Packages Sound alsa-utils Packages System Initialization busybox Packages

27 Application/System Development Environment Setup with an SDK

System Application 28 Embedded Linux Reference Model Hardware Software Application (e.g. Base Station Control) Application 1 Application 2 Middleware and Application Services Networking Security UI Reliability LCD Networking Linux kernel Driver Driver Driver Driver more Board SOC Virtualization Target Reliability HW accel. App Features Third-Party Application Hundreds of APIs from Open Source and Proprietary SD USB more Host Development Tools Cross-Development Environment (SDK) IDE Application Debugging Build System (e.g. Factory) RFS, Kernel, App Collaborative Development Profiling Tracing System Management KGDB/ printk Debugging JTAG SMP support, RT enhancements Target Images Binaries Deployment Target Management

System Application 29 Embedded Linux Reference Model Target Host Hardware Software Application (e.g. Base Station Control) Application 1 Application 2 Middleware and Application Services Networking Security UI Reliability LCD Networking Linux kernel Driver Driver Driver Driver more Board SOC Reliability HW accel. App Features Development Tools Cross-Development Third-Party Environment (SDK) IDEApplication Application Debugging Build System (e.g. Factory) RFS, Kernel, App Collaborative Hundreds Development of Profiling APIs from Open Source and TracingProprietary System Management KGDB/ printk Debugging JTAG SMP support, RT enhancements SD Target Images USB more Binaries Deployment Target Management Virtualization

30 Development Environment Setup Can find instructions on how to run Linux on your Freescale i.mx53 QSB system Runtime images Can be used to run Linux on the target Software Development Kit (SDK) Install on your host PC Desktop Factory tools Install on your host PC SDK will setup your complete Linux cross-development environment including: - Compiler - APIs header files and libraries

31 Deployment

32 Deployment We ll use U-Boot bootloader to load the Linux kernel NFS mounted filesystem Setup entries for the NFS daemon Edit /etc/exports Add the following entry home/timesys-university/i.mx53qsb/session1/rfs *(rw,no_root_squash) Restart the NFS daemon /etc/init.d/nfs-kernel-server restart Enable your tftp server U-Boot environment variables setenv bootfile uimage-mx53 setenv bootargs console=ttymxc0,115200 ip=10.0.0.10 root=/dev/nfs rw nfsroot=10.0.0.1:/home/timesys-university/i.mx53qsb/session1/rfs setenv bootcmd bootp\;bootm setenv loadaddr 70800000 saveenv

33 What We Have Accomplished Learned about developing with i.mx53 LinuxLink needed for all exercises Reflected product requirements in Linux BSP and SDK Built a custom BSP with LinuxLink Web Edition Experiment on day one with a pre-built starting point Setup a development environment System level development and optimizations Development of a value-add software (applications) Deployed the system on the target via NFS for future development Transferred images Configured bootloader

34 Next Session July 26 @ 1pm EDT How to build a media player control planel using Qt Embedded for Linux Install TimeStorm with Qt development tools Design a control panel application w/ GUI Development and testing using host environment Add needed code to control media playback Deploy on the target board verify touchscreen More fun to come

35 Homework 1. Outline your own requirements 2. Assemble a BSP that matches your needs 3. Setup your development environment 4. Run your custom Linux images on your hardware Let us know if you run into any challenges. We have setup a dedicated communication channel to share questions, comments and replies. Please subscribe at https://lists.timesys.com/listinfo/timesys-university While your questions will be answered by Timesys expert engineers, we encourage you to answer questions asked by others. Sharing experiences is always the best way to learn.

36 Glossary LinuxLink (Web Edition) Web-based version of LinuxLink LinuxLink (Desktop Edition) Local version with full customization and third-party tools integration Workorder Stores definition of your software filenames, versions Bootloader Runs first, initializes necessary hardware, loads Linux Linux kernel Operating system that manages hardware access and other features for higher level software Device Driver Code that s part of a Linux kernel, defines how software accesses specific hardware File System All files (libraries/utilities/scripts/etc.) combined on a single storage, e.g. NAND flash Middleware Complete frameworks including APIs, utilities that provide specific functionality, e.g. Qt API (library) Used by applications, provide functionality, abstract hardware access Toolchain (cross) The most important part of the development environment. Used to compile source code into binaries.

37 About Timesys Carnegie Mellon University spin-off in 1996 First real-time embedded Linux distribution First to register carrier grade Linux (CGL) First to market with an open source, commercialgrade embedded Linux development framework (LinuxLink) First to develop and deliver an award-winning, automated, intelligent, embedded Linux build system (LinuxLink 3.0) Real-time Linux Leadership First embedded Eclipse-based Tools Customized Linux Versions First to register carriergrade Linux distribution Integrate Real-time with OS Community First to market open source, commercialgrade Linux product First to deliver an automated, intelligent build system LinuxLink 1.0 LinuxLink 2.0 LinuxLink 3.0 2001 Manual Customized Builds 2002 2003 2004 2005 2007 2009 Automated Build/Test Hosted Build System Semis adapt Build system 100% Open Source Intelligent Build system

38 More Info You can download the slides for today s session at http:///embedded-linux/training/timesysuniversity/freescale_imx53 You can view a recording of today s session at http:///embedded-linux/training/timesysuniversity/freescale_imx53 Stay Online for Q&A!