Résumé (PDF)

Weird Stuff

Citicar Restoration
My Instagram clone for vintage digital cameras.

Software Development

Instagram Clone (Python, Django)
IS31FL3741 LED driver library (C)
NT35510 TFT driver library (C)
Terminal Parser library (C & C++)

Hardware Development

Nikon lens adapter
The $15 Linux Machine
Portable Dumb Terminal
Mr. Robot Badge
Zip Drive Tower
Full Color Circuit Boards
RGB Gaming Coaster
Serial Fidget Spinner
Baud Box
A Wall of Circuit Boards

CAD Design

Silicone Membrane Keyboard
Injection Molded Palmtop
Retro-inspired industrial design
Quarter-Scale Retrocomputing
Hardened clamshell computer
3D Printed Tank Treads

Baud Box, a 256-key keyboard

During the development of the terminal parser library, I needed a way to print all characters over a serial port manually. This includes characters not normally typed on a keyboard (ASCII range 0x80-0xFF), as well as characters not usually used in the 21st century (Shift In/Out, 0x0E-0x0F, Bell, 0x07). The simplest solution would be a 256-key keyboard, so I built a keyboard with 18 keys.

Render of Baud Box

The device uses a dual 14-segment display to show the current buffer, or what has already been typed. Pressing ‘Transmit’ sends that byte over the serial port. The ‘Backspace’ key erases the buffer.

Printed Baud Box

The device uses a 3D printed enclosure with the special addition of a PCB front panel. On the front panel are three rotary switches for selecting the baud rate (up to 19200), the parity, and the stop bits. All of this is controlled by an Arduino with battery circuit.

More information can be found in my Serial Keyboard repository. This repo contains a few files, but is mostly geared towards an unoptimized build with the internal structure consisting of five(!) different PCBs. The SerialKeyboard.brd is just a 18-key keyboard with diodes. The DisplayCarrier.brd is an interposer between the display and Motherboard.brd, which is the only thing with active electronics. There’s also an Arduino in there and the front panel, which makes for a grand total of five different PCBs in this project.

I have started work on a simplified version, MasterBoard.brd, which would combine this all into one single circuit board. This work is not completed.

If someone can find me a source of 2U ‘Transmit’ keycaps, I’ll get right on that.