Human Being, Occasional Smart Person, Just Some Guy

Back Burner

These are ideas that I’ve come up with for projects which I have either not started or not finished. This page is a working log of things I need to remember to work on when and if the opportunity presents itself. If you manage to do any of these things, I’d like to see.

Products

Dance arcade cabinet (for sister’s and brother-in-law’s rec room)

Dance pads: One sensor square was designed and tested and is known to work, though a redesign may be in order at some point.

USB HID controller: A box that has an arbitrary number of in and out lines. I’d prefer something that uses the more modern, more plug-and-play USB HID format, wherein we have not only a USB device but one that doesn’t require a specific driver. Since the target platform is Linux, that’s important. In the time since I last worked on it, this guy basically did what I’d been trying to do, but it might be useful to get that build running on Ubuntu instead of Windows.

Light controller: An RS-232-based design was successfully built. Outputs were broken-out chains of 74HC595 SIPO shift registers. It’s a common design and easy to adapt to any microcontroller. Running it would require capable client software on the PC to read/write the device directly. Hooks exist in StepMania to control lights on the cabinet and pads (I wrote one myself). Barring a direct mapping to a suitable HID-base device class, a virtual serial port is a possibility.

Input controller: Basically, the light controller in reverse. Inputs would be broken-out chains of 74HC164 PISO shift registers (or cheap microcontrollers programmed to behave in the same way). The device would identify itself as a USB gamepad with a button for each input (though it could be extended to read ADCs as analog controls, too) and zero platform-dependent code would be necessary.

The MEGA KNOB: A 12- to 18-inch diameter wheel on the front of the cabinet that could be spun game-show-style to quickly navigate a large song selection. I never fully worked out the details, but I have a handful of bearings that I harvested from a pair of rollerblades that might be helpful. The endgame is to get the motion of the wheel into a rotary encoder so that it can be fed into the input controller.