TASER GAME

Kombination af paintball og laser tag — reelle konsekvenser, intet svineri.

Combining paintball and laser tag — real consequences, zero mess.

FreeRTOS  ·  ESP-NOW  ·  Custom PCB  ·  Li-ion

← Tilbage til projekter ← Back to Projects

Prototype Demo & Gennemgang Prototype Demo & Walkthrough

🔊 Videoen afspilles automatisk uden lyd. Klik på højttaleren for at slå lyden til.

🔊 Video demonstration in Danish only. Click the speaker icon to enable audio.

Problemet The Problem

Kløften mellem Laser Tag og Paintball er for stor. Der er brug for en mellemvej, hvor risikoen for at komme til skade er nul, men risikoen for at mærke smerte er reel. Paintball er meget medrivende, fordi konsekvenserne af at blive ramt er meget håndgribelige. Men at blive ramt i halsen efterlader mærker i dagevis, og hele oplevelsen er noget værre griseri, der skal foregå i et dedikeret snavset område, og ens sko kan lige så godt ryge direkte i vaskemaskinen bagefter. En anden ulempe ved Paintball er manglen på statistik efter spillet. Ingen ved, hvem der har ramt hvem, eller hvem der klarede sig bedst.

The gap between Laser Tag and Paintball is too large. There needs to be a middleground, where the risk of getting hurt is zero, but risk of feeling pain is large. Paintball is very immersive because the consequences of getting hit are very real and tangible. However, getting hit in the neck leaves marks for days and the whole shenanigans is a mess that must be performed in a dedicated dirty space and your shoes might as well go directly in the washing machine when you return. Another drawback of Paintball is lack of statistics for a paintball game. Nobody knows who has hit who or who did best.

Hypotesen The Hypothesis

Problemet virkede simpelt at løse: Byg et standard IR LED + modtager-system med en ESP32, og tilføj et stødkredsløb reverse engineered fra et generisk stødhalsbånd. Jeg brugte et hjemmebygget hobby-lasertag-system bygget af en kammerat som udgangspunkt og købte tilsvarende komponenter til den første 2-pistolers prototype for at teste IR-kommunikationen.

The problem seemed simple to solve: Just build a common IR LED + receiver system with an esp32 and add a shock circuit reverse engineered from a generic shock collar. I used a custom hobby laser tag system built by a peer as the baseline and bought similar components for the first 2-pistol prototype in order to test the IR communication.

Iterationslog Iteration Log

V1 V1

Efter to-pistolers prototypen virkede, samlede jeg 8 mere og tilføjede en master-ESP32 til periodisk at spørge hver pistol om dens HitData for at samle ét sandt scoreboard baseret udelukkende på IR-træfferne. Dette betyder, at tabte WiFi-pakker aldrig bliver et problem. Hvis en pistol er uden for rækkevidde af masteren, opdateres scoreboardet blot ikke med den pistols data, før den er inden for rækkevidde igen. På denne måde er IR altid sandheden. Der mistes ALTID liv (HP), uanset om træf-bekræftelsen når frem til skytten eller ej. Det første sæt med 10 pistoler anvender hardcodede master/slave MAC-adresser for simpelhedens skyld i koden. Selvom det med succes demonstrerede kernemekanikken i IR-træfregistrering og ESP-NOW kommunikation, er det ikke en skalerbar løsning, da udskiftning af én enhed betyder, at alle andre enheder skal omprogrammeres.

After the two-pistol prototype worked, i assembled 8 more and added a master esp32 to periodically ask each pistol for its HitData to assemble a single true scoreboard based on only the IR hits. This means lost wifi packets never becomes a problem. If one pistol is outside range from the master, then the scoreboard is simply not updated with that pistols information until it returns in range. In this way the IR is always the truth. HP is ALWAYS lost regardless of the hitconfirmation reaching the shooter or not. The first 10 pistol set utilizes hardcoded master/slave MAC-addresses for simplified code. While it successfully demonstrated the core mechanics of IR hit detection and ESP-NOW communication, it is not a scalable solution as replacing one device means all other devices must be reprogrammed.

