The Arnold Classic 2018: A place for those with a passion for sport, fitness, and an overall desire to challenge themselves, compete, and ultimately be blessed with the eternal spoils of victory after an arduous two-and-a-half days of pushing their bodies and minds to their absolute limits.
Enter IDX, what challenge faces the mighty IDX you ask? Will we deadlift four hundred kilograms worth of ice-cold steel, and prove ourselves stronger than a ‘mountain’? Will we sprint that one-hundred-meter sprint faster than a ‘bolt’ of lightning? Will we outplay the E-Sport community to be crowned the ultimate gamers in the land?
Well… not quite, but we did create an awesome solution for managing the chess timers in the Big Chess School tournament, using some cutting-edge technology, including but not limited to:
- Raspberry PI Model B is our hardware platform running Raspbian Stretch
- Node as our underlying server
- Node-Red to handle the Raspberry PI’s GPIO
- MQTT to handle message transmission to and from the web server and its client’s
- Javascript/ReactJs for the user interface.
The Raspberry PI plugged into the impressive “PI, Modbus PSU & IO Interface” developed by our friends over at Danntech, this was placed inside of a giant chess queen supplied by Big Chess. Which housed and powered the PI as well as some sparkly lights and buttons that the school kids would be smashing to start and stop their timers:
The requirement was to have three of these rigs all running in parallel so that multiple games could proceed at once, we had a web server running on a laptop mounted to the bottom of one of the screens, this laptop also hosted the MQTT broker.
Each Raspberry Pi had a Node-Red setup which would interpret the GPIO values and publish them to any subscribers, the subscribers were defined in ReactJs using the IDs of the TVs or a special admin ID used by a separate device for sending the team logos to each screen, when a message was received by a subscriber the Raspberry Pi would know what it needed to do:
start, pause, resume, reset, or change team logos.
Our overall setup looked like this:
The little Raspberry Pi devices held strong for their full two and a half days of competing, without a single report of delays or crashes. with that in mind, I think it’s fair to say that Raspberry PI Model B with Node, Node-Red, MQTT, Javascript and ReactJs as your support, you are the true champion of this event.