I needed to travel across the country for a week, but didn’t want to halt progress on the laser tag project. I removed the hardware from the NERF tagger and packed it. The NERF unit had a miswired USB cable, which I fixed. However, the latest code caused the microcontroller to start bootlooping. I mounted the hardware on an aluminum strip sized similarly to NERF rail, cut it to size, and packed it. I also took the pipe tagger, hoping TSA would not confiscate it.
I resolved the bootlooping issue by identifying and removing the problematic code. After testing with a second microcontroller and uploading the code without the infrared functions, I realized I could prevent future bootloading issues by adding a check for credential validity.
I added a check in the setup() function to ensure that the team, serial, and damage settings were set to reasonable levels, allowing the program to boot even if they were not initially configured. I incorporated a Help Menu accessible via the remote, and I aligned team buttons so that each button press directly corresponds to a team assignment. Additionally, I replaced the On/Off backlight function with an adjustable analog value for better brightness control, and I created a function to toggle screen feedback with the remote. I also added six buttons to change hit points or time in the games, with the tagger displaying updated values accordingly. Lastly, while experimenting with a button to change the LED shape was cool, it occasionally caused the microcontroller to reset, and I decided to set that issue aside for now.
I improved the weapon selection on the remote by programming the AUX button to cycle through options while displaying cooldown and damage values. I added button functions to decrease or refill a player's health, anticipating future healing stations for respawns. The "No Teams" button assigned each tagger a unique team, preventing friendly fire, while the "Diagnostic" button eliminated the countdown for testing gameplay modes. Finally, I replaced the problematic LED Shape feature with an adjustable LED brightness function and programmed a low-power mode.
I addressed several minor issues from my improvement list, including adding a sticker to the remote to prevent it from blending into dark surfaces and fixing an "off by one" error in the weapon selection code. A significant problem arose when the "Go Nuts!" setting automatically rolled over into a "Timed Game," which I traced back to a double-pasted code error that ignored the intended function. After correcting the code, the buttons worked as expected.
Todd Vicino joined us on Critical Affection to promote his latest issue of Power Broker and selected the 1984 classic, Ghostbusters, for discussion. While we acknowledged the film's problematic elements due to its time period, we shared diverse opinions and invented solutions to make it more wholesome, also exploring other franchise media, such as cartoons, sequels, and spin-offs.
The rest of the summary posts have been arranged by date.
First time here?
Completed projects from year 1
Completed projects from year 2
Completed projects from year 3
Completed projects from year 4
Completed projects from year 5
Completed projects from year 6
Completed projects from year 7
Completed projects from year 8
Completed projects from year 9
Completed projects from year 10
Completed projects from year 11
Completed projects from year 12
Disclaimer for http://24hourengineer.blogspot.com and 24HourEngineer.com
This disclaimer must be intact and whole. This disclaimer must be included if a project is distributed.
All information on this blog, or linked by this blog, is not to be taken as advice or solicitation. Anyone attempting to replicate, in whole or in part, is responsible for the outcome and procedure. Any loss of functionality, money, property, or similar, is the responsibility of those involved in the replication.
All digital communication regarding the email address 24hourengineer@gmail.com becomes the intellectual property of Brian McEvoy. Any information contained within these messages may be distributed or retained at the discretion of Brian McEvoy. Any email sent to this address, or any email account owned by Brian McEvoy, cannot be used to claim property or assets.
Comments to the blog may be utilized or erased at the discretion of the owner. No one posting may claim property or assets based on their post.
This blog, including pictures and text, is copyright to Brian McEvoy.
![]() |
| Mounted on an aluminum rail instead of a NERF gun |
I resolved the bootlooping issue by identifying and removing the problematic code. After testing with a second microcontroller and uploading the code without the infrared functions, I realized I could prevent future bootloading issues by adding a check for credential validity.
![]() |
| Both microcontrollers running the latest code without bootlooping |
I added a check in the setup() function to ensure that the team, serial, and damage settings were set to reasonable levels, allowing the program to boot even if they were not initially configured. I incorporated a Help Menu accessible via the remote, and I aligned team buttons so that each button press directly corresponds to a team assignment. Additionally, I replaced the On/Off backlight function with an adjustable analog value for better brightness control, and I created a function to toggle screen feedback with the remote. I also added six buttons to change hit points or time in the games, with the tagger displaying updated values accordingly. Lastly, while experimenting with a button to change the LED shape was cool, it occasionally caused the microcontroller to reset, and I decided to set that issue aside for now.
![]() |
| Weapon selection with parameters |
I improved the weapon selection on the remote by programming the AUX button to cycle through options while displaying cooldown and damage values. I added button functions to decrease or refill a player's health, anticipating future healing stations for respawns. The "No Teams" button assigned each tagger a unique team, preventing friendly fire, while the "Diagnostic" button eliminated the countdown for testing gameplay modes. Finally, I replaced the problematic LED Shape feature with an adjustable LED brightness function and programmed a low-power mode.
![]() |
| Low power mode if-else statement |
I addressed several minor issues from my improvement list, including adding a sticker to the remote to prevent it from blending into dark surfaces and fixing an "off by one" error in the weapon selection code. A significant problem arose when the "Go Nuts!" setting automatically rolled over into a "Timed Game," which I traced back to a double-pasted code error that ignored the intended function. After correcting the code, the buttons worked as expected.
![]() |
| I can select all the game modes |
Todd Vicino joined us on Critical Affection to promote his latest issue of Power Broker and selected the 1984 classic, Ghostbusters, for discussion. While we acknowledged the film's problematic elements due to its time period, we shared diverse opinions and invented solutions to make it more wholesome, also exploring other franchise media, such as cartoons, sequels, and spin-offs.
Critical Affection: Ghostbusters (1:20)
The rest of the summary posts have been arranged by date.
First time here?
Completed projects from year 1
Completed projects from year 2
Completed projects from year 3
Completed projects from year 4
Completed projects from year 5
Completed projects from year 6
Completed projects from year 7
Completed projects from year 8
Completed projects from year 9
Completed projects from year 10
Completed projects from year 11
Completed projects from year 12
Disclaimer for http://24hourengineer.blogspot.com and 24HourEngineer.com
This disclaimer must be intact and whole. This disclaimer must be included if a project is distributed.
All information on this blog, or linked by this blog, is not to be taken as advice or solicitation. Anyone attempting to replicate, in whole or in part, is responsible for the outcome and procedure. Any loss of functionality, money, property, or similar, is the responsibility of those involved in the replication.
All digital communication regarding the email address 24hourengineer@gmail.com becomes the intellectual property of Brian McEvoy. Any information contained within these messages may be distributed or retained at the discretion of Brian McEvoy. Any email sent to this address, or any email account owned by Brian McEvoy, cannot be used to claim property or assets.
Comments to the blog may be utilized or erased at the discretion of the owner. No one posting may claim property or assets based on their post.
This blog, including pictures and text, is copyright to Brian McEvoy.





Comments
Post a Comment