Intel 8088 - A blast from the past

Ed Nutter

The Intel 8088 is an 8 bit processor related to the 16 bit 8086. The Microcomputer class consisted of wire-wrapping the chips to perfboard using sockets.I had taken computers apart, soldered, etc., but had never used wire-wrapping to construct a...


Zebras Hate You For No Reason: Why Amdahl's Law is Misleading in a World of Cats (And Maybe in Ours Too)

Jason Sachs

I’ve been wasting far too much of my free time lately on this stupid addicting game called the Kittens Game. It starts so innocently. You are a kitten in a catnip forest. Gather catnip. And you click on Gather catnip and off you go....


Favorite Tools: C++11 std::array

Matthew Eshleman

Many embedded software and firmware projects must be developed to high standards of reliability. To meet these reliability requirements, firmware project teams will consider many design tradeoffs. For example, an engineering team may avoid...


The Other Kind of Bypass Capacitor

Jason Sachs

There’s a type of bypass capacitor I’d like to talk about today. It’s not the usual power supply bypass capacitor, aka decoupling capacitor, which is used to provide local charge storage to an integrated circuit, so that the...


It ain't heavy, it's my robot...

Ed Nutter

Unmanned Ground Vehicles - Design considerations for man-portable/packable vehiclesA UGV is “a ground based mechanical device that can sense and interact with its environment.” (Carlson, How) A Field Robot is expected to work outdoors,...


Unmanned Ground Vehicles - Design Considerations for Snow and Cold Environments

Ed Nutter

It's that time of year when the white stuff falls from the sky across the US, and with it comes lower temperatures. These conditions must be taken into consideration when designing a vehicle for outdoor use. A few definitions from...


Vala applications on Embedded Linux: maybe a cleaver chice [part 1]

Felipe Lavratti

Vala is a sexy, open source, high level programming language that appeared in 2006, it counts with a modern typing system, is object oriented, compiled and statically typed, it has a almost identical syntax to C# and is maintained by GNOME. The...


How to Succeed in Motor Control: Olaus Magnus, Donald Rumsfeld, and YouTube

Jason Sachs

Almost four years ago, I had this insight — we were doing it wrong! Most of the application notes on motor control were about the core algorithms: various six-step or field-oriented control methods, with Park and Clarke transforms,...


Round Round Get Around: Why Fixed-Point Right-Shifts Are Just Fine

Jason Sachs

Today’s topic is rounding in embedded systems, or more specifically, why you don’t need to worry about it in many cases.One of the issues faced in computer arithmetic is that exact arithmetic requires an ever-increasing bit length to...


Favorite Tools: C++11 User-defined literals

Matthew Eshleman

In many software domains units of measurement are frequently critical to the software's data processing requirements. Those same units, or rather the use of the wrong units, are often the source of bugs and disastrous mistakes. Although...