First steps with the ODROID-GO

2 minute read

A few days before Christmas I read an article on Golem.de about a kit for a retro console in Gameboy style. Since my Gameboy probably laid the foundation for my current technical enthusiasm, I ordered three of them. Of course I bought one for myself. The other two I bought as a present for two family members (boys, 11 and 14 years old). I planned to introduce them to software development in a playful way and the ODROID-GO seemed to be perfect for that as it is ideally suited for two application scenarios:

  • as a retro game console in the style of a Gameboy, the ODROID-GO is great for games. Emulators for the Nintendo Entertainment System, Nintento GameBoy, Nintendo GameBoy Color, Sega Master System, Sega Game Gear and ColecoVison have been preinstalled for this purpose.
  • it is realized as a programmable platform that invites you to do your own programming experiments. The core is an ESP32 controller with 80MHz to 240MHz, which can access 4MB RAM. The output takes place on a 320×240 TFT LCD display. Access to the outside world is also possible – WIFI, Bluetooth and an expansion port with 10 pins are available.

Assembly and use as a console

Based on the comprehensive construction manual, assembling the ODROID-GO was relatively simple. The only tool required is a small Phillips screwdriver. You don’t need a soldering iron. The whole process is done in about 15 minutes

Immediately after assembly, the console can be used to run old games via emulator. All you have to do is prepare a micro SD card with the desired ROMs. This setup is done in 5 minutes and does not require any further computer knowledge. Playing on the console is really fun. I spent a lot of time with the Gameboy emulator, which immediately awakened pleasant childhood memories in me.

Programming

Using it as a programming environment is definitely more difficult. The description of installing the Arduino IDE and setting up the necessary extensions is spread over several wiki pages. Some installation steps require handling the command line. The description of some work steps is poor, which might be an obstacle for children and teenagers who want to face this task without help. For experienced users, the first source code should be compiled and installed on the ODROID-GO after about an hour.

Picture of an ODROID-GO showing text

Seeing the first “Hello, World!” on the small screen is very motivating. Further examples demonstrate the most important technical features of the platform. As briefly mentioned, the ODROID offers much more technology than a real Gameboy.

Component Description
MCU Custom ESP32 with 16 MB Flash
CPU & RAM 80MHz – 240MHz, 4MB RAM
Wi-Fi 802.11 b/g/n
Bluetooth Bluetooth v4.2
Display 2.4inch 320×240 TFT LCD
Battery Li-Polymer 3.7V/1200mA
Speaker 0.5 Watt 8Ω Mono
Micro SD card slot 20 Mhz SPI interface
Micro USB port For Battery charging and data communication
Expansion Port 10Pin port
Input Buttons Menu, Volume, Select, Start, A, B, Direction Pad

But own experiments are complicated by the missing documentation of the ODROID library – if it exists, at least I haven’t found it yet.

Restoring the emulators

If you want to use the ODROID-GO as a game console again after the first programming attempts, you have to replace your own program with the original firmware. This procedure is described in the Wiki in detail and with good screenshots.