Home
Downloads

In this section you will find links to distributions of software that I wrote or in a couple of cases co-wrote. The distributions that are the intellectual property of my company (which is most of them) are offered under various open source licenses like GNU GPL or LGPL, Apache, or BSD. The distributions that are not the intellectual property of my company (but which I still wrote or co-wrote) are offered under non-commercial licenses or are in the public domain. I've written about much of this stuff in my blog under the pseudonym Chip Overclock. You can find relevant articles by just searching for the project name using the Google search form at the bottom of every blog page. The links below lead to pages with more descriptive detail; those pages will have a link to the software distribution (typically a compressed tarball or zipfile) in the FTP area of this web site.

  • Amigo represents my noodlings with Arduino, an open-source electronics prototyping platform that uses an eight-bit microcontroller, and with using C++ and FreeRTOS on that platform.
  • Arroyo is Diminuto Phase II using the came commercially available hardware as Diminuto but offering expanded capabilities.
  • Biscuit is a secure mechanism for automating system maintenance tasks on embedded systems in the lab or even in the field.  
  • Buckaroo is a collection of Java components which includes Chip's Instant Managed Beans that make it easy to export software state via JMX.
  • Cascada was the port of Diminuto to the BeagleBoard. All of the changes necessary were folded into Diminuto.
  • Chapparal is a port of a tiny subset of Buckaroo to Java ME. It runs under the CVM in the CDC on a Nokia N800 internet tablet.
  • Concha is a collection of C structures and functions implementing sources and sinks that illustrate how to do object oriented design and implementation in C.
  • Conestoga  is my port of Contraption to the ODROID-A4, a Samsung Android platform reference device from Hardkernel.
  • Contraption is a GNU-based software overlay for Android for the Beagle Board that simplifies porting traditional GNU-based software to that platform.
  • Desperadito is a subset of Desperado that has a reduced footprint and a much simpler build environment that I used in Hayloft.
  • Desperado is a collection of reusable components in C and C++ implementing design patterns common to embedded applications. It is licensed under a modified version of the GNU Lesser General Public License (LGPL) that allows it to be statically linked without any viral licensing implications. 
  • Diminuto is my attempt to create a teaching environment for embedded and real-time software design using open source software and commercially available hardware.
  • Hackamore is an application and framework in Python that dynamically monitors the channel and call state of one or more Asterisk PBXes through their Asterisk Management Interface (AMI).
  • Hayloft is a C++ interface to the Amazon Web Service (AWS) Simple Storage Service (S3). It allows you to, for example, develop cloud based storage systems for embedded systems. It supports a variety of usage models including synchronous and asynchronous, single and multi-threaded.
  • Horsefly is my project to learn about the software and hardware design of the AR.drone, a quad-rotor remote-controlled helicopter whose design I very much admire.
  • Kernel is a tiny little microkernel, written in assembler, used to support tiny little real-time embedded systems. It is in the public domain.
  • Lariat is a thin layer around Google Test (a.k.a. gtest), my favorite C++ unit testing framework, to allow you to resource constrain unit test suites.
  • LibIPC is a collection of reusable components in C implementing an abstraction layer to the Berkeley socket interface. It is the intellectual property of the University Corporation for Atmospheric Research and can be used for free for non-commercial purposes.
  • LibMessages is a collection of reusable components in C implementing a multiplexing message passing interface. It is the intellectual property of the University Corporation for Atmospheric Research and can be used for free for non-commercial purposes.
  • LibTools is a collection of reusable components in C implementing containers, parsers, and other useful utilities. It is the intellectual property of the University Corporation for Atmospheric Research and can be used for free for non-commercial purposes. 
  • Telegraph is as collection of C and C++ functions to fascilitate communication in embedded systems. It currently consists of a Hamming(8,4) encoder and decoder and a sixteen-bit Fletcher checksum generator.

Presentation: Implications of Memory Consistency (or Lack of It) Models for Java, C++, and C Developers (more)

Seminar Review: Jack Ganssle, Better Firmware Faster, 2006 (more)

Article: Depending Upon the Kindness of Strangers: Notes on Open Source and Free Software (more)

Article: Vaster than Empires and More Slow: The Dimensions of Scalability (more)

Article: In Praise of do-while (false) (more)

Book Review: Joel Spolsky, Best Software Writing I, Apress, 2005 (more)

Presentation: Robert Austin, Measuring and Managing Performance in Organizations, Dorset House, 1996 (more)

Book Review: Joel Spolsky, Joel on Software, Apress, 2004 (more)

Presentation: James Surowiecki, The Wisdom of Crowds, Doubleday, 2004 (more)

Travelogue: China Journal: Dancing with a Sleeping Giant (more)

Unless otherwise specified, all contents Copyright © 1995-2014 by the Digital Aggregates Corporation, Colorado, USA.
Such copyrighted content is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.