Is Android the New Embedded Embedded Linux? at Embedded World 2013Opersys inc.
Android is increasingly being used in embedded systems due to its feature set, large developer community, and permissive licensing. However, there are still challenges to using Android for embedded projects, including limited documentation, inability to fully customize the software stack, long build times, and dependency on continued support from Google. Future trends may see Google and other companies continuing to adapt Android for more embedded and headless use cases.
The document discusses the basic building blocks of a graphical user interface (GUI), including windows, menus, dialog boxes, and smartening up applications. Windows provide a rectangular display area with standard controls for closing, minimizing, and resizing. Menus typically operate by selecting an object first before choosing an action from a pop-up or implicit menu. Dialog boxes display messages and requests for user input and come in modal or modeless forms depending on whether they block other application interactions.
The document discusses an Android and SharePoint integration framework for conducting Americans with Disabilities Act (ADA) assessments across hundreds of buildings and thousands of rooms in a condensed timeframe. Tablets were used in the field to collect assessment data offline using an Android app, while SharePoint was used for back-office functions like hosting requirements, managing the process, and reporting. The solution brought together tablets for efficient offline data collection and SharePoint for centralized management and access to streamline the traditionally paper-based and time-consuming assessment process.
Carnegie Library Lab case study - Digital ToyboxCILIPScotland
The document describes the Carnegie Library Lab and Digital Toybox programs. The Carnegie Library Lab aims to promote innovation among early to mid-career individuals through a 3-year program providing online learning, innovative projects, networking opportunities, and support. The Digital Toybox program provides funding, mentor support, and online learning to establish lending "toyboxes" containing equipment like 3D printers and robotics kits for inspiring creative projects among young people in Edinburgh libraries and schools. The programs have faced challenges around logistics and implementation but provide opportunities for personal development and expanding knowledge sharing.
Is Android the New Embedded Embedded Linux? at Embedded World 2013Opersys inc.
Android is increasingly being used in embedded systems due to its feature set, large developer community, and permissive licensing. However, there are still challenges to using Android for embedded projects, including limited documentation, inability to fully customize the software stack, long build times, and dependency on continued support from Google. Future trends may see Google and other companies continuing to adapt Android for more embedded and headless use cases.
The document discusses the basic building blocks of a graphical user interface (GUI), including windows, menus, dialog boxes, and smartening up applications. Windows provide a rectangular display area with standard controls for closing, minimizing, and resizing. Menus typically operate by selecting an object first before choosing an action from a pop-up or implicit menu. Dialog boxes display messages and requests for user input and come in modal or modeless forms depending on whether they block other application interactions.
The document discusses an Android and SharePoint integration framework for conducting Americans with Disabilities Act (ADA) assessments across hundreds of buildings and thousands of rooms in a condensed timeframe. Tablets were used in the field to collect assessment data offline using an Android app, while SharePoint was used for back-office functions like hosting requirements, managing the process, and reporting. The solution brought together tablets for efficient offline data collection and SharePoint for centralized management and access to streamline the traditionally paper-based and time-consuming assessment process.
Carnegie Library Lab case study - Digital ToyboxCILIPScotland
The document describes the Carnegie Library Lab and Digital Toybox programs. The Carnegie Library Lab aims to promote innovation among early to mid-career individuals through a 3-year program providing online learning, innovative projects, networking opportunities, and support. The Digital Toybox program provides funding, mentor support, and online learning to establish lending "toyboxes" containing equipment like 3D printers and robotics kits for inspiring creative projects among young people in Edinburgh libraries and schools. The programs have faced challenges around logistics and implementation but provide opportunities for personal development and expanding knowledge sharing.
SMC takes a state machine stored in a .sm file and generates a State pattern in fourteen programming languages (C, C++, C#, [incr Tcl], Groovy, Java, Lua, Objective-C, Perl, PHP, Python, Ruby, Scala, VB.net). Includes: default transitions, transition args, transition guards, push/pop transitions and Entry/Exit actions.
See all details on http://smc.sourceforge.net/.
August 7th, I attended a meetup of GDG Beijing, and give a presentation:Android Gradle Build System-Overview.
Mainly cover build system background knowledge, source code, interesting part of code, writing a plugin.
Buildroot (www.buildroot.net) is a tool for building small embedded linux system.
For example : Kernel + Busybox + Perl + Dancer2 ~= 60 MB
Buildroot could create also Qemu Virtual Machine image with the same footprint.
Demo with a Olimex iMX233 board (45€).
The document discusses building Android Open Source Project (AOSP) software. It describes fetching source code using repo, configuring the build, and building and flashing images to an Android device. Key steps include initializing repo, syncing sources, setting environment variables, choosing a target from the lunch menu, and using make to build binaries, images and flash the device.
Learn how to develop, free and pro versions of your applications. How to perform debug only configurations and how to use Build Variants in your day to day Android Development.
This document provides an overview of multimedia capabilities and libraries for embedded Linux systems, including DirectFB and SDL. It describes key multimedia concepts and gives brief descriptions of the main features and capabilities of DirectFB and SDL, including video playback, audio, input handling, and acceleration. It also discusses using these libraries for multimedia development on embedded Linux targets.
Here are the steps to prepare your lab environment:
1. Download the lab materials archive from the provided link.
2. Extract the downloaded archive file and browse the contents to familiarize yourself with the lab directories and files.
3. Change to the lab directory and enforce read/write permissions on the files as needed by using the chmod command.
This will setup your local environment for the upcoming hands-on labs. Let me know if you have any other questions!
Ross Burton has been working on the Yocto Project for nearly a year and previously worked on its precursor, Poky. The Yocto Project helps companies build customized Linux distributions for embedded products like set-top boxes, digital signs, networking equipment, and more. It provides advantages over general purpose desktop distributions by being designed for long-term use, having reproducible builds, and allowing full customization while maintaining standards and support.
This document discusses real-time operating systems (RTOS) and embedded systems. It provides an overview of RTOS concepts like tasks, memory management, timers, I/O, and inter-process communication. It also describes the author's work developing several RTOS projects over the years including Orz Microkernel and Jamei RTOS. Real-world applications of RTOS in areas like industrial automation and wireless sensor networks are briefly mentioned.
Controlling Memory Footprint at All Layers: Linux Kernel, Applications, Libra...peknap
Reducing memory usage is well covered in the history of this conference, yet new tricks still do exist. When optimizing memory footprint for an home gateway device, the author found some unexpected places where small changes can save valuable amount of DRAM or Flash space. This talk will visit different areas including - Kernel: fragmentation threshold, page frame reclamation task and atomic memory. Application level: Memory inefficient shared libraries due to ABI compliance and dynamic loading. Toolchain: Tuning malloc allocator parameters and compiler options. System level: General kernel might be more memory efficient than MMU-less uClinux, and preventing lock up when the system is on the brink of running out of memory.
Getting started with setting up embedded platform requires audience to understand some of the key aspects of Linux. Starting with basics of Linux this presentation talks about basic commands, vi editor, shell scripting and advanced commands
The document discusses board bringup and the startup process. It explains that on power on, the processor executes initial startup code which loads a stage 1 bootloader. The stage 1 bootloader then loads a stage 2 bootloader which loads the operating system. The operating system then starts the init application, which starts other applications and daemons. It also discusses understanding the target board hardware, restoring it to a factory default state, and using vendor-provided utilities.
Coming up with optimized C program for Embedded Systems consist of multiple challenges. This presentation talks about various methods about optimizing C programs in Embedded environment. It also has some interesting tips, Do's and Dont's that will offer practical help for an Embedded programmer.
Introduction to Android studio and new build system (Gradle). This was presented at GDG DevFest Kathmandu (Nepal).
For detailed article on it: http://www.technotalkative.com/introduction-android-studio/
SMC takes a state machine stored in a .sm file and generates a State pattern in fourteen programming languages (C, C++, C#, [incr Tcl], Groovy, Java, Lua, Objective-C, Perl, PHP, Python, Ruby, Scala, VB.net). Includes: default transitions, transition args, transition guards, push/pop transitions and Entry/Exit actions.
See all details on http://smc.sourceforge.net/.
August 7th, I attended a meetup of GDG Beijing, and give a presentation:Android Gradle Build System-Overview.
Mainly cover build system background knowledge, source code, interesting part of code, writing a plugin.
Buildroot (www.buildroot.net) is a tool for building small embedded linux system.
For example : Kernel + Busybox + Perl + Dancer2 ~= 60 MB
Buildroot could create also Qemu Virtual Machine image with the same footprint.
Demo with a Olimex iMX233 board (45€).
The document discusses building Android Open Source Project (AOSP) software. It describes fetching source code using repo, configuring the build, and building and flashing images to an Android device. Key steps include initializing repo, syncing sources, setting environment variables, choosing a target from the lunch menu, and using make to build binaries, images and flash the device.
Learn how to develop, free and pro versions of your applications. How to perform debug only configurations and how to use Build Variants in your day to day Android Development.
This document provides an overview of multimedia capabilities and libraries for embedded Linux systems, including DirectFB and SDL. It describes key multimedia concepts and gives brief descriptions of the main features and capabilities of DirectFB and SDL, including video playback, audio, input handling, and acceleration. It also discusses using these libraries for multimedia development on embedded Linux targets.
Here are the steps to prepare your lab environment:
1. Download the lab materials archive from the provided link.
2. Extract the downloaded archive file and browse the contents to familiarize yourself with the lab directories and files.
3. Change to the lab directory and enforce read/write permissions on the files as needed by using the chmod command.
This will setup your local environment for the upcoming hands-on labs. Let me know if you have any other questions!
Ross Burton has been working on the Yocto Project for nearly a year and previously worked on its precursor, Poky. The Yocto Project helps companies build customized Linux distributions for embedded products like set-top boxes, digital signs, networking equipment, and more. It provides advantages over general purpose desktop distributions by being designed for long-term use, having reproducible builds, and allowing full customization while maintaining standards and support.
This document discusses real-time operating systems (RTOS) and embedded systems. It provides an overview of RTOS concepts like tasks, memory management, timers, I/O, and inter-process communication. It also describes the author's work developing several RTOS projects over the years including Orz Microkernel and Jamei RTOS. Real-world applications of RTOS in areas like industrial automation and wireless sensor networks are briefly mentioned.
Controlling Memory Footprint at All Layers: Linux Kernel, Applications, Libra...peknap
Reducing memory usage is well covered in the history of this conference, yet new tricks still do exist. When optimizing memory footprint for an home gateway device, the author found some unexpected places where small changes can save valuable amount of DRAM or Flash space. This talk will visit different areas including - Kernel: fragmentation threshold, page frame reclamation task and atomic memory. Application level: Memory inefficient shared libraries due to ABI compliance and dynamic loading. Toolchain: Tuning malloc allocator parameters and compiler options. System level: General kernel might be more memory efficient than MMU-less uClinux, and preventing lock up when the system is on the brink of running out of memory.
Getting started with setting up embedded platform requires audience to understand some of the key aspects of Linux. Starting with basics of Linux this presentation talks about basic commands, vi editor, shell scripting and advanced commands
The document discusses board bringup and the startup process. It explains that on power on, the processor executes initial startup code which loads a stage 1 bootloader. The stage 1 bootloader then loads a stage 2 bootloader which loads the operating system. The operating system then starts the init application, which starts other applications and daemons. It also discusses understanding the target board hardware, restoring it to a factory default state, and using vendor-provided utilities.
Coming up with optimized C program for Embedded Systems consist of multiple challenges. This presentation talks about various methods about optimizing C programs in Embedded environment. It also has some interesting tips, Do's and Dont's that will offer practical help for an Embedded programmer.
Introduction to Android studio and new build system (Gradle). This was presented at GDG DevFest Kathmandu (Nepal).
For detailed article on it: http://www.technotalkative.com/introduction-android-studio/