Tiny Joypad Variant

A games console that plays ATtiny85 games cartridges. Rotating screen to play both landscape and portrait games.

Similar projects worth following
Daniel Champagne has made some really cool games for the ATtny85 chip, and I wanted to play them, but not on a bread board. I decided to make my own PCB and case design based on his Tiny Joypad schematic. I've added a few things like the rotating central screen, and plug in games "cartridges".

Daniel's Tiny Joypad design can be found at :

This Tiny Joypad "Megazoid Variant" project is now complete. If anybody has any questions - ask away. Many thanks to the kind people that helped out

This might be a nice platform for people who like to write ATtiny85 games. Having the option of sound, screen rotation, and a joystick does give you a bit more flexibility over projects such as Attiny Arcade (although Tiny Joypad is a harder build).

More Tiny Joypad games, info and designs can be found on Daniel Champagne site :

Slight code changes are needed for PacMan and Tiny Arkanoid for them to work on my version of Tiny Joypad (or just use the files in the )

PacMan  - Change

if ((analogRead(A3)>=750)&&(analogRead(A3)<950)) {Sprite[0].DirectionH=1;}
else if ((analogRead(A3)>500)&&(analogRead(A3)<750)) {Sprite[0].DirectionH=0;}

if ((analogRead(A3)>=750)&&(analogRead(A3)<950)) {Sprite[0].DirectionH=0;}
else if ((analogRead(A3)>500)&&(analogRead(A3)<750)) {Sprite[0].DirectionH=1;}

Tiny Arkanoid  - Change

if ((analogRead(A3)>=750)&&(analogRead(A3)<850)) {if (VARIABLE.TrackBaryDecal<7) {if (VARIABLE.TrackBaryDecal+(VARIABLE.TrackBary*8)<44){ VARIABLE.TrackBaryDecal++;}}else{VARIABLE.TrackBaryDecal=0;VARIABLE.TrackBary++;}}
if ((analogRead(A3)>500)&&(analogRead(A3)<750)) {if (VARIABLE.TrackBaryDecal>0) {if (VARIABLE.TrackBaryDecal+(VARIABLE.TrackBary*8)>4){ VARIABLE.TrackBaryDecal--;}}else{VARIABLE.TrackBaryDecal=7;VARIABLE.TrackBary--;}}


if ((analogRead(A3)>=750)&&(analogRead(A3)<850)) {if (VARIABLE.TrackBaryDecal>0) {if (VARIABLE.TrackBaryDecal+(VARIABLE.TrackBary*8)>4){ VARIABLE.TrackBaryDecal--;}}else{VARIABLE.TrackBaryDecal=7;VARIABLE.TrackBary--;}} if ((analogRead(A3)>500)&&(analogRead(A3)<750)) {if (VARIABLE.TrackBaryDecal<7) {if (VARIABLE.TrackBaryDecal+(VARIABLE.TrackBary*8)<44){ VARIABLE.TrackBaryDecal++;}}else{VARIABLE.TrackBaryDecal=0;VARIABLE.TrackBary++;}}

* Don't forget when you program the cartridges, that Pin's 1 and 2 are swapped around on the Pacman and Tiny Arkanoid PCB's.

3D printing files for the case

x-zip-compressed - 1.32 MB - 08/10/2021 at 11:17


