Projects
XBoot
XBoot is a serial bootloader for ATMEL AVR series MCUs. Originally designed for the XMEGA series, it has been extended to also support any ATMEGA series part with sufficient memory. XBoot's primary features are support for multiple serial interfaces and support for online application-directed updating.
XGrid
XGrid is platform for grid computing on AVR XMEGA series MCUs. XGrid leverages the multiple USARTS characteristic to the XMEGA series to support extensible grid computing. It also integrates with XBoot's API to support online firmware updates of the entire network.
Python IVI
Python IVI is a Python implementation of the Interchangeable Virtual Instruments specification.
Python USBTMC
Python USBTMC is a Python implementation of the USBTMC USB instrument control protocol.
Python VXI11
Python VXI-11 is a Python implementation of the VXI-11 Ethernet instrument control protocol.
ftjrev
ftjrev is a powerful JTAG reverse engineering tool for FTDI FT2232 based JTAG cables.
fpga-utils
fpga-utils is a collection of utilities for working with FPGAs.
Templates for Embedded Development
The hardest part of many embedded system projects is configuring the toolchain and building a good set of libraries that leverage the chip's peripherals. The templates library contains templates for several processor series as well as a template for cross-platform GTK+ development that includes a cross-platform serial port library.
Nixie Clock
I designed and built this 4 tube Nixie clock in 2006-7 when I was a senior in high school. It uses a PIC microcontroller to drive the display and control the high voltage power supply and a Maxim/Dallas RTC chip with backup battery to keep time.