Bill Home

Inside Look: Cummins Centinel

Managing the addition of oil to a diesel engine’s fuel-oil mix turns out to be a tricky problem. Here’s one design that worked well.

This article originally appeared in the July 2001 issue of Embedded Systems Programming Magazine.

Welcome to this edition of Inside Look, a periodic column that takes an indepth look at the design of a successful, unsuccessful, or just plain interesting embedded system.

This isn't a marketing pitch. We're scrutinizing the technical aspects of the design, to find out what went right, what went wrong, and what would go differently if the designers had the opportunity to do it all over again.

Freescale Announces Low Cost Development Kits

ORLANDO, FL -- June 22, 2005 – Freescale Semiconductor, Inc. introduced two new low cost i.MX Lite Kits at their inaugural Freescale Technology Forum in Orlando, Florida. These evaluation kits provide a quick and cost effective method for software and hardware developers to evaluate the i.MXL or i.MX21 Applications Processors as well as perform deep product development.

Read more in the press release on the Microcross, Inc. website


Getting Started with GNU: A Tutorial Introduction Using the ARM Evaluator-7T

Looking for a low-cost way to explore GNU tools for embedded development? Here's one approach.

If you have been following any news related to embedded systems development recently, you will have heard that GNU tools are growing increasingly popular for mainstream embedded systems development. To say that they are just now becoming popular for all types of embedded development would be untrue—GNU tools have been used to produce embedded applications since their creation, but haven't seen widespread use in the greater embedded community until recently.

This article provides you an opportunity to evaluate GNU tools for embedded development in a low-cost setting using either the GNU debugger's ARM instruction set simulator, or the ARM Evaluator-7T single board computer. The Evaluator-7T is a good choice for an introductory GNU experience, because the ARM family of chips is well-supported by GNU, and this inexpensive board in particular comes ready-to-play with the entire GNU development tool chain, including the GNU debugger.

Introducing GX-Linux™

Microcross, Inc. and Cogent
Computer Systems, Inc.
have announced their embedded Linux strategy for the CSB6xx,
Ultra-small Single Board Computer (uSBC) platforms: The Microcross
GX-Linuxtm Platform.

I am the primary Linux kernel maintainer for several GX-Linux targets.
I also do most of the runtime environment setup and maintenance work, and will
offer training specific to the GX-Linux BSP shortly.

Read the complete press release here.

On “GPL3 May Require Websites To Relinquish Source Code”

I have seen a number of reports circulating in the press that state that the upcoming,
revised version of the GNU General Public License (GPL) called “GPL3”, will force providers
of web service applications based on GPL-licensed technology to disclose their source code.
To date, each of these headlines has been factually inaccurate. Here is the truth as I see it.

As someone with a decade of experience using GPL-licensed technology to build embedded systems,
I’m pretty well-versed in what the GPL Version 2 (the currently released version) says.
I have also taught classes and written magazine articles on how the GPL2 affects development
and deployment of embedded applications. I have even had the honor of an email from Richard
Stallman himself, a.k.a. RMS and the founder of the Free Software Foundation (FSF), in response
to an error I once made describing the interaction between the GPL and various Open Source licenses.
(Said mistake was swiftly and permanently corrected).

Web by Proxy

Using an HTTP Proxy to bridge legacy embedded systems to the Internet.

Adding a TCP/IP and web server stack to an embedded system is an expensive proposition. If your product already communicates, it may be better to use a proxy.

This article originally appeared in the May 2000 issue ( of Embedded Systems Programming Magazine (

It goes without saying that Internet-enabled devices are all the rage these days. A few short years ago, the only mainstream embedded users of the Internet were set-top boxes and network infrastructure equipment. Today, on the other hand, everybody wants to interact with every gadget they own via a web browser, and most of them can provide rational reasons for doing so.

Porting and Using Newlib in Embedded Systems

1. Introduction

Although technically not a GNU product, the C runtime library newlib is the best choice for many GNU-based embedded systems that require a modest C runtime environment. This article introduces newlib's most important features, shows you how to use newlib in a GNU-based embedded system, and describes in detail how to port newlib to a runtime environment featuring the uC/OS realtime operating system.

With minor modifications, newlib can be used in embedded systems that are not built using GNU tools. Newlib can also be used as a glibc runtime library replacement in embedded Linux systems. The classic, "Hello, world!" test application occupies less than 30k in a newlib-based Linux runtime environment; the equivalent glibc-based application is more than 380k in size.

Implementing a Debugging Agent for the GNU Debugger

TODO: this article is still undergoing revision and proofing.

Despite its low cost and popularity as a workstation debugger, the GNU debugger, gdb, is an extremely powerful and flexible tool for embedded systems development. The following paragraphs describe how the GNU debugger works, and how you can implement a remote debugging agent that allows gdb to debug application code running on your embedded system. The text introduces the basics of gdb's communications protocol, then provides example implementations for the commands gdb needs to step code, read and write registers, and handle breakpoints.

XML feed

Site Design by: One Hat Design Studio.