Duck
Active member
A few years back my friends and I really got into laser tag and played quite a bit using the Phoenix LTX guns. I wound up doing deeper research into laser tag overall and started a project reversing engineering the Phoenix LTX IR prototcol to build my own guns/base station. That project was forked eventually and Riley McArdle created a very nice product for hosting games with those guns. I learned alot along the way. If people are interested in laser tag planes, I would suggest reading up on MILES tag and looking through my blog posts on the subject as a way to get started.
Commercial efforts have different issues then non-commercial. Like everything, alot of patents dictate what you can and cannot do. The Phoenix LTX system does have a patent over the protocol itself. At least parts of MILES tag are covered as well.
There are four big parts of a laser tag system, physical signals, protocols, software and hardware.
== Physical Signal ==
First you have the physical signaling mechanism. Most systems use IR which is cheap, safe and invisible (more on that later). You can run into issues with the sun in some situations and you have choose frequency, power, filters and beam focus around this. Many varients of laser tag have a 'blast' function which really just reduces beam focus so you send the same signal to many players at once at reduces range.
Some systems use actual lasers in IR or other frequencies. Those are fantastic for range and noise cancelation but high cost and generally really finicky for picking out hits. A friend from the UW Electrical Engineering department built a laser based system and determined that while range was not an issue, the beam was so focused and the sensor so small that it would not be a good system for fast moving targets. The accuracy required to hit a sensor < 1cm was just too high. To contrast, the Phoneix guns with fresh batteries work up to 200 feet with a target size of a few feet in either direction at that range. Closer to the center of the beam, hits become more reliable. Aiming is critial but easier then handgun shooting.
One additional note on IR is that while IR is invisible to the naked eye, basically ANY camera has to actually fight to avoid picking it up. The FPV cameras we use come with or without IR filters for better night vision. They will ALSO pick up IR transmissions. When debugging my project I used a cheap webcam to actually watch packets get sent and ensure everything was what I expected. In the video they actually talked about not being sure where the beam was aimed. To calibrate laser tag guns, you mount them at a fixed point, draw a dot on the wall where your 'sight' points, then turn the IR beam on and look through a camera to see the beam on the wall. You can see the alignment and the intensity verus angular displacement with your own eyes. This should roughly match what you expect from the IR LED spec sheet:
https://cdn-shop.adafruit.com/datasheets/IR333_A_datasheet.pdf
In my github project I designed a simple arduino build that could power an IR LED. Almost all of the protocol was on the computer attached to the board and the board was just a passthrough to the LED. Not being an electrical engineer my board was really underpowered and there are better ways to power an IR led using a mosfet.
-- For Planes --
The big things to consider here are going to be:
1) Sun rejection - Planes hit all sorts of interesting angles that typical laser tag guns can ignore.
2) Enagement range, focus - What makes a good game?
3) Focus chamber size - For LED systems, you need both an LED and a lense to focus the beam. For laser tag guns, this can actually take quite a bit of volume. The choices above influce this but honestly I forget the relationships
== Protocol ==
This is the most important part! All of the physical signaling characteristics are important but the protocol defines what you can do with the system. Here, we ONLY care about the protocol between players. We DO NOT care about the protocol for joining games, reporting scores etc. The reason is that if two guns use the same protocol to interact, what the guns do in terms of software for responding to hits, etc, doesn't matter. The system will work.
There are a number of protocols here. The two that I recall are the system used by Phoenix LTX, LTTO, etc and MILES tag. Most professional systems like the military or laser tag areans use a varient of MILES tag. Both are covered by patents to some extent.
If a particular vendor chooses to not open source their equipment, fine. The protocol being open enough that people can make equipment is critical.
The protocol is usually completely independant of the phsysical signaling mechanism. The only typical issue is a limit on packet size. The longer your packet, the longer it takes to send. For fast signals like you can do with lasers at high frequency, it matters less then slow IR signals which take a substanital fraction of a second to send. A long packet means you literally have to point at the target for longer.
The two aspects the protocol usually need to cover are:
-- Who am I - Identify the sender. Toy systems usually skip this part and can't do meaningful scores in any way.
-- What did I do - Identify the action. This could be a 'shot' or an action like heal. It might contain extra data like 'damage' for a bomb or high impact function (sniper, rocket launcher). You want to explain what the sender did here. The receivers software gets to determine what to do with it. For example, the receiver can handicap themselves and take half damage. The sender can't know and laser tag protocols are one way!
Below my github repo (the C# part) covers the protocol and the blog explains how I reverse engineered it. The patent for LTX covers some aspects as well. Riley's work also found at least one bug in my reverse engineering and uncovered a few additional features.
-- For Planes --
The protocol choice determines interoperability and can make the difference between finding people to play with and not. The best part of the Pheonix guns was their low cost (25$ each when in stock) and the fact that they were made over a very long time frame by different manufacturers with the same protocol. All those guns work together because they use the same protocol. If two groups are making systems for planes but they don't share protocols, the only way to really get games going would be for clubs to buy sets of systems that everyone at the club can use.
== Software ==
While the protocol is the most important part, software makes up the rest of what makes it a game. It can make or break the experience. The nice part is that software doesn't have to be the same between systems for them to be compatible enough for a game.
The hosting system I made used features that were only available on some models of guns. But because those features were in the protocol, guns that couldn't 'start' a game in the same way could join and play.
The software gets to set all the rules for the game and can determine how each client acts. It enables new components to be built and participate in the game itself. Nerf came out with a new laser tag set a few years ago that had lots of new features for hosting games, adding pick ups etc.
The rules that make the most difference are:
1) What sort of damange can I do
2) When can I fire, ammo count, reload time, etc.
3) How much damage can I take, what changes that like Sheilds.
4) Who can do damage to me, is friendly fire on.
Some of the features that really make the whole system work well are not obvious. This came up as a limit in my hosting system. The software in the guns could join a game but the gun would pick a random identity for itself each time. That means once you finished a game, you didn't know what score was yours without looking at your gun itself. My hosting station could actually collect scores from each player but it didn't know who was who.
The features that are important are:
1) How does each player identify themselves? Is that identity persistant?
2) How do scores get communicated back. Some systems use IR to communicate scores back which means guns need to all point at the score keeping system and try to perform a complex system of commands for everyone to report who hit them, then get a score update of who they hit. It can be unreliable. The nice thing is, nothing requires this all to use the same system. The newer nerf kits use a different non-LOS wireless protocol for reporting scores.
3) What game modes are available.
Open source makes a big difference here in managing game modes and making sure everything plays by the same rules.
The other side of the software is the game management software that lets everyone setup, see scores, get stats, etc. This is usually easiest to do outside of the guns themselves. The LTTO guns have a tiny LED screen for this but the newer Nerf guns just use an Xbox to host and a custom peripheral to talk to all the guns.
-- For Planes --
It makes the most sense to set the player identity on the system that lives with a plane.
Game modes might give even more variety here then in regular laser tag. I could see things like:
* Shoot stationary targets
* Tag
* Team elimination
* Bombing runs
* Healing via low pass (ground based TX of 'heal' bullets in wide area)
* Follow me - How many hits can you get in 60 seconds?
== Hardware ==
There are four parts to think about here:
1) The TX light chamber
2) The RX receiver
3) The controller and any additional backchannel equipment
4) The player feedback mechanisms - buzzers, sound, lights
Some laser tag systems come completely self contained and some are very modular. The MILES tag system is very modular. You get to plug in different RX domes to ensure you can be hit from all angles. Those are usally just 3 IR RXs, one in each direction just soldered to a PCB.
The light chamber controls beam width for LED systems and fancy ones are adjustable. This determines beam focus and the amplifier cirut & focus determine range.
-- For Planes --
I could see flight controllers or OSDs taking over this long term but likely the easiest path forward is something like arduino which uses a single channel from the RX to determine when to fire. The rest of the game could exist on the laser tag hardware and use visual or other indicators of progress. A backchannel would be nice but I don't know what is possible with the existing data backchannels on telemetry systems. Otherwise you could use alternate backchannels via anything supported by arduino like zigbee or WIFI. Seems silly given the amount of TX/RX gear you are carrying otherwise but without integratino there it might still be the best option.
In game feedback could be as simple as two 'level' LEDs for Ammo/Life. The Phoenix guns do exactly this. Put those in front of the FPV system and you have a HUD For LOS systems, plane mounted LED strips make the most sense to just indicate 'hit'.
Honestly, don't touch the flight controls. That sounds like a bad idea. This hobby is hard enough
The light chamber is a good canidate for 3d printing. I couldn't get a good look at the system in the flite test video but it looks like they managed to make it pretty small. I would aim for short ranges and wide beam for good dogfights.
Existing laser tag equipment is heavy because you sometimes fall on it. 150lb person running full speed into a concrete wall with the equipment first means you need to be reasonably sturdy. Nothing requires it to be so though.
Receiver domes are usually carefully placed. The self-contained systems put them on the gun itself with the reasoning that if you can shoot, you should be able to get shot. While the intuition might be to place them on all sides of the player, it isn't needed! This is usually good enough.
== Resources ==
All my posts about it:
https://executedata.blogspot.com/search/label/lazertag
Open Source code & arduino wiring diagram for building your own game host:
https://github.com/afaucher/LazerTagHost
Fork created by Riley McArdle with a very nice hosting station:
http://www.lazerswarm.com/
https://github.com/astrospark/LazerTagHost
A friend created this for laser tag games. It has no lasers! You can incorporate objectives into the game without making the system more complicated.
https://github.com/Raptor007/PiBomb
Commercial efforts have different issues then non-commercial. Like everything, alot of patents dictate what you can and cannot do. The Phoenix LTX system does have a patent over the protocol itself. At least parts of MILES tag are covered as well.
There are four big parts of a laser tag system, physical signals, protocols, software and hardware.
== Physical Signal ==
First you have the physical signaling mechanism. Most systems use IR which is cheap, safe and invisible (more on that later). You can run into issues with the sun in some situations and you have choose frequency, power, filters and beam focus around this. Many varients of laser tag have a 'blast' function which really just reduces beam focus so you send the same signal to many players at once at reduces range.
Some systems use actual lasers in IR or other frequencies. Those are fantastic for range and noise cancelation but high cost and generally really finicky for picking out hits. A friend from the UW Electrical Engineering department built a laser based system and determined that while range was not an issue, the beam was so focused and the sensor so small that it would not be a good system for fast moving targets. The accuracy required to hit a sensor < 1cm was just too high. To contrast, the Phoneix guns with fresh batteries work up to 200 feet with a target size of a few feet in either direction at that range. Closer to the center of the beam, hits become more reliable. Aiming is critial but easier then handgun shooting.
One additional note on IR is that while IR is invisible to the naked eye, basically ANY camera has to actually fight to avoid picking it up. The FPV cameras we use come with or without IR filters for better night vision. They will ALSO pick up IR transmissions. When debugging my project I used a cheap webcam to actually watch packets get sent and ensure everything was what I expected. In the video they actually talked about not being sure where the beam was aimed. To calibrate laser tag guns, you mount them at a fixed point, draw a dot on the wall where your 'sight' points, then turn the IR beam on and look through a camera to see the beam on the wall. You can see the alignment and the intensity verus angular displacement with your own eyes. This should roughly match what you expect from the IR LED spec sheet:
https://cdn-shop.adafruit.com/datasheets/IR333_A_datasheet.pdf
In my github project I designed a simple arduino build that could power an IR LED. Almost all of the protocol was on the computer attached to the board and the board was just a passthrough to the LED. Not being an electrical engineer my board was really underpowered and there are better ways to power an IR led using a mosfet.
-- For Planes --
The big things to consider here are going to be:
1) Sun rejection - Planes hit all sorts of interesting angles that typical laser tag guns can ignore.
2) Enagement range, focus - What makes a good game?
3) Focus chamber size - For LED systems, you need both an LED and a lense to focus the beam. For laser tag guns, this can actually take quite a bit of volume. The choices above influce this but honestly I forget the relationships
== Protocol ==
This is the most important part! All of the physical signaling characteristics are important but the protocol defines what you can do with the system. Here, we ONLY care about the protocol between players. We DO NOT care about the protocol for joining games, reporting scores etc. The reason is that if two guns use the same protocol to interact, what the guns do in terms of software for responding to hits, etc, doesn't matter. The system will work.
There are a number of protocols here. The two that I recall are the system used by Phoenix LTX, LTTO, etc and MILES tag. Most professional systems like the military or laser tag areans use a varient of MILES tag. Both are covered by patents to some extent.
If a particular vendor chooses to not open source their equipment, fine. The protocol being open enough that people can make equipment is critical.
The protocol is usually completely independant of the phsysical signaling mechanism. The only typical issue is a limit on packet size. The longer your packet, the longer it takes to send. For fast signals like you can do with lasers at high frequency, it matters less then slow IR signals which take a substanital fraction of a second to send. A long packet means you literally have to point at the target for longer.
The two aspects the protocol usually need to cover are:
-- Who am I - Identify the sender. Toy systems usually skip this part and can't do meaningful scores in any way.
-- What did I do - Identify the action. This could be a 'shot' or an action like heal. It might contain extra data like 'damage' for a bomb or high impact function (sniper, rocket launcher). You want to explain what the sender did here. The receivers software gets to determine what to do with it. For example, the receiver can handicap themselves and take half damage. The sender can't know and laser tag protocols are one way!
Below my github repo (the C# part) covers the protocol and the blog explains how I reverse engineered it. The patent for LTX covers some aspects as well. Riley's work also found at least one bug in my reverse engineering and uncovered a few additional features.
-- For Planes --
The protocol choice determines interoperability and can make the difference between finding people to play with and not. The best part of the Pheonix guns was their low cost (25$ each when in stock) and the fact that they were made over a very long time frame by different manufacturers with the same protocol. All those guns work together because they use the same protocol. If two groups are making systems for planes but they don't share protocols, the only way to really get games going would be for clubs to buy sets of systems that everyone at the club can use.
== Software ==
While the protocol is the most important part, software makes up the rest of what makes it a game. It can make or break the experience. The nice part is that software doesn't have to be the same between systems for them to be compatible enough for a game.
The hosting system I made used features that were only available on some models of guns. But because those features were in the protocol, guns that couldn't 'start' a game in the same way could join and play.
The software gets to set all the rules for the game and can determine how each client acts. It enables new components to be built and participate in the game itself. Nerf came out with a new laser tag set a few years ago that had lots of new features for hosting games, adding pick ups etc.
The rules that make the most difference are:
1) What sort of damange can I do
2) When can I fire, ammo count, reload time, etc.
3) How much damage can I take, what changes that like Sheilds.
4) Who can do damage to me, is friendly fire on.
Some of the features that really make the whole system work well are not obvious. This came up as a limit in my hosting system. The software in the guns could join a game but the gun would pick a random identity for itself each time. That means once you finished a game, you didn't know what score was yours without looking at your gun itself. My hosting station could actually collect scores from each player but it didn't know who was who.
The features that are important are:
1) How does each player identify themselves? Is that identity persistant?
2) How do scores get communicated back. Some systems use IR to communicate scores back which means guns need to all point at the score keeping system and try to perform a complex system of commands for everyone to report who hit them, then get a score update of who they hit. It can be unreliable. The nice thing is, nothing requires this all to use the same system. The newer nerf kits use a different non-LOS wireless protocol for reporting scores.
3) What game modes are available.
Open source makes a big difference here in managing game modes and making sure everything plays by the same rules.
The other side of the software is the game management software that lets everyone setup, see scores, get stats, etc. This is usually easiest to do outside of the guns themselves. The LTTO guns have a tiny LED screen for this but the newer Nerf guns just use an Xbox to host and a custom peripheral to talk to all the guns.
-- For Planes --
It makes the most sense to set the player identity on the system that lives with a plane.
Game modes might give even more variety here then in regular laser tag. I could see things like:
* Shoot stationary targets
* Tag
* Team elimination
* Bombing runs
* Healing via low pass (ground based TX of 'heal' bullets in wide area)
* Follow me - How many hits can you get in 60 seconds?
== Hardware ==
There are four parts to think about here:
1) The TX light chamber
2) The RX receiver
3) The controller and any additional backchannel equipment
4) The player feedback mechanisms - buzzers, sound, lights
Some laser tag systems come completely self contained and some are very modular. The MILES tag system is very modular. You get to plug in different RX domes to ensure you can be hit from all angles. Those are usally just 3 IR RXs, one in each direction just soldered to a PCB.
The light chamber controls beam width for LED systems and fancy ones are adjustable. This determines beam focus and the amplifier cirut & focus determine range.
-- For Planes --
I could see flight controllers or OSDs taking over this long term but likely the easiest path forward is something like arduino which uses a single channel from the RX to determine when to fire. The rest of the game could exist on the laser tag hardware and use visual or other indicators of progress. A backchannel would be nice but I don't know what is possible with the existing data backchannels on telemetry systems. Otherwise you could use alternate backchannels via anything supported by arduino like zigbee or WIFI. Seems silly given the amount of TX/RX gear you are carrying otherwise but without integratino there it might still be the best option.
In game feedback could be as simple as two 'level' LEDs for Ammo/Life. The Phoenix guns do exactly this. Put those in front of the FPV system and you have a HUD For LOS systems, plane mounted LED strips make the most sense to just indicate 'hit'.
Honestly, don't touch the flight controls. That sounds like a bad idea. This hobby is hard enough
The light chamber is a good canidate for 3d printing. I couldn't get a good look at the system in the flite test video but it looks like they managed to make it pretty small. I would aim for short ranges and wide beam for good dogfights.
Existing laser tag equipment is heavy because you sometimes fall on it. 150lb person running full speed into a concrete wall with the equipment first means you need to be reasonably sturdy. Nothing requires it to be so though.
Receiver domes are usually carefully placed. The self-contained systems put them on the gun itself with the reasoning that if you can shoot, you should be able to get shot. While the intuition might be to place them on all sides of the player, it isn't needed! This is usually good enough.
== Resources ==
All my posts about it:
https://executedata.blogspot.com/search/label/lazertag
Open Source code & arduino wiring diagram for building your own game host:
https://github.com/afaucher/LazerTagHost
Fork created by Riley McArdle with a very nice hosting station:
http://www.lazerswarm.com/
https://github.com/astrospark/LazerTagHost
A friend created this for laser tag games. It has no lasers! You can incorporate objectives into the game without making the system more complicated.
https://github.com/Raptor007/PiBomb