Along with some other guys from Maidstone Hackspace we have started work on a LaserTag project. I seem to have made the most progress so far and the prototype below is as far as I have got.
The ‘gun’ has an IR LED which is used to transmit the ‘laser’ beam to the enemy. The IR LED sends out a short packet of data which includes the team, player ID and weapon damage plus checksums. At the receiving end the player will wear IR receivers which, when aimed correctly, will pick up the data packet and interpret it as a ‘hit’ reducing the players health by a set amount.
So far the data packet consists of 16 bits like this:
There are 5 checksum bits, 2 bits for the Team ID, 5 bits for the Player ID and 4 bits for the damage (using a lookup table).
This configuration gives 4 teams, 32 players per team and damage from 1 to 100.
I have found that the 5 bits for the checksum is not enough as errors still creep in when the beam is interrupted so I will no doubt have to increase this to 16 bits to ensure the transmissions are totally error free.
The circuit consists of an IR LED to transmit the data packets, a muzzle flash LED, a trigger button, a reload button (not connected yet), a piezo buzzer for basic sounds, a 16×2 LCD display for information and the main processor being used is a Teensy 3.2. The idea is that later more advanced options such as colour TFT displays and MP3 players will be added and the extra processing power of the Teensy will assist with this.
When the unit is fired up the player picks a team and a player ID and then the game starts. The gun has charges (magazines) and rounds. Default is 250 rounds per charge and 10 charges. These settings can be configured at the game start.
Later a radio module will be added to the guns to allow data transfer. This will allow one gun to act as a server to configure the game settings and the other guns to act as clients. Also live game data can be streamed back to a referee station. This will also allow all kinds of advanced game controls and types such as capture the flag, elimination, free for all, all vs all, king of the hill, etc.
This is a work in progress and only in the early stages so far so watch this space for further updates. I will post videos on my YouTube channel about this project from time to time also.