ESP8266 Arduboys

19 Apr 2017
Submitted by themaker

Have you seen the ArduBoy? This thing is really cool! A thin tiny game system. Based on Arduino and programmed via the Arduino IDE. There are quite a few games developed for it. And a lot of them are really great fun. The software running these is open source and easily modified. Given that I want to build my own stuff I decided to take a stab at getting the system to run on the arduino compatible esp8266. 

The esp8266 is an amazing little system on a chip package. Mainly designed for iot projects that need wifi, it also supports a few GPIO pins and a pretty decent amount of memory. These specs make it perfect for use as a step in replacement for the arduino. Plus changing to this system, I get the advantage of a lot more rom space. This extra space I took advantage of later. 

First thing was to get the arduboy platform running on the esp8266. There was only a few modifications needed to be made to the system. It was pretty simple to get this changed over. I'll get the code posted to github. 

With the code working on the platform. I built out 2 different handhelds. One vertical and one horizontal. Using a 600mah battery on them I think I figured they might get upwards of 20hrs or more. I figured it would be cool to have a system in your coat you can pull out and play and not worry the battery is dead. 

The build is pretty straight forward, wire the buttons to tact switches. Controlled from the gpio. A battery charger setup to control the power. This left us with a program port and a charge port on the case.

So with all that extra space, I decided to build out a menu system for multi game loading. The original system only supported one game at a time. I wanted to be able to play more on the go. I was able to make a pretty simple method for adding games to the menu thru a few code adjustments. Then you can load up as many games as it will fit. Picking one to play from the menu.

With the conversion to a different platform, some games had some issues. I had to adjust the code on quite a few of them to get them to compile. Some things range from very minor removal of avr headers. Some removal of progmem. And some others were a lot more complex. But usually I was able to get them to run. With the exception of Team ARG games. I was able to get their adjusted library to work except when they had the transparent image support. I haven't been able to figure out how to get that code converted yet. If anyone knows that would be helpful!

Running arduboy on the esp8266 works pretty great! Theres some minor issues but most are addressable. And the extra memory and menu loader support pretty awesome.

Project type