Last modified 2023-06-20 01:03:53 CDT

Projects

Primary

a lightweight, embeddable software-defined radio framework built on LuaJIT
a lightweight software-defined radio framework built with Zig
a pure Python 2/3 library for peripheral I/O (GPIO, SPI, I2C, MMIO, Serial) in Linux
a Lua library for peripheral I/O (GPIO, SPI, I2C, MMIO, Serial) in Linux
a C library for peripheral I/O (GPIO, SPI, I2C, MMIO, Serial) in Linux
a lightweight msgpack serializer and deserializer written in pure Python
a weather frontend to a variety of weather providers

Software

Simple console snake implementation written in TypeScript
Rule 110 on the Ethereum blockchain
a tool to dump, plot, and convert impedance sweeps from a RigExpert antenna analyzer
a console-based simple serial port terminal, written in Python
an example getblocktemplate Bitcoin miner, written in Python
a standalone Bitcoin keypair/address generator, written in Go
Rule 110 implemented with C++11 templates
a point-to-point layer 2 tap interface tunnel over UDP/IP with HMAC-SHA256 authentication, written in Go
a real-time spectrogram tool for PulseAudio and a command-line spectrogram tool for WAV files, written in C++11
a minimal fortune-mod clone, written in C

Hardware

a simple kitchen timer implemented in digital logic on a Lattice MachXO2 CPLD
an inexpensive, open hardware, 32-bit Cortex-M0 development board
a clone of Doug's Word Clock
a simple 8-bit multi-cycle von Neumann architecture CPU, written in Verilog
an open hardware, open source Cortex M3-based electronic wind instrument
a sound file spectrum extraction tool to accompany the elec-rec
an electromagnetic levitating digital scale
a 5V regulated switched capacitor boost converter implemented with discrete components
a basic audio echo/delay "pedal" based on LPC1768/mbed
a Wireless ZigBee/XBee controlled TRIAC
a Wireless ZigBee/XBee V-I Power Meter

3D Models

a 3D printable speaker dock for the SmartiPi Touch 2 case made with OpenSCAD
a 3D printable parametric slotted float made with OpenSCAD
a 3D printable parametric hook clip made with OpenSCAD
a 3D printable flosser holder made with OpenSCAD
a 3D printable parametric trimmer tray made with OpenSCAD
a 3D printable parametric closet rod end cap made with OpenSCAD
a 3D printable door latch spacer made with OpenSCAD
a 3D printable door strike spacer made with OpenSCAD
a 3D printable miniature motorized turntable for small objects made with OpenSCAD
a 3D printable jewelry box made with OpenSCAD
a 3D printable container for Ned rig baits made with OpenSCAD
a 3D printable parametric black powder flask spout made with OpenSCAD
a simple, single-file modeled ISO thread module for OpenSCAD
a 3D printable holster claw accessory made with Fusion 360
a 3D printable parametric spiral cup made with OpenSCAD
a 3D printable fiber optic project enclosure
a 3D printable gear toy
a 3D printable webcam mount
several 3D parametric gears
several 3D printable spinning tops
miscellaneous 3D printable projects

Antennas

Presentations

Basic Makefiles for Fun & Profit
a short course on x86 assembly; slides also available online here

Development Notes

a lightweight buildroot-based, X11-free, networking-centric, IPv6-ready distribution for the BeagleBone platform

Notes

Archived

a modular, discrete-time control daemon for a hydroponic garden, written in Lua
a collection of free routines to create, read and write Atmel Generic, Intel HEX8, and Motorola S-Record formatted files; written in C
a simple QR Code decoder written in Python (for my own education; it is not a robust tool)
a simple telnet client using Linux system calls only, written in 32-bit x86 assembly
an Atmel AVR firmware disassembler with several handy features, written in C
a Microchip PIC firmware disassembler with several handy features, written in C
Creative Commons License