About Tekkotsu

Tekkotsu means 'iron bones' in Japanese, often used in the context of buildings' structural framework. Similarly, this software package aims to give you a structure on which to build, handling routine tasks so that you can focus on higher level programming.

Tekkotsu uses an object-oriented and event-passing architecture, making full use of the template and inheritance features of C++. It was originally written for the Sony AIBO, but has since grown to run on a variety of different robots.

Because Tekkotsu is written in industry-standard C++, there are no new languages to learn, and there is no sharp distinction between "high-level" and "low-level", you can get started quickly and smoothly dip deeper into the API as needed to customize functionality. We have developed this software as a means to handle tough research problems — performance and low overhead are important design considerations.

Some of the services Tekkotsu provides include visual processing, localization, forward and inverse kinematics solvers, remote monitoring and teleoperation tools, and realtime motion control. A large library of tutorials and demo behaviors are included to help you get started, with extensive reference documentation when you have specific questions.

Tekkotsu is an open source, free software project that builds on several third party libraries, such as NEWMAT (matrix operations), libjpeg, libpng, libxml2, and zlib. Tekkotsu uses the CMVision package by Jim Bruce for color segmentation and region grouping, as well as the Aibo walk engine from Manuela Veloso’s 2002 RoboSoccer entry, CMPack’02. These latter two packages are licensed under the GPL, however Tekkotsu itself and the other libraries are licensed under the more permissive LGPL.

Contact Information


For general kudos, questions, and comments, we request you try the mailing list first, but you can also contact directly:

U.S. Mail:

Computer Science Department
Carnegie Mellon University
5000 Forbes Ave
Pittsburgh, PA 15213

Submitting a Patch

If you would like to make a contribution, please create an entry on the Bugzilla server to describe your work, and supply a patch by attaching the result of running the cvs diff -uN command. It is preferable to develop against the current CVS “HEAD” revision to ensure your resulting patch will work as expected when applied to the development source tree.

Report a Bug

If you find a bug in the source code, please file an entry on our Bugzilla server.

Mailing List

To join the tekkotsu_dev mailing list, simply enter your e-mail address in the menu on the right.