top of page


WIreless midi arduino controller
Associated Show: "A Christmas Story", Fargo-Moorhead Community Theatre (FMCT)
Time: November - December, 2018

Perhaps the most famous prop of the 1983 American cult-classic Christmas film "A Christmas Story" is Ralphie Parker's “official Red Ryder, carbine action, 200-shot, range model air rifle, with a compass in the stock and this thing that tells time." Of course, any firearm in a theatrical setting must be handled with due care and respect, and even dry firing an air rifle on-stage presents a danger and liability too great for most companies. To this end, we were faced with a dilemma for the best method of achieving a realistic, but more importantly safe method for representing Ralphie's coveted toy in action. Several solutions were explored, but in the end the most compelling was to simply augment the effect with recorded sound cues. But how would we trigger them reliably and in-time with our actor's choreography? Cue an Arduino-controlled wireless MIDI controller. This discrete remote control worked very well in the intimate 300-seat thrust stage, where our actor was often within feet of audience members. Concealing the remote within his palm created a convincing firing action as he took out the bad guys (and later, almost his own eye!)


I had been interested in Arduino and other microcontroller systems for some time before this show, but had never had a compelling opportunity to explore the systems until now. The project, at its core, is a simple one-button remote (resembling a car's remote-lock fob) which controls a remote relay connected to an Arduino. The

Arduino, running a custom firmware called MocoLUFA, is seen as a generic MIDI device by the computer it is connected to. The relay triggers the Arduino to send a MIDI command via USB to the laptop. Qlab, configured to listen for this command, responds by playing the associated cue. Parts used include:

Resources used include:

Photo: Perry Rust, A Christmas Story

Fargo-Moorhead Community Theatre, 2018

bottom of page