Derudover tog jeg det første sæt med ud til lasertag-centeret VRGame i Nørresundby. Ejeren var meget imponeret over prototypen og udtrykte, at det tilføjede stødkredsløb er et unikt og værdifuldt koncept. Ejeren forklarede også de udfordringer, de har med deres eksisterende system, såsom manuelt at tænde alle pistoler og forbinde dem — hvilket gav værdifuld indsigt i den vigtige driftmæssige hverdag for en center-ejer. Ejeren fortalte mig, at for at han ville overveje et system som mit, skulle det bestå af fysisk større og mere robuste pistoler. Brugerne passer ikke særligt godt på hardwaren, så det skal kunne tåle tæsk.

Additionally, i took the first set to the laser tag venue VRGame in Nørresundby. The owner was very impressed with the prototype and expressed that the added shock circuit is a unique and valuable proposition. The owner also explained the hurdles they have with their existing system such as manually turning all pistols on and connecting them - providing valuable insight into the important "everyday" convenience perspective of the venue owner. The owner told me that, in order for him to consider a system such as mine, it had to consist of physically larger and more robust pistols. The users are not very caring of the hardware and thus it needs to be able to take a beating.

V2 V2

Den anden iteration introducerede en dynamisk, ikke-hardcodet master/slave arkitektur. Vi implementerede dynamisk parring, hvor masteren dynamisk kunne broadcaste og polle slaves, og dermed håndtere aktive spillere uden hardcodede MAC-adresser. Derudover skaffede vi større legetøjspistoler med tilføjet vibrationsfeedback-motorstyring og skiftede til et printkort (PCB) til switching-kredsløbene i stedet for manuelt loddede komponenter. Temaet for anden iteration var skalerbarhed og holdbarhed. Helt specifikt fokus på at reducere komponentantal, reducere manuelt arbejde og bygge pistolen til at overleve hårdhændet brug.

The Second iteration introduced a non-hardcoded master/slave architecture. We implemented dynamic pairing where the master could dynamically broadcast and poll slaves, managing active players without hardcoded MAC addresses. Additionally, we sourced larger toy pistols with added vibration feedback motor control and switched to a PCB for the switching circuits instead of manually soldered components. The theme of the second iteration was scalability and durability. Specifically a focus on reducing component count, reducing manual labor and building the pistol to survive violent use.

Væsentlige ændringer omfatter:

Major changes include:

Teknisk opbygning Technical Build

Hardware Arkitektur Hardware Architecture

Elektronik & PCB Electronics & PCB

Embedded Software — RTOS Embedded Software — RTOS

Tablet UI Tablet UI

Tidsforbrug Time Investment

FaseTimer (ca.)
Research & Systemarkitektur50
Manuel samling v130
PCB design & samling v220
Embedded softwareudvikling v1 og v240
I alt140
PhaseHours (approx)
Research & System architecture50
Manual assembly v130
PCB design & assembly v220
Embedded software development v1 and v240
Total140

Brugervalidering User Validation

V1-sættet blev testet med et gymnastikhold for at evaluere stødstyrke, brugervenlighed og gamemode-logik. Testen gav følgende feedback fra brugerne:

The v1 set was tested with a gymnastics team to evaluate the shock magnitude, ease of use and game mode logic. The test yielded the following feedback from the users:

Erfaringer gjort Lessons Learned

Manuel samling og ombygning tog langt mere tid end forventet -> Mange timer kan spares ved at designe et printkort (PCB) tidligere og planlægge efter færrest mulige fysiske ændringer, når man ombygger et eksisterende produkt.

Manual assembly and retrofitting took much more time than anticipated -> Many hours can be saved by designing a PCB earlier and planning for least possible amount of physical change when retrofitting an existing product.