The software subsystem is responsible for handling the logic of the laser tag game.
LOGIC OUTLINE
The left two images show two pages that the user would see on the Raspberry Pi smart hub. The tp[ is the main page, and the bottom is the Bomb-Defusion game mode. A full video run-through is to the right of that. We chose to use PyQt5 for its intuitive nature and feature-rich libraries. Moreover, it's lightweight enough to run on the Raspberry Pi and allows us to integrate our LORA receiver backend with the UI easily. Its compatibility with both MacOS and Windows also allowed us to test UI functionality on our personal computers, which expedited development. Our greatest challenge with the smart hub was creating a working LORA receiver, as tools such as minicom did not work well with our chosen LORA module.
The images below show SW logic flow diagrams we created to define the logic for our glove (left) and vest (right). Both our glove and vest are written in Arduino C, which is simple, lightweight, and easy to debug. Our greatest challenge was ensuring our LORAs worked consistently, as messages would sometimes fail to send or send corrupted.