https://youtu.be/ub5exsFBzhAWith the use of ESP8266s and small robotics platform I am giving control of small robots to twitch chat. The ESP8266 connects to the IRC twitch chat channel and looks for commands. When a command is found the ESP8266 sends a serial command to an Arduino Pro Mini which controls the robot. The bots have hammers attached to micro servos that they use to hit targets on the other robot. The robots have a health system that shows their health on stream. Twitch's new low latency mode finally allows for such interactive elements to become viable. https://www.twitch.tv/theotherlonestar Thanks to Nate Damon and his AtlTVhead project which was the springboard for this project.
The channel is starting to attract some interest. The battles are getting to be more fun since I'm not controlling either robot. Here is a clip of some new viewers going at it. Also, I'm trying out some new arena designs. It has to be able to be taken apart for easy storage between streams yet tough enough to not get thrown around. I may have to add a floor that attaches to the walls. Still working on it.
I've added a cute hammer, a body, and a panel that registers when hit. I have the code setup so that it will register a hit even if it is in the middle of a command. 2 way communication is working so that the Arduino pro mini talks to the ESP8266 which can talk to twitch chat. I had an issue that the robot would sometimes fall backwards and get stuck on it's back when it hit something tall. I fixed this by setting the hammer to return in a position that rights it self the right way up. Works great. Now if it falls on it's back it gets back up.
i'd love to add a wireless camera to the bots so the audience can experience a view from the bot. Not sure how to do this. Replace the Arduino pro mini with a Pi Zero W and a Pi Cam? Get a couple defunct cell phones and install the New Tek NDI app? This is something to think about.
The robot is coming along nicely. The next step is to design and 3D print a shroud with targets that can be hit during battle. I think the robots will work off an HP system where they need to be hit a certain number of times for the match to end. I'll add a Graphic interface to the live stream to show how much health each robot has left. I've designed a mount for a micro servo that should work well for the weapon arm. I'm thinking comically large hammers should work nicely. Because of the ease in mounting things to the zumo platform it should be easy to swap weapons out.