The Dynamixel AX-12 is an inexpensive powerful servo that designed for the rigors of robotic applications.
The AX-12 can report real-time position, voltage, speed, load, and temperature using an openly published
instruction/status packet protocol. The servos shuts down in the event of overheating, out of range
voltage, or several other user configurable alerts.
Dynamixel AX-12 Communication Protocol
The Dynamixel communication protocol 
AX-12 Packets
is an openly published instruction/status (send and receive) packet protocol.
Instruction packets are sent from a controller to the Dynamixel AX-12 network.
Response packets are sent from the Dynamixel network back to the controller.
Since every Dynamixel AX-12 has a unique ID, only the AX-12 addressed in the instruction packet will execute the
instruction. The Dynamixel communication protocol can be
found in the Dynamixel AX-12+ manual starting on page 9.
Instruction Packet Examples
Light the LED on AX-12 ID 6
0xFF 0xFF 0x06 0x04 0x03 0x19 0x01 0xD8
Controller Options
CrustCrawler provides several controllers options for use with a Dynamixel AX-12 Network.
The USB2Dynamixel 
USB2Dynamixel
is CrustCrawler's most popular Dynamixel bus interface device. The USB2Dynamixel connects your PC directly to the Dynamixel AX-12 network through a standard USB port.
Software running on a PC sends instruction packets to the USB2Dynamixel which is forwarded to the Dynamixel network. Response packets are sent back to the PC through the USB2Dynamixel controller.
The USB2Dynamixel comes with a USB extension cable. A separate 7-10V 5A power source is required to power the AX-12 network!
The Parallax Propeller Demo Board 
Propeller Demo Board
functions much like the USB2Dynamixel once loaded with the DynaBus serial driver (free download).
A computer running software can send and receive Dynamixel network packets through the Propeller. The difference between the Propeller and USB2Dyanmixel is the Propeller can be easily programmed to accept
instructions at 2400 baud to 1M bps and pass those instructions to the Dynamixel network at 1M bps. That means any TTL serial
device can be used to send instructions to the robot arm through the Propeller. The Propeller contains 8 parallel processors called COGS, there is no compiler-driven or operating system-driven splitting of tasks among multiple cogs. A shared system clock keeps each cog on the same time reference, allowing for true deterministic timing and synchronization. Each COG can execute code at 20 MIPS or 160 MIPS total for the Propeller. DynaBus uses one COG, the other 7 COGs can be busy doing other tasks like processing sensor data in real-time or buffering an input stream from a wireless device.
The free DynaBus Embedded download contains open source drivers, an instruction manual, and a debug tool. The Propeller option comes with a USB cable. A separate 7-10V 5A power source is required to power the AX-12 network!
The CM-5 
CM-5
option is designed more for novice users. This CM-5 option comes with comprehensive software (Bioloid)
that makes controlling a Dynamixel network very easy. The motion editor has a move and teach feature where AX-12s can be positioned
manually and saved for later play back. The Behavior Programmer takes the motion editor one step further allowing playback
of one or many saved motions files.
The CM-5 option requires a serial cable, battery pack, and 12V CM-5 power supply.
Open Source Software Options
CrustCrawler provides open source PC software options for communicating with the Propeller or USB2Dynamixel controllers. More information can be found on the resource page.
The CrustCrawler Dynamixel API is an open source .NET library designed to send and receive asynchronous communication packets to and from the Propeller or USB2Dynamixel controller.The API provides easy access to Dynamixel commands and control table (registers). The API can handle status packet errors which are reported as exceptions.
The API comes with a Unit Test form that demonstrates how to use the API and invoke its methods.
Forest Moon C# Source Code
Scott Ferguson of forestmoon.com created several open source AX-12 libraries.
Scott´s software is very comprehensive and it comes with excellent help files. .NET programmers will really appreciate the time put into these classes.
The USB2Dynamixel SDK contains libraries and example source code for
VB.NET, C#, LabVIEW, MATLAB, JAVA, C/C++, and python. Download it today, heck it's free!