Introduction: Pocket Chess

About: High school student making things.

It's chess! In your pocket.

This project aims to create a small device that can run small games like snake, pac-man, tetris and even chess.


- 1.3" 128x64 OLED graphic display

- Arduino Pro Mini (You can use both 5V and 3.3V modules. 3.3V one will be easier to use while 5V one is faster)

- Tactile Switch Buttons

- 1K Ohm Resistors

- Li-Po Battery (Battery capacity doesn't really matter but a smaller battery is easier to fit)

- Li-Po Charger Module (It's better to buy one with integrated 5v booster otherwise you might have to make one)

- Prototype PCB to solder the components onto

- An On/Off switch

- A 3D printer for the case


If you choose to use the 3.3v arduino, you can use the 3.3v regulator on the arduino to power it with a li-po battery. But if you are going to use a 5v arduino, you will need a 3.3v to 5v booster to power it up. The easy way to do this is by buying a li-po charger with integrated 5v booster or buying a separate 3.3v to 5v booster module.

I didn't have both of those in hand so i took apart an old bluetooth speaker and desoldered the 3 to 5v booster components and revired it on my own board. If you want to know how to make this you can watch this video.

Step 1: Circuit

So the circuit is simple, only there are a lot of wires to be connected.

While soldering on the pcb it's important to be careful not to drip the solder on the other side of the board since there will be components there.

You can find the circuit schematic above.

Step 2: Software

To upload software to an arduino pro mini, you need to use a programmer. There many instructables on how to do this so i won't explain it in this one. Here is a link to one of them.

If you don't have a programmer you can even use another arduino to program it. Here's the link to that.

So the chess code is the u8glib's chess example sketch. It works really well and supports multiple oled screens with different drivers. To upload it first you need to download the library. Then you need to add it to your arduino libraries folder. After that you can download the attached code and upload it to your arduino. (I am attaching my own code because i changed some small stuff for the buttons to work with analog pins and etc.)

Step 3: The Case

After soldering everything and uploading the code, i designed and 3D printed a case to put it into. I printed one piece out of black and the other out of gray PLA. A cool thing about this case is that it's snap-fit. So it can easily be removed if needed.

Step 4: The End

So now you can do anything with it. My main approach to this project was to be able to carry a device to play chess anywhere. But sketches of games like snake, pac-man or tetris can be found on the internet. Since this thing has 4 buttons it will be enough to play these games.

Leave down any questions or suggestions.

Pocket-Sized Speed Challenge

Participated in the
Pocket-Sized Speed Challenge