Myoelectric Flamethrower
In a Nutshell: This is a personal project I took on over the summer of 2019, inspired by a myoelectric muscle sensor I found on Adafruit (an online electronics store) and by my roommate at the time introducing me to Avatar: The Last Airbender. The latter convinced me that it would be fun to build some sort of arm-mounted, gas-powered flamethrower, while I felt like the former would make it a sufficiently unique object with interesting enough design challenges to be worth taking on.
Adafruit's myoelectric muscle sensor
"Firebending" in Avatar: The Last Airbender
Here's the final product in action!
This is the first successful test with the whole assembly together
Here I am lighting a campfire (and my entire arm)
A long-burst test in my backyard (the camera was farther away than it appears)
Here are a few photos of the final assembly:
How it works:
The platform for mounting all the hardware is 3D-printed from a combination of PLA (orange) and TPU (black) plastic on my home printer. TPU prints very hot and sticky (this was my first time using it), and was a nightmare to calibrate with my old printer. However, I ultimately got some good flexible mounting plates out of it. I figured that for a wearable like this, a little malleability in the chassis would make it conform to my arm better. Everything is attached with machine screws, so the system can be disassembled and reconfigured non-destructively.
This platform is secured to my arm with simple velcro straps. As an extra comfort measure I have taken some leather bracers from a ren faire and layered them under the hard PLA ribs. For safety (because the pilot light is right below my wrist) I am also protecting my hand with a welding glove.
Each cluster of components is organized onto a custom-shaped panel of PLA, which is attached as a module to this base chassis. I used a pegboard-style mounting system so I wouldn't have to plan out precisely where each module would go before I had it in my hands. I designed all of these parts in Fusion 360, as shown below:
As mentioned previously, activation is controlled by firmly flexing the forearm, which is picked up with Adafruit's muscle sensor board (which uses a trio of EKG pads glued to various places along what I believe to be the flexor pollicis longus muscle). It took weeks of trial and error (and dozens of EKG pads) to identify an arrangement that would reliably give me the desired readings when I tensed my hand. Adafruit's board only outputs a simple analog signal, so a large part of prototyping this system was figuring out a functional filtering algorithm to turn that into strong ON/OFF logic. I ran this on an Arduino Mega, which is massive overkill but it's what I had on hand at the time. The algorithm will only register an ON signal once the forearm has been sufficiently flexed for a short period, to prevent dangerous flickering due to normal arm movement or noise.
The flamethrowing part of the assembly is made from three primary components: a fuel tank, a solenoid valve and a pilot light. I made the fuel tank out of steel piping from Home Depot, with a quick connect nozzle for easy refueling. Butane is cheap so I'm using that, although if I did this project again I think I'd use propane. On the end opposite from the quick connect is the solenoid valve, which is able to dump the whole tank in about 6 seconds when energized (assuming it has been filled from a butane cylinder for about 10 seconds). Everything is secured together with teflon tape and soap bubble-tested to ensure there is minimal leakage. On the other end of the solenoid is a length of medical tubing which carries the butane from the upper arm to the business end of the device; the under-wrist assembly. Here butane is ejected from another quick-connect nozzle (because they came in a pack of 2), where it passes the exposed guts of an arc lighter (salvaged from the dollar store). The arc lighter (or pilot light, to use flamethrower terminology) is timed to ignite right as the gas gets to the end of the tube, and the result is an energetic burst of flame.
The whole pilot light and nozzle assembly is attached to a mount on the underside of the wrist using magnets, so the forearm and upper arm assemblies can be put on and taken off separately without severing any part of the butane pressure system (this was easier than having to unplug the tubing itself). I also designed and printed a custom plug for electrically connecting (and disconnecting) the two halves of the system. I planned out all of my circuits on breadboards before soldering them together with perma-proto boards (using mainly bare copper wires, which is a little bit sketchy in retrospect). All of the perma-proto board modules are connected to each other with screw terminals and spare breadboard jumper cables.
Things I would improve if I built it again:
- It turns out that the entire time I was testing this system, I was energizing the solenoid valve with only 5V when it really needed 12V, which led to really weird inconsistencies. I did have a mosfet which was supposed to step up the 5V output signal from the Arduino (in fact I chose my battery because it has both 5V and 12V outputs), but something funky about my wiring must have bypassed that. I was able to re-wire the big red manual activation button to send the full 12V, however this meant that for all the videos I have of this thing, it's not actually muscle-activated, which is unfortunate.
- I would 100% add a fan that feeds into an inlet near the solenoid valve and flushes residual butane through the system after the valve has closed. I experienced a few back-burn issues, where butane would condense to liquid in the tube and then dribble out, causing the system to fully light my entire forearm on fire (briefly) when the pressurized gas stopped flowing.
- I'd also consider a secondary blower fan that blows air through a collar around the gas outlet port, in order to further shield me from the fire and maybe even direct it a little bit. Right now the system is LETHAL (to its user) if fired straight down, and I think shielding it with air like this may remedy that to some extent.
- While I will defend that it looks cool, this thing is woefully overcomplicated and oversized. All of the processing could be done not even on an arduino nano, but on something as small as an ATTiny 6-pin microprocessor chip. It doesn't need the OLED diagnostic display, which adds a ton of complexity to the wiring, and I'm pretty sure the battery is way chunkier than it needs to be. A second pass at this project would almost certainly yield a device which fits everything on just the forearm, without the need for two split assemblies.
- Come to think of it, this project doesn't even really require a microcontroller at all. Considering that the outputs are just one signal to turn on the pilot light and one to open the solenoid valve, and the only logic is checking if an analog value has been high for a certain period of time, this whole functionality could be performed with a relatively simple circuit in place of the Arduino.
- I HATE screw terminal blocks, and I'm never using them again. I thought it'd be nice to use them everywhere with this project so it could remain fully modular and I could disconnect any module from the rest of the assembly, but ultimately it ended up being so complex this was unfeasible anyway. These terminals gave me countless connectivity issues which caused difficult-to-trace bugs, and maybe they're fine on static assemblies (or if you don't get the cheapo Amazon ones) but with something like this where it's moving around and bumping into things, I'll be using wago lever blocks or crimped ring connectors from now on.
- I went with a custom tank instead of just mounting the small butane can to my arm because I was afraid if I did something wrong the system would backburn all the way up to the container and it'd explode right next to my head. I no longer believe there is a serious risk of that happening, especially if I implement the aforementioned air shielding and flushing systems, so in a future design the refuel procedure could be as easy as just screwing in a fresh tank from Lowe's, as opposed to the arcane and fidgety process of injecting fuel through the quick-connect.
I'll probably pick up this project again some day. I'd love to make a pair of wrist-mounted flamethrowers which are activated by punches, and maybe even do it in a semi-concealed (or at least lower-profile) sort of way with pressurized propane tubes snaking up the arms into a small backpack. I see a lot of flamethrowers online with incredible range (with liquid fuel, which I will never use in a wearable), even ones that are arm-mounted, however I think there's room in the makerspace for a flamethrower that's really good at making huge directed fireballs with short bursts (instead of long, steady streams). I'd like to try developing a sort of detonation chamber that feeds from a main tank and pre-pressurizes the gas automatically, then dumps it all in a fraction of a second (maybe with some sort of piston) as the gas is guided out in a vortex and ignited. My ultimate goal would be to make a solid "shotgun" style flamethrower, which I think is totally possible with a bit of R&D. Stay tuned I guess!