The hardware is done and the Nerf gun is assembled, so all that’s left is to write the code to drive the controller!
The controller hardware is so close to being done! The last step is to wire everything to the completed circuit board and then re-assemble the controller shell.
Most of this wiring I did as I went along, but since the same process was used throughout I thought it would be better to discuss everything at the same time.
I’ve got buttons, a rotary encoder, a touch-sensitive antenna, and a fancy RGB LED. Now it’s time to tie everything together with a custom circuit board!
The basic button controls have been added to my Nerf controller, so now it’s time to add a bit of flash: an RGB indicator light and a hidden touch-sensitive button.
The planning for the controller is complete and the disassembly of the Nerf gun is done. This is where the real fun begins – modifying the revolver and starting the electronics.
Lately I’ve been watching my fair share of Twitch, and one of my favorite streamers is a kiwi by the name of Rudeism. Although he’s quite an entertaining streamer in his own right, one of his gimmicks is that he plays games “wrong”. That is to say, he likes to play games in a way that’s not standard – something he calls “AltCtrl”. He’s played Overwatch’s Winston with bananas, Skyrim with voice-only controls, and Player Unknown’s Battlegrounds (PUBG) with a frying pan, just to name a few of his many AltCtrl projects. You can find his streams on Twitch.
I think the whole idea of “AltCtrl” is quite intriguing, and it would be fun to build my own controller that matches the animations in a game. I’m going to try doing just that by making my own controller for Overwatch out of a Nerf Hammershot revolver.
With the LED characters in-hand, the next step is to write an embedded program to display integers and strings on the time circuit displays. The goal is to be able to set the characters for each display group based on simple variables, so doing something like displaying the time returned from a real-time clock (RTC) becomes trivial.