ODROID-GO Game Kit: A Handheld Gaming Console To Celebrate Hardkernel’s 10th Anniversary

Hardkernel was founded in 2008 and ODROID (Open-Droid) reached the ten year mark as of 2018. To celebrate ODROID’s 10th anniversary, we present the ODROID-GO Game Kit.

When we designed the ODROID device, we thought of three basic slogans:

  • Of the developers, By the developers, For the developers
  • Fun and interesting devices for developers
  • Development board in pocket (to go!)

Figure 1 - The original ODROID development device from 2008

ODROID-GO includes a special anniversary board and all the additional parts to put together your own game kit and see the workings behind such a device. It is not only a fun assembly project but also an educational tool to learn about all the hardware and software that goes into building such a device.

Figure 2 - The shape was very similar to our SHOW2 board, but it had a separate joypad board

The small and cheap Arduino MCU ESP32 performance was very good to run NES, GBC and SMS emulators amazingly, but the sandwich style was not good to play games over a couple of hours. The stacked PCB was inconvenient and cannot hold for a long time. We couldn't put it into our back pocket either. So, we had to abandon the first design and constructed a plastic mould design with more sleek and comfortable shape from the scratch again.

Figure 3 - A Li-Ion 18650 battery could be installed to the rear side

Figure 4 - It looked like a sandwich, so the thickness was too tough

Finally, we arrived at the current design. We call it ODROID-GO. Now we can put this nice development board in our back pocket and play with it everywhere.

Figure 5 - The ODROID-GO celebrates Hardkernel's 10th Anniversary

Assembly and learning

Have fun building your own handheld game kit while learning about the internal functions of each part and its purpose. Learn how each button is attached to a PCB switch pad, what materials are used, and how to put it all together to create a button control pad to play games. Learn how to connect power, speakers and how to download and install an OS. Learn why certain pieces are made of particular materials and why you need certain connectors. Since the device is clear, all the internal components and all the lights are visible. Once you have assembled the ODROID-GO, you can download and install games. Enjoy your gaming device that you built!

Included parts

  • A. 1x ODROID-GO board
  • B. 1x Front enclosure
  • C. 1x Back enclosure
  • D. 1x 2.4 inch LCD module
  • E. 1x 4 button rubber
  • F. 1x 2 button rubber
  • G. 2x 2 button rubber
  • H. 1x 8Ohm 0.5W speaker
  • I. 1x 10pin male header
  • J. 10x screws
  • K. 1x LCD window
  • L. 1x button set
  • M. 1x Micro USB cable
  • N. 1x 1200mAh Li-ion battery

Figure 6 - Parts included in the ODROID-GO kit

Information on assembly and learning can be found at https://wiki.odroid.com/odroid_go/go_assembling.

Ready to play

Make a microSD card with your own game collections. Details can be found at: https://wiki.odroid.com/odroid_go/emulator/make_sd_for_importing_roms. The emulator supports games such as:

  • Game Boy
  • Game Boy Color
  • Game Gear
  • Nintendo Entertainment System
  • Sega Master System

Figure 7 - ODROID-GO front view

Figure 8 - ODROID-GO back view


  • MCU Custom ESP32-WROVER(16MiB Flash Memory)
  • CPU & RAM 80MHz - 240MHz(Adjustable), 4MB PSRAM
  • Display 2.4inch 320×240 TFT LCD (SPI interface)
  • Battery Li-Polymer 3.7V/1200mAh, Up to 10 hours of continuous game playing time
  • Speaker 0.5W/ 8Ω Mono
  • mSD card slot 20Mhz SPI interface
  • Expansion Port 10Pin port : I2C, GPIO, IRQ at 3.3Volt
  • Input Buttons Menu, Volume, Select, Start, A, B and Direction Pad
  • Micro USB port Battery charging(500mA) and USB-UART data communication
  • Size 76mm x 121mm x 16mm(assembled)

Figure 9 - ODROID-GO block diagram

Figure 10 - ODROID-GO PCB showing board details

For a video of the ODROID-GO in action, please visit https://youtu.be/1kQ79ytZKJA.

Arduino Coding Camp with ODROID-GO

The following Coding Camp articles will be individually presented over the next few months in ODROID Magazine, so that beginning programmers can get easily started with development by using the ODROID-GO as a learning tool.

Day 1: Getting Started with Arduino

Download and install Arduino IDE and ODROID-GO specific libraries and examples.

Day 2: Display “Hello, ODROID-GO” on the LCD

Let us learn how to display a string, change colors and change font size.

Day 3: Control LED

Let us learn how to control the blue LED on ODROID-GO front side: tinkering the LED with simple GPIO on/off as well as 256-steps brightness control with PWM.

Day 4: Read the 12 buttons status on the ODROID-GO

Let us learn how to read the GPIO pin status.

Day 5: Read the ODROID-GO built-in battery voltage

Let us learn how to access the ADC input to measure the voltage.

Day 6: Generate sound from ODROID-GO speaker

Let us learn how to use the DAC output as a sound tone generator.

Day 7: Play your own Tetris game

Let us learn how to make a game with a Tetris game example code.

Day 8: Add another LCD display

Let us learn how to use I2C interface on the ODROID-GO IO expansion port.

Day 9: Make a portable handheld weather station

Let us learn how to access various weather data and share it with your mobile devices via WiFi connectivity. Note that the Weather Board 2 is additionally required.

Day 10: Measure the distance with Ultrasonic

Let us learn how to use GPIO output, IRQ input and system timer with a Ultrasonic distance measuring module. Note that the distance sensor is additionally required.

Day 11: Control the LED from your smartphone via WiFi

Let us build a WiFi AP mode web server to blink a LED from your web browser remotely.

Day 12: Serial communication over Bluetooth

Let us make a connection bridge to your smartphone over Bluetooth RFCOMM protocol stack.

Be the first to comment

Leave a Reply