Introduction to Embedded Systems
This is the first chapter in the book Embedded Systems Hardware for Software Engineers.
Open Source in Embedded System Development
This paper introduces the huge range of free and open source software available to the embedded software developer. Hardware modeling, software tool chains, operating systems (RTOS and Linux), middleware and applications are all covered. Today open source is spreading to the hardware world. The paper addresses the advantages and risks associated with using free and open source software, including the issues of quality, support and licensing.
Real-Time Operating Systems and Programming Languages for Embedded Systems
Section 1 describes the main characteristics that a real-time operating system should have.
Section 2 discusses the scope of some of the more well known RTOSs.
Section 3 introduces the languages used for real-time programming and compares the main characteristics.
Section 4 presents and compares different alternatives for the implementation of real-time Java.
Embedded Systems – Theory and Design Methodology
This book addresses a wide spectrum of research topics on embedded systems, including basic researches, theoretical studies, and practical work.
Real-time Image Processing on Low Cost Embedded Computers
In 2012 a federal mandate was imposed that required the FAA to integrate unmanned aerial systems (UAS) into the national airspace (NAS) by 2015 for civilian and commercial use. A significant driver for the increasing popularity of these systems is the rise in open hardware and open software solutions which allow hobbyists to build small UAS at low cost and without specialist equipment. This paper describes our work building, evaluating and improving performance of a vision-based system running on an embedded computer onboard such a small UAS. This system utilises open source software and open hardware to automatically land a multi-rotor UAS with high accuracy. Using parallel computing techniques, our final implementation runs at the maximum possible rate of 30 frames per second. This demonstrates a valid approach for implementing other real-time vision based systems onboard UAS using low power, small and economical embedded computers.
Software Development for Parallel and Multi-Core Processing
The embedded software industry wants microprocessors with increased computing functionality that maintains or reduces space, weight, and power (SWaP). Single core processors were the key embedded industry solution between 1980 and 2000 when large performance increases were being achieved on a yearly basis and were fulfilling the prophecy of Moore's Law. Moore's Law states that "the number of transistors that can be placed inexpensively on an integrated circuit doubles approximately every two years." With the increased transistors, came microprocessors with greater computing throughput while space, weight and power were decreasing. However, this 'free lunch' did not last forever. The additional power required for greater performance improvements became too great starting in 2000. Hence, single core microprocessors are no longer an optimal solution.
Embedded Touchscreen Handbook
I want to add a touchscreen to my embedded product. Where do I start? That question is common nowadays. Most manufacturing companies are seeing the value – maybe the necessity – of touch screen technology. Many of them don’t have a long-term or close association with the technology, yet they expect their embedded engineers to handle the project successfully and on a tight schedule. These engineers often have questions... - How much am I going to have to learn to get the job done? - I’ve heard that LCD suppliers were not like other suppliers. But, how so? - What don’t I know that could shift the project from “exciting” to “doomed.” You have choices: Probably the three major questions that crop up when you need to add an LCD touch screen to your product are these: - Should I use a full-blown, embedded operating system, like Windows CE, CE Linux or QNX? - How much work does it take to develop an in-house LCD system from scratch? - Do I have other options? The answer to the first two questions is a resounding “maybe,” (depending on what you need to accomplish). The answer to the third question is, probably “yes.” In most cases, there is another option. Who should read this? If you are an embedded engineer who is thinking of adding a touch screen to your product, and if: - You need to know what is involved in adding color touch controls to your product. -You need to understand the risks (both known and hidden) involved in LCD technology. - Your main area of expertise is not LCD technology. - You don’t want to re-focus your time to acquire color LCD technology expertise. If you find that any of the statements above voice your concerns, you may find this paper worth reading.
C++ Tutorial
These tutorials explain the C++ language from its basics up to the newest features of ANSI-C++, including basic concepts such as arrays or classes and advanced concepts such as polymorphism or templates. The tutorial is oriented in a practical way, with working example programs in all sections to start practicing each lesson right away
High Performance Systems, Applications and Projects
This book addresses a wide spectrum of research topics of embedded systems, including parallel computing, communication architecture, application-specific systems, and embedded systems projects.
Five Steps to Improving Security in Embedded Systems
In today’s increasingly interconnected world, security breaches are becoming ever more prevalent, with escalating complexity challenges. How can embedded device developers balance the need for tighter security with competing business and market demands? This paper outlines five steps for building additional security assurance into embedded devices by considering the whole product lifecycle.
Five Steps to Improving Security in Embedded Systems
In today’s increasingly interconnected world, security breaches are becoming ever more prevalent, with escalating complexity challenges. How can embedded device developers balance the need for tighter security with competing business and market demands? This paper outlines five steps for building additional security assurance into embedded devices by considering the whole product lifecycle.
Open Source in Embedded System Development
This paper introduces the huge range of free and open source software available to the embedded software developer. Hardware modeling, software tool chains, operating systems (RTOS and Linux), middleware and applications are all covered. Today open source is spreading to the hardware world. The paper addresses the advantages and risks associated with using free and open source software, including the issues of quality, support and licensing.
New Life for Embedded Systems in the Internet of Things
The Internet of Things (IoT) is no longer a fanciful vision. It is very much with us, in everything from factory automation to on-demand entertainment. Yet by most accounts, the full potential of interconnected systems and intelligent devices for changing the way we work and live has barely been tapped. Up until now, IoT software solutions have largely had to be built from scratch with a high degree of customization to specific requirements, which has driven up the cost and complexity of development and deterred many prospective entrants to the market. What have been missing are developer tools that alleviate the costs associated with building the foundational infrastructure—the “plumbing” of their solutions—so they can focus on optimizing the core functionality and bring solutions to market more quickly with less cost. Wind River® is addressing these challenges with new solutions that have the potential to expand the market for IoT by reducing the cost and complexity of development. This document outlines the challenges that IoT poses for developers, and how Wind River solutions can help overcome them.
Real-time Image Processing on Low Cost Embedded Computers
In 2012 a federal mandate was imposed that required the FAA to integrate unmanned aerial systems (UAS) into the national airspace (NAS) by 2015 for civilian and commercial use. A significant driver for the increasing popularity of these systems is the rise in open hardware and open software solutions which allow hobbyists to build small UAS at low cost and without specialist equipment. This paper describes our work building, evaluating and improving performance of a vision-based system running on an embedded computer onboard such a small UAS. This system utilises open source software and open hardware to automatically land a multi-rotor UAS with high accuracy. Using parallel computing techniques, our final implementation runs at the maximum possible rate of 30 frames per second. This demonstrates a valid approach for implementing other real-time vision based systems onboard UAS using low power, small and economical embedded computers.
Guide to designing a device incorporating MEMS-based pico projection
Over the last few years, millions of products incorporating pico projection have shipped, and developers are innovating new applications for this rapidly growing display category. Ideal applications for pico projection include near eye display, interactive digital signage, head mounted display, ultra short throw (UST) TV, standalone portable projectors and embedded projection in smartphones, tablets and laptops. New uses continue to emerge; for example, you might be able imagine a design for a thermostat using a display powered by gesture recognition or interactive touch.
Real-Time Operating Systems and Programming Languages for Embedded Systems
Section 1 describes the main characteristics that a real-time operating system should have.
Section 2 discusses the scope of some of the more well known RTOSs.
Section 3 introduces the languages used for real-time programming and compares the main characteristics.
Section 4 presents and compares different alternatives for the implementation of real-time Java.
Software Development for Parallel and Multi-Core Processing
The embedded software industry wants microprocessors with increased computing functionality that maintains or reduces space, weight, and power (SWaP). Single core processors were the key embedded industry solution between 1980 and 2000 when large performance increases were being achieved on a yearly basis and were fulfilling the prophecy of Moore's Law. Moore's Law states that "the number of transistors that can be placed inexpensively on an integrated circuit doubles approximately every two years." With the increased transistors, came microprocessors with greater computing throughput while space, weight and power were decreasing. However, this 'free lunch' did not last forever. The additional power required for greater performance improvements became too great starting in 2000. Hence, single core microprocessors are no longer an optimal solution.
C++ Tutorial
These tutorials explain the C++ language from its basics up to the newest features of ANSI-C++, including basic concepts such as arrays or classes and advanced concepts such as polymorphism or templates. The tutorial is oriented in a practical way, with working example programs in all sections to start practicing each lesson right away
Embedded Systems – Theory and Design Methodology
This book addresses a wide spectrum of research topics on embedded systems, including basic researches, theoretical studies, and practical work.
High Performance Systems, Applications and Projects
This book addresses a wide spectrum of research topics of embedded systems, including parallel computing, communication architecture, application-specific systems, and embedded systems projects.
Five Steps to Improving Security in Embedded Systems
In today’s increasingly interconnected world, security breaches are becoming ever more prevalent, with escalating complexity challenges. How can embedded device developers balance the need for tighter security with competing business and market demands? This paper outlines five steps for building additional security assurance into embedded devices by considering the whole product lifecycle.
C++ Tutorial
These tutorials explain the C++ language from its basics up to the newest features of ANSI-C++, including basic concepts such as arrays or classes and advanced concepts such as polymorphism or templates. The tutorial is oriented in a practical way, with working example programs in all sections to start practicing each lesson right away
Real-time Image Processing on Low Cost Embedded Computers
In 2012 a federal mandate was imposed that required the FAA to integrate unmanned aerial systems (UAS) into the national airspace (NAS) by 2015 for civilian and commercial use. A significant driver for the increasing popularity of these systems is the rise in open hardware and open software solutions which allow hobbyists to build small UAS at low cost and without specialist equipment. This paper describes our work building, evaluating and improving performance of a vision-based system running on an embedded computer onboard such a small UAS. This system utilises open source software and open hardware to automatically land a multi-rotor UAS with high accuracy. Using parallel computing techniques, our final implementation runs at the maximum possible rate of 30 frames per second. This demonstrates a valid approach for implementing other real-time vision based systems onboard UAS using low power, small and economical embedded computers.
Open Source in Embedded System Development
This paper introduces the huge range of free and open source software available to the embedded software developer. Hardware modeling, software tool chains, operating systems (RTOS and Linux), middleware and applications are all covered. Today open source is spreading to the hardware world. The paper addresses the advantages and risks associated with using free and open source software, including the issues of quality, support and licensing.
Real-Time Operating Systems and Programming Languages for Embedded Systems
Section 1 describes the main characteristics that a real-time operating system should have.
Section 2 discusses the scope of some of the more well known RTOSs.
Section 3 introduces the languages used for real-time programming and compares the main characteristics.
Section 4 presents and compares different alternatives for the implementation of real-time Java.
Embedded Systems – Theory and Design Methodology
This book addresses a wide spectrum of research topics on embedded systems, including basic researches, theoretical studies, and practical work.
Introduction to Embedded Systems
This is the first chapter in the book Embedded Systems Hardware for Software Engineers.
Embedded Touchscreen Handbook
I want to add a touchscreen to my embedded product. Where do I start? That question is common nowadays. Most manufacturing companies are seeing the value – maybe the necessity – of touch screen technology. Many of them don’t have a long-term or close association with the technology, yet they expect their embedded engineers to handle the project successfully and on a tight schedule. These engineers often have questions... - How much am I going to have to learn to get the job done? - I’ve heard that LCD suppliers were not like other suppliers. But, how so? - What don’t I know that could shift the project from “exciting” to “doomed.” You have choices: Probably the three major questions that crop up when you need to add an LCD touch screen to your product are these: - Should I use a full-blown, embedded operating system, like Windows CE, CE Linux or QNX? - How much work does it take to develop an in-house LCD system from scratch? - Do I have other options? The answer to the first two questions is a resounding “maybe,” (depending on what you need to accomplish). The answer to the third question is, probably “yes.” In most cases, there is another option. Who should read this? If you are an embedded engineer who is thinking of adding a touch screen to your product, and if: - You need to know what is involved in adding color touch controls to your product. -You need to understand the risks (both known and hidden) involved in LCD technology. - Your main area of expertise is not LCD technology. - You don’t want to re-focus your time to acquire color LCD technology expertise. If you find that any of the statements above voice your concerns, you may find this paper worth reading.
New Life for Embedded Systems in the Internet of Things
The Internet of Things (IoT) is no longer a fanciful vision. It is very much with us, in everything from factory automation to on-demand entertainment. Yet by most accounts, the full potential of interconnected systems and intelligent devices for changing the way we work and live has barely been tapped. Up until now, IoT software solutions have largely had to be built from scratch with a high degree of customization to specific requirements, which has driven up the cost and complexity of development and deterred many prospective entrants to the market. What have been missing are developer tools that alleviate the costs associated with building the foundational infrastructure—the “plumbing” of their solutions—so they can focus on optimizing the core functionality and bring solutions to market more quickly with less cost. Wind River® is addressing these challenges with new solutions that have the potential to expand the market for IoT by reducing the cost and complexity of development. This document outlines the challenges that IoT poses for developers, and how Wind River solutions can help overcome them.
High Performance Systems, Applications and Projects
This book addresses a wide spectrum of research topics of embedded systems, including parallel computing, communication architecture, application-specific systems, and embedded systems projects.







