This repo contains code for various Arduino projects. The libraries in
libraries/ contain both stuff pulled from arduino.cc or arduiana as
well as my own libraries.
The stuff here is meant to build directly using avr-gcc. You should
have avr-gcc and avrdude in your path, and define ARDUINO_CORE_PATH to
point to the core libraries in the Arduino distribution.
There are two projects:
boiler_logger contains the code for my Arduino that logs temperature
data for our steam boiler in the basement. It reads a number of Dallas
1-wire probes and sends the data from them to our file server machine
over a pair of XBee radios. The temperature data are then plotted at
mtxorb contains code for my Arduino that controls the Matrix Orbital
LCD display on my PC. It outputs system data to the LCD and controls
the fans in the machine using 1-wire temperature probes (they are
awesome) and a PID control loop. It is meant as an OS-independent
replacement for the "LCDC" Windows code. There are some pictures of
the hardware and the LCD output at
The libraries I've written from scratch are:
OneWiretemp -- interface to a 1-wire bus with temperature probes. Uses
the OneWire library for communication.
Mtxorb -- interface to a Matrix Orbital serial LCD display.
Displaylist -- functionality for defining a series of pages that are
displayed on a Mtxorb display or just over a serial wire.
Hist - a class that creates graphs over time of some input
variable. It can be output as a display item.
float16 - simple implementation of a 16-bit floating-point number
class, that can be used in memory-constrained situations.
frequency - a class that measures the frequency of signals on input
pins using the AVR interrupts.