RetroZero (Raspberry pi zero handheld)

Want to show off your own project? Want to keep a build log of it? Post it here!
Post Reply
User avatar
facelessloser
Posts: 11
Joined: Fri Aug 31, 2018 5:40 am
Has thanked: 1 time
Been thanked: 7 times
Contact:

RetroZero (Raspberry pi zero handheld)

Post by facelessloser » Sat Jun 29, 2019 10:04 am

Image

tl;dr

I’ve been on a quest for while now trying to build a retropie handheld that was functional but didn’t break the bank. So far I’ve made ZeroBoy – A poor man’s retropie “portable” and a follow-up ZeroBoy rev C – An improved poor mans retropie portable. These were great but I think I have made a much better system with all the features included. Follow me below to find out how I managed it

Hardware
  • Raspberry pi zero W
  • 2.4″ screen (ili9341)
  • 12 soft touch buttons
  • Power bank board
  • Push button
  • Micro usb port
  • Piezo speaker
  • 2×20 female header
  • 4×1 female header
  • 4×1 Long male header (20MM)
  • JST connectors
  • 2000mAh battery
  • Switch
  • 10 Ohm resistor
  • 4 M3 standoffs
Screen

In the past I had used the 3.2″ waveshare clones screens because they were relatively cheap and easy to work with. For this build I wanted to use the 2.4″ ili9341 screen and footprint I used in the Xmas bauble pi because they are cheap and there is plenty of software support out there to get it up and running. Because I was using the “bare” screen it allowed the build to be smaller because I didn’t have to deal with a breakout board.

I soldered the ribbon cable off the screen straight to the board, was quite tricky because the pins on the cable are 0.8mm pitch
Image

Buttons

As before the software side of the buttons I’m using gpioneer because Its tried and tested with my other builds. I used different buttons on this build, I found some nice soft touch buttons that weren’t too mushy because they have a plastic top to them and the silicon membrane is in the inside. These buttons are SMD which has its ups and downs but I think they are a great choose

Speakers

This is new to my builds, I found out that in the TinyPi he used some Piezo speakers wired straight to the PWM pins on the PI (pins BCM 13 and BCM 18). My first rev of the PCB I ran into some problems, If you check out the video below it will be clear whats wrong. I’m not sure what is causing the problem because in the new rev of the board I still have the problem but it’s not as bad.
[youtube]https://youtu.be/wFbOqZuFhUw[/youtube]

I still have one working speaker which isn’t all that bad but I would like to get to the bottom of the problem. I found that If I use the other PWM pin (BNC12) instead of the BNC13 I don’t get the problem.

Power

As with all my other raspberry pi projects I’ve been using these “power bank on a PCB” boards which are really cheap and will support a raspberry pi zero and screen off of a LIPO battery. The reason I love these boards is they have everything you need, 4 LED’s for battery level which is important to know when its time to shut down the pi when the battery is about to give out. They are small too, so can easily be added to a project. They also allow a push button to be wired to the board so you can press it to check battery levels when the pi is off. I attached a micro USB port for charging.

Image

Split between 2 board

What I sometimes do is use an unpopulated PCB as the back board of a project but this time I decided to split this project over 2 boards. I found some long (20mm) male headers that I connected the 2 boards together which pass VCC GND L and R buttons over 4 pins. I used 4 18mm M3 female headers with M3 bolts secure it.

Image
Image

Hot keys for sound

I wanted a way to mute and turn the volume up and down while playing games. You just need to hold down the select button and press up on the d pad to turn the volume up and down on the d pad to turn the volume down. Also you can mute it by holding the select button and pressing left on the d pad. I know you can do this from the retropie main menu but that would mean you had to exit the game to do so. Follow the instruction below this also with re enable the saving hot keys.

You will need to edit the file below

Code: Select all

/opt/retropie/configs/all/retroarch.cfg
To set hot key key

search for the word below in the file

Code: Select all

input_player1_select
Then uncomment the line below and add what was at the end of input_player1_select to the end of this line

Code: Select all

input_enable_hotkey_btn =
To set the volume up hot keys

search for the word below in the file

Code: Select all

input_player1_up
Then uncomment the line below and add what was at the end of input_player1_up to the end of this line

Code: Select all

input_volume_up =
To set the volume down hot keys

search for the word below in the file

Code: Select all

input_player1_down =
Then uncomment the line below and add what was at the end of input_player1_down = to the end of this line

Code: Select all

input_volume_down =
To set the volume mute hot keys

search for the word below in the file

Code: Select all

input_player1_left
Then uncomment the line below and add what was at the end of input_player1_left to the end of this line

Code: Select all

input_audio_mute
Save/Load hotkeys

search for the word below in the file

Code: Select all

input_player1_l
Then uncomment the line below and add what was at the end of input_player1_l to the end of this line

Code: Select all

input_load_state
search for the word below in the file

Code: Select all

input_player1_r
Then uncomment the line below and add what was at the end of input_player1_r to the end of this line

Code: Select all

input_save_state
Wifi and bluetooth toggle

I wanted a way to toggle the wifi and bluetooth chips so I could save battery life when I didn’t need them. I found this blog post which has just has the files to do so

http://forum.8bcraft.com/viewtopic.php?f=2&t=1432

Board files

Github – https://github.com/facelessloser/retro_zero_handheld

Video

[youtube]https://www.youtube.com/watch?v=WY_CduSmmmE[/youtube]
[youtube]https://www.youtube.com/watch?v=-TMvWUzXIb8[/youtube]

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest