FIGURE 2. The PropBOE, mounted onto the Beginner Bot.
other microcontrollers is that it’s
designed from the ground up to
be multi-tasking. Inside one
Propeller is actually eight
individual microcontrollers, each
operating independently but able
to cooperatively share resources
like memory and input/output
pins. You don’t have to use the
multi-tasking feature of the
Propeller (none of the simple
demonstrator programs in this
article require it), but it’s nice to
know the ability is there, should
you need it.
The chip uses eight general-purpose cores, or “cogs,” to do
most of the heavy lifting required
of the typical microcontroller. This
makes the Propeller a bit different
than the typical microcontroller.
For example, instead of relying on
hardware timers — special circuit blocks inside the chip
that do just one job — in the Propeller these types of
tasks are handled by one or more simultaneously
The Propeller is supported by numerous
programming languages, including Basic and C, but the
two primary languages used with the chip are unique
to it: Spin and Propeller Assembly. Feel free to skip
Assembly for now; most of what you’ll want is easily
handled by Spin. Parallax supports a large library of
premade objects that provide common functionality
which further decreases the code writing you need to
do. You can learn Spin using the free documentation
provided on the Parallax website. Be sure to check out
Jon Williams’ Spin Zone column in Nuts & Volts — the
sister publication to SERVO Magazine.
The Propeller is just an IC, available in both surface-mount and 40-pin DIP. While you can construct circuits
with a bare Propeller chip, more often you’ll want to
use a pre-made development or prototyping board
which provides a voltage regulator to supply the
required 3. 3 volts to the Propeller, USB connection for
programming from a computer, plug-in headers for
wiring components to the Propeller, and various other
There are a number of Propeller-based development
and prototyping boards available, both from Parallax
and from third party sources. For the Beginner Bot, I’m
using a Propeller Board of Education, or PropBOE. It’s a
relatively new product — in fact, it was in its last
development stage when I wrote this article. As a
development board, it’s a bit more expensive than some
but its feature set is remarkable, providing for easy
upgrades and expansion. For the Beginner Bot, I’ll only
be using a fraction of what the PropBOE has to offer,
but you’re free to go further on your own.
• Integrated USB adapter. Connect the PropBOE to
your Windows-based PC for programming using a
USB cable. Before first use, be sure to download
the Propeller software package which includes
the necessary USB driver to connect your
computer to the PropBOE.
• Dual voltage regulators, for both 3. 3 and five
volts. Power supply connections include nine-volt
battery terminals and a standard 2.1 mm barrel
plug. The supply voltage should be in the range
of six to nine volts.
• Solderless breadboard area with connection
points to power, as well as the first 16 I/O pins of
• Headers for connecting up to six R/C servos. We
won’t be using this feature in the Beginner Bot,
but it’s handy to know they’re available.
• Integrated micro-SD data card for reading and
storing data in permanent and replaceable
• Plug-in headers for wireless modules, including
standard XBee transceivers.
• Audio and video output terminals. Video out is
through a standard 15-pin VGA connection; audio
is through a 1/8” stereo jack.
• Built-in analog-to-digital converter, for sampling
the voltage level of several analog sensors at
SERVO 12.2011 47