PCB Thickness 1 mm for all PCBs !! Gerber zip files for PCB fabrication, and the EasyEDA design files used (import the .json files to

x-zip-compressed - 221.18 kB - 08/10/2021 at 10:56


The games included with Tiny Joypad Megazoid Variant

x-zip-compressed - 1.69 MB - 07/13/2021 at 18:14


  • 1 × 0.96" 128X64 OLED LED Display Module IIC I2C White or Blue. VCC-GND-SCL-SDA pin configuration
  • 1 × Battery Holder CR2032/2025 Through-hole Mount Manufacturers No: BAT-HLD-001-THM
  • 1 × 4 Pin Single Row 2.54mm Pitch Straight Pin Male Headers
  • 1 × CR2032 Battery
  • 1 × PCBs & 3D printed case - see "files" for the downloads

View all 21 components

  • Updated Files

    megazoid08/10/2021 at 10:09 0 comments

    I have decided to update all the files on HackaDay to reflect the changes I have made recently to the Tiny Joypad Megazoid Variant. There have been minor changes to the PCBs and case design which mainly iron out small flaws in the design. I will also be uploading the EasyEDA files. I consider the PCB designs and case designs open source, and wave any and all "implied" rights to the design. There may be however some copyrighted material (images/code?) within the project.

    PCB changes include an on/off button that pokes out of the case a bit more, a slightly more centralised screen, SMD placement alterations and some cosmetic changes.

    The case changes accommodate the new PCB design and have the addition of neodymium magnet mounting holes.

  • Notes : Issues & Problems

    megazoid07/29/2018 at 14:31 0 comments

    There is nothing worse than investing time and money in someone else's project only to find there are flaws in the design. In the interest of full disclosure for a prospective builder, here are the issues I am aware of :


    1. The power switch doesn't really protrude from the case. I manage with the side of my nail, or you could use a cocktail stick / match etc.

    2. The screen is 1 mm off central when in the portrait aspect. You might not have noticed... you will now.

    3. The sound is quiet. It's a tiny speaker with no amp, so it isn't much of a surprise. It is what it is :)

    Problems that might come up:

    1. It wont turn on.

    • Have you checked there is a programmed and working game cartridge inserted?  It wont come on without one. Also check the battery is installed correctly. Positive down. Then start thinking about looking at your soldering.

    2. The joystick falls off.

    • It wont really hold on there without a small amount of superglue, however only do this after you are 100% sure you no longer want to take the case apart.

    3. The screen case and joystick case are misaligned

    • We did test the case designs on a couple of printers and with different materials, and are satisfied it will go together without issue. Slight variations could be caused by a badly aligned 3d print bed, but another cause could be that your joysticks female connecting pin is not level. You could risk just bending it a fraction.

  • Fabrication

    megazoid07/24/2018 at 13:07 0 comments

    Adding a fabrication video which I had to split into 3 parts. It's 30 minutes of your life you'll never get back, but perhaps if are going to make a Tiny Joypad it might prove somewhat useful.

  • Magnets

    megazoid07/20/2018 at 11:30 0 comments

    I added some 3 x 1 mm neodymium magnets as a test. They do add a little extra grab, but are perhaps too much work for most people. I'm going to leave this off the design, and people can play around with the idea should they wish. Melted the holes using a heated drill bit and superglued them in by the way. 

  • Pinouts

    megazoid07/17/2018 at 20:19 0 comments

    I made some pin-out boards for programming the cartridges. They got progressively less hideous, but are still an insult to the eyes. You don't actually need these, but they are useful to me who is going to make a few Tiny Joypads. I did cremate one ATtiny85 by getting the connections wrong. It was not a happy moment.

View all 5 project logs

Enjoy this project?



codexexecutors wrote 02/16/2024 at 13:37 point

Thanks for sharing this amazing content. If you're Roblox game lover you can must try this game with it's Executors. There are many type of executors available in the market but my favorite is Codex Executor. You can easily download codex executor here.

  Are you sure? yes | no

themanoknapula wrote 12/15/2023 at 16:02 point

Thanks for sharing this valuable conetnt. It's really help me alot. Keep posted this type of informative articles. You can also check this blog:

  Are you sure? yes | no

asadrafi590 wrote 11/02/2023 at 13:33 point

You did a great job. You guys can also check this website for MLBB injectors.

  Are you sure? yes | no

scaifedonnellyson32 wrote 09/07/2023 at 11:15 point

I have gotten a lot out of the project, and I appreciate it very much. I'd want to distribute it to the staff of  NBA siblings so they can read it as well and make a change.

  Are you sure? yes | no

yulvenpetex wrote 06/04/2023 at 14:04 point

There has been a great deal of value to me in my involvement with the project. Would like to share it with the team so they can also read it and implement something new.

  Are you sure? yes | no

Ruud van Falier wrote 07/31/2020 at 08:31 point

Great project. Very creative idea with the cartridges and it also looks beatiful.

Well done!!

  Are you sure? yes | no

Jacob MacLeod wrote 10/13/2019 at 20:57 point

Nice, the cartridges are so cool!

  Are you sure? yes | no

megazoid wrote 10/14/2019 at 11:15 point

Thanks. At the time I was looking for a style more like a tiny gameboy cartridge, but couldn't come up with a suitable connector. Still, I guess they work. 

  Are you sure? yes | no

clae wrote 12/03/2018 at 10:13 point

I swear if you put this up on Tindie it would go off like a rocket

  Are you sure? yes | no

megazoid wrote 12/03/2018 at 21:12 point

Nice of you to say so. I only had a few kits, and as it happens nobody actually asked me for one. :)

I made quite a few for friends and family who seemed to like them.

  Are you sure? yes | no


[this comment has been deleted]

megazoid wrote 07/16/2018 at 12:48 point

Actually not a bad idea. The legs on those things are easily bent though, perhaps losing some portability aspects. (unless you had a way or storing them). I'm going to mull this over :) Thanks !

  Are you sure? yes | no

Daniel C wrote 07/16/2018 at 05:27 point

This is awesome project! Megazoid's amazing work! it is possible that the source code has to undergo modification to walk with the megazord electronic board!

For original source code visited the site!

  Are you sure? yes | no

megazoid wrote 07/16/2018 at 10:12 point

Thanks Daniel. It means a lot to me that you like it. Portrait games do need small code changes, and I will provide those code changes  here later. It's only 2 to 4 lines that need changing... very easy :)

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates