Laser Tag is awesome. Losing isn’t.
Hanging out with friends, running around, old arcade games in the lobby- what’s not to like?
That is, unless you’re like me, and you spend most of the game tagged.
So, besides practice… Is there a way to be better at laser tag?
Of course! We can cheat.
Why make this Instructable?
With the Arduino contest in full swing, we’ve seen an influx of Instructables exploring Ken Shirriff’s sweet Arduino IR library. What we’re lacking are some nitty-gritty applications! Sure it’s great that we can have an Arduino pick up IR signals- but what’s the point if we don’t do something cool with them?
Thus, I present to you, the BIRRD.
So what the heck is this BIRRD thing?
Pictured above, the BIRRD (or as the long winded may like to call it: Ben’s Inferred Record/Replay Device) is a pretty simple IR relay & replay device based around the Arduino mini. Using only a few common parts, Shirriff’s library, and your wits as a maker- you too can be a cheater!
Disclaimer: This project isn't very dangerous- but the immoral implications of cheating are! This device is not for the faint of heart. (More on step eight)
EDIT: I hate to self promote here, but if you liked this Instructable, please vote for it in the scientific method, and/or Arduino, and/or the Full Spectrum Laser contests that'd be so cool! Always looking for new tools to build with!
Step 1: Creating the BIRRD: A Hypothesis.
Spurred on by years of suffering from laser tag score-deficiency, I had no choice but to find someway to improve myself!
After doing some research...
I had no plausible ideas in hand; it was on this very site, while checking out a great IR guide, that I made the crucial connection for this device: laser tag guns use IR LEDs!
Just like TV remotes...
The standard (and somewhat outdated) laser tag packs transmit their code though little flashes with these LEDs, unseen by the human eye. Does that then mean we can tap into this airborne data- and use it to our advantage?
I propose we can increase our laser-kill-count, and cheat the laser tag system by using an Arduino-based IR receiver/sender to copy the user’s pack’s data and then continuously send that data.
Step 2: IR Signals, Laser Guns, Ya Know, the Usual...
What's a Gadget if you don't know how to work it?
Before we get building, lets talk about just what we're making- and how to use it in the field.
When not transmitting, the BIRRD copies IR LED pulses that are received, and stores the code sent. Every time a code is received, the Arduino's status light (Pin 13) will light up. It will continually pick up any code received until it enters transmission mode.
When the switch is flipped, the Arduino starts sending the code last sent to it over and over and over... until the switch is flipped again! (Status light also shines every time a transmission is sent!)
So, how would we use this in combat?
Because each laser in the area has its own special code, all you need to do is copy yours into the BIRRD.
To copy your code, just shoot your gun into the receiver- you should see the Arduino blink. This confirms your code is copied and saved! Now that your code is saved, simply turn on transmission mode, and start aiming! Just make sure your BIRRD doesn't pickup any other player's gun codes while in receiving mode. If another code is received, you should see the light blink.
Step 3: Time to Build: Distraction/Construction.
Easy to Build.
As mentioned before, there's not much to this circuit! It's primarily based off the circuit Ken uses to demo his IR library.. For that we'll need...
- 1x Arduino ProMini (or equivalent!)
- 1x IR LED
- 1x IR Receiver
- 1x 100 Ω Resistor
- 1x 1000 Ω Resistor
- 2x SPST switches*
*The switches depend mostly on your casing, in my case I used a slide and toggle, but anything SPST will work!
In my case for the case I used old parts from one of these. Sound quality isn't great, but the shell is the perfect size for a ProMini
So Ben, what do these parts even do?
Thanks for asking internet!
The IR Receiver will hijack the code our gun shoots,
The IR LED will transmit our hijacked code,
The Resistor keeps the LED from blowing out (Yes you need it!)
One switch will be our on/off
The other switch will toggle whether or not our device is transmitting code.
The schematic from Ken's website Is above, and It's pretty easy to follow, but for those interested, I've attached a Fritzing File with the completed circuit.
But Ben, what about the notification LED?
The code we'll use comes automatically set to use the built in LED on pin 13 as to notify use when we're receiving/sending code. If one was so inclined, you could add an other LED from pin 13 to ground, but with the BIRRD being a cheating device and all, I didn't want any bright lights for others to see.
Circuit break down.
Essentially, our transmitter switch will have one pin connected to Vcc (+5v), and the other connected to both Arduino pin 12, and a 1KΩ resistor that will lead to ground.
Next we have our receiver, which will have the Data pin (left most, when the bulb is facing you) connected to the Arduino's pin 11, then the ground pin of the IR receiver to ground and finally- you guessed it, the voltage pin to Vcc.
Our emitting LED will have the cathode connected to ground, while the anode runs through a 100Ω to pin 3.
Ken doesn't use an on off switch, but I wanted to add one. In this case, just set up a switch between the ground of the voltage source and the arduino's ground. This way, when flipped off the Arduino won't receive any power.
**You could also use a push button to activate the transmitter, rather than the switch mentioned above- but you would have to hold it down continuously in order to not have other gun codes received.
I got lucky because my case had holes for headphone ports that were just the right size for my LED//wires. For all those not using this case, I'd look into getting some sort of LED holder- like this or this. A 3/16" drill bit may also do the trick, but depending on the drill may be a bit tight.
Above are some pics of how I fit everything into the tiny case I had. If you're recreating this project, I'd recommend finding some tiny-er toggle switches though. EBay has some awesome options, like these guys that are a good two times smaller than the ones I had on hand at the time I built this!
One of my goals in building the BIRRD was to be able to re-flash programs onto it, incase I wanted to change the software later on. To do this, I left the header on, and had it come out of the case. The foam you see was just stuck on the end to avoid a short.
Right now I'm working on having it start with the code needed to turn off a TV! That way it'll serve as a TV Be Gone too!
BIRRD Fritzing File.zip14 KB
Step 4: Software Time!
The hard part is over!
Seriously, once built, the software portion of this build is easy as pie!
Finding the library
I started off testing the BIRRD using Ken's code which you can find here on Github.
Later I began working on my own versions, but Ken's still takes the cake!
For those of you not familiar with adding Arduino libraries, I'd check out this tutorial on Arduino's website.
You can also check out one of the many instructables documenting installing/using the library.
Writing the Sketch
Once you've got the library installed, load up the sketch 'IRrecord' and you're good to go!
See, I told you it'd be painless!
Step 5: Testing the BIRRD
A quick guide to testing,
Remember before how we talked about how similar laser-tag guns and TV remotes are? That comes in handy for testing.
To check if you're BIRRD works, power it on, and if it does, see if you can receive a signal! The LED should flash when you send the remote's code to the device, this confirms the code has been copied- and finally, try sending the code!
Step 6: The Sweet, Sweet Results.
More than just TVs,
Here we are, finally, the moment we've all be waiting for... Does it work!?
Indeed it does! And pretty well too! My first attempt at using the BIRRD went without a hitch.
For games with the BIRRD I left the BIRRD on as a ran around shooting normally as well, and in the control I used no BIRRD at all.
I played a control game that same night as to have something to compare my results to, and after crunching the numbers, here's how I did.
Analyzing the data,
Score wise the BIRRD only boasts on average 18%, but this is partly my fault, as it was only in the third round i targeted the 'crystals' a major point booster!
Accuracy's a bit interesting, you'll notice in the second game I had a 0% accuracy rate, because I fired no shots. There's no way this is correct though, because i had to fire a shot to register the gun with the BIRRD. Assuming a mistake was made in the scoring, we'll leave that one out. Just looking at games 1 and 3, the BIRRD still helped in shooting my accuracy up a full 42.3%!
Using the BIRRD It was 263% more likely to hit an opponent - and 159% better at not getting hit. Thus, difference in Tag Ratio is huge too- a whopping 3.18x more per game!
I've got to admit, going into this, I honestly wasn't expecting the BIRRD to work as well as it did. That being said, for my next build, I plan to make some changes... (continued on step seven)
Step 7: We Can Make It Bigger (Future Improvements)
Well surely you didn't think we'd stop there!
The BIRRD worked great, but...
My biggest complaint with the BIRRD was the angle in which it fired. 20° is a vast improvement of the standard laser gun, but still it's not enough.
Next complaint: Unless you're aiming it above you, you will be sniped! More times than I could count it was someone in the rafters above me taking me out.
And lastly, with a range of only ~35ft, people across the arena are nice and safe.
Making it better.
Okay, so lets see... We need something at covers not only the 360° around you, but also above, and it's gotta have lots of space if we want to fit more circuitry in it... Plus it needs to not be blearing obvious...
After a bit of thinking, I found it, A Crown! (or a king hat) The King of the BIRRDs.
Although not yet created, the parts are on their way!
Featuring ~24 LEDs mounted both around and above, this hat will fire IR beams completely destroying any vest that dare stand in its way. With a similar method of use, the user will simply shoot their gun into the inside of the hat to register the code, before pressing a fabric button triggering udder destruction!
Best of all, with all the crazy people in and out of the laser tagging arena, no one will ever suspect anything for the so called 'King of Laser Tag.'
***Updates to come!***
Step 8: Dealing with the Immoral Implications of Cheating.
I've cheated laser tag.
I know it, you know it- and it's important to admit it.
The repercussions of cheating are serious. Not only will the weight of you guilt keep you from reaching greater heights, but if caught, there's no telling how the management of the establishment will react!
All jokes aside,
This was an experiment to see if cheating in laser tag is possible- and even if it is, this, and all other BIRRDs should be used only when playing with people who know what's happening! I made a special trip with my friends just to try it out and i do not intend to use it for any more than that.
Please do not use this, or any other cheating devices in live games!
Not only does this ruin the fun for everyone else, but its just generally kind a jerk move! Be respectful of others playing, and most importantly have fun! It's not all about winning!