Nerf Hammershot McCree Controller

Using a Nerf Hammershot and an Arduino, I built my own custom video game controller for the character of McCree in Overwatch. Overview The Arduino inside of the Nerf gun acts as a mouse and keyboard, sending HID commands over USB to the computer. The trigger and hammer are wired to buttons, and the cylinder is wired to a rotary encoder. Pulling the trigger fires, sliding the hammer back “fans the hammer”, and spinning the cylinder reloads. The gun also includes an inertial measurement unit (IMU) with an accelerometer and a gyroscope. This allows me to track movement for aiming. McCree’s…

Segmented LED Display ASCII Library

When it came time to start the programming for my time circuit displays, I needed a library of characters for segmented LED displays so that I could not only show the time, but also display strings of text. Maybe I wasn’t looking hard enough or I was looking in the wrong place, but much to my dismay I couldn’t find a readily-accessible library to use. So I’ve made my own and I want to share it so others don’t run into this same problem.

Musical Floppy Drives

Note: This project is current a work in progress. This page is likely to change as I progress. Overview The goal of this project is to build a set of “musical” floppy disk drives. That is, to be able to use a floppy disk drive as an instrument that plays notes via MIDI. Using a few of these drives I can even play entire songs. Posts Part 1: Getting Started with Musical Floppy Drives Part 2: Building Custom Floppy Drive Power Cables Part 3: Building Musical Floppy Drive Breakout Boards Part 4: 8 Musical Floppy Drives Play “Cara Mia Addio” Part 5: Controlling Musical…

Adalight with FastLED

I’ve previously mentioned that I was initially using this code by James Bruce to drive the ambilight. While I was waiting for the circuit board components to arrive, I thought I would take some time to expand on his work, fix some bugs, and add a few features I thought were missing. After a few recent tweaks it’s now ready for distribution. Presenting: Adalight-FastLED! I’ve reworked the Adalight code to provide user-friendly options that allow you to easily customize it for your setup. I also added a brightness limiter and a calibration mode, which sets all LEDs to the same…

DIY Ambilight with WS2812B LEDs

Overview The goal of this project is to build a dynamic backlight, also known as an ‘ambilight’, for my PC monitor. An ambilight changes colors based on the content onscreen, extending your monitor to the wall behind it. By reducing the contrast between the monitor and the background it can also help with eye strain. There are some commercial versions of this product, but I wanted to see if I could make one myself with WS2812B addressable LEDs (also known as NeoPixels) and an Arduino. This was a fun project and I’m really happy with the end result. If you’d…