Close
0%
0%

FAME BOY

A contest entry to the "Hack Like Heck" contest

Similar projects worth following
A contest entry to the "Hack Like Heck" contest. PI portable with integrated cartridge reader.

The project is a Raspberry PI zero with a 4.3 inch TFT display and some other boards. A 3D printed case with original GAME BOY design elements and the color scheme of a switch. Bonus feature is an integrated cartridge reader for original, color and advance Game Boy games!

BOM
 - Raspberry PI Zero W
 - 4.3inch TFT display
 - Adafruit TFT Friend
 - Adafruit Power Boost 1000
 - 2500mAh LiPo

 - USB hub (called a spider hub)
 - Sparkfun Pro Micro 3V3 for the buttons
 
 - microSD card
 
 - PI0 soundboard from OSHpark
 - Adafruit MAX98306 AMP
 - tiny speaker 4 Ohm 

 - self designed USB cartridge reader
 - self designed button board
 - lasercut screen bezel
 - reused GAME BOY buttons

 - lots of 3D filament
 - wayyy too much hot glue
 - wires 


  • FAME BOY - build log 6 - Hack Like Heck

    davedarko04/22/2018 at 10:29 0 comments

    So I've decided on using the Mode 3 (2nd) of the pinouts for RGB565 as seen here https://www.raspberrypi.org/documentation/hardware/raspberrypi/dpi/README.md

    After a while I've figured out where to solder what cable and also managed to do the device tree overlay for the PI Zero W.

    pi@retropie:~ $ sudo raspi-gpio get  
    BANK0 (GPIO 0 to 27):  
      GPIO 00: level=1 fsel=6 alt=2 func=PCLK  
      GPIO 01: level=1 fsel=6 alt=2 func=DE  
      GPIO 02: level=1 fsel=6 alt=2 func=LCD_VSYNC  
      GPIO 03: level=1 fsel=6 alt=2 func=LCD_HSYNC  
      GPIO 04: level=0 fsel=6 alt=2 func=DPI_D0  
      GPIO 05: level=0 fsel=6 alt=2 func=DPI_D1  
      GPIO 06: level=0 fsel=6 alt=2 func=DPI_D2  
      GPIO 07: level=0 fsel=6 alt=2 func=DPI_D3  
      GPIO 08: level=0 fsel=6 alt=2 func=DPI_D4  
      GPIO 09: level=0 fsel=0 alt=  func=INPUT  
      GPIO 10: level=0 fsel=0 alt=  func=INPUT  
      GPIO 11: level=0 fsel=0 alt=  func=INPUT  
      GPIO 12: level=0 fsel=6 alt=2 func=DPI_D8  
      GPIO 13: level=0 fsel=6 alt=2 func=DPI_D9  
      GPIO 14: level=0 fsel=6 alt=2 func=DPI_D10  
      GPIO 15: level=0 fsel=6 alt=2 func=DPI_D11  
      GPIO 16: level=0 fsel=6 alt=2 func=DPI_D12  
      GPIO 17: level=0 fsel=6 alt=2 func=DPI_D13  
      GPIO 18: level=0 fsel=2 alt=5 func=PWM0  
      GPIO 19: level=1 fsel=2 alt=5 func=PWM1  
      GPIO 20: level=0 fsel=6 alt=2 func=DPI_D16  
      GPIO 21: level=0 fsel=6 alt=2 func=DPI_D17  
      GPIO 22: level=0 fsel=6 alt=2 func=DPI_D18  
      GPIO 23: level=0 fsel=6 alt=2 func=DPI_D19  
      GPIO 24: level=0 fsel=6 alt=2 func=DPI_D20  
      GPIO 25: level=0 fsel=0 alt=  func=INPUT  
      GPIO 26: level=0 fsel=0 alt=  func=INPUT  
      GPIO 27: level=0 fsel=0 alt=  func=INPUT  

    And here is my complete stolen together config.txt file. I've changed the frequency to 9.6 MHz as baldengineer suggested here: https://www.element14.com/community/people/baldengineer/blog/2018/03/13/screen-success

    dtparam=i2c_arm=off  
    #dtparam=i2s=on  
    dtparam=spi=off  
      
    dtparam=audio=on  
    gpu_mem_256=128  
    gpu_mem_512=256  
    gpu_mem_1024=256  
    overscan_scale=1  
      
    # usb network  
    #dtoverlay=dwc2  
      
    # enable the DPI display  
    enable_dpi_lcd=1  
    display_default_lcd=1  
      
    # Set screen size and any overscan required  
      
    overscan_left=0  
    overscan_right=0  
    overscan_top=0  
    overscan_bottom=0  
    framebuffer_width=480  
    framebuffer_height=272  
      
    # set up the size to 480x272  
    dpi_group=2  
    dpi_mode=87  
      
    # set up the hsync/vsync/clock polarity and format  
    dpi_output_format=0x7F013  
      
    # set up the size to 480x272  
    hdmi_timings=480 0 40 48 88 272 0 13 3 32 0 0 0 60 0 9600000 3  

  • FAME BOY - build log 5 - Hack Like Heck

    davedarko04/22/2018 at 10:24 0 comments

    I have spent waaaay too much time on the design so far and I'm only at 75% of finishing it. It seems like the parts will arrive this Friday, so it's going to be a long weekend. I've set up a "war zone" for the project, a "FAME BOY only" table of 100 x 60 cm2. Today the button boards arrived from aisler.net, with a bit of drilling and snipping some plastic posts I was able to fit almost everything but the shoulder buttons. I've ordered a set of buttons again, this time in black! Every part you see needs to be reprinted though, to fit the shoulder buttons. I have the shoulder button design ready, and the bottom parts are ready for a draft print as well. I will try to fit everything in and then com back to the design later, when everything is placed.

    So back to the "war zone", I need to fix the Game Boy cartridge reader. It won't start with the program but in the bootloader mode and I need to find out what that was all about. Then I can come up with a way to alert the Raspberry PI that there is a cartridge present. I don't have any diodes on the button pcbs, something I now regret because it's going to be tough to just add the cartridge state as one of the buttons. Ghosting could get tricky.

  • FAME BOY - build log 4 - Hack Like Heck

    davedarko04/22/2018 at 10:23 0 comments

    What a perfect fit of colors, but sadly this PLA wont print on both of the companies Zortrax M200. There's an option to load external materials on the Zortrax M200 for a while now and I was too shy to test it out (Zortrax is closed gcode and was closed filament). Since I've printed with PLA on my 2014 printrbot simple already, I didn't think there could be too many problems though and so I did a little trip to 3dk.berlin, that was 4 metro stations away from home. Sadly the printer won't even load the filament and after asking around in the zortrax user group on facebook it turns out that you have to use a hotend+nozzle purely for the PLA for "best results". Well no, I'll just use one of the white tones in the material that I know prints and have laying around. Bummer, had a great time in the store. Let's talk about getting a CR10 + custom color PLA after the contest.

    [update] the acrylics for the screen protector went to my parents place instead to me. They were not there to receive it and the shop it went to is only open from 10 to 5, Monday through Friday. The eBay person was good enough to resend it though, so I can expect it to arrive on Thursday, almost a delay of one week.

  • FAME BOY - build log 3 - Hack Like Heck

    davedarko04/22/2018 at 10:22 0 comments

    Still looking for the right material to print the case in, but on Saturday I will go to the store of a local filament maker, worst case scenario they could mix up a DMG colored PLA plastic. But I'm sure I'll be happy with one of their 5 greys they have in store so I don't have to pay 240 Euros for 5kg of filament. I also spoke to a friend of mine who works in the copy shop I used to work and he had some great ideas about the screen bezel. I might be able to grab some better new buttons and silicone pads as well. Exiting stuff! Here's a current "render" of the case, I've placed the raspberry pi on the left side and the battery pack on the right. I'm a bit worried about it not being well balanced and I'll have to see about that when I have the rest of the parts.

  • FAME BOY - build log 2 - Hack Like Heck

    davedarko04/22/2018 at 10:21 0 comments

    Much buttons - such board

    I'm done with the boards for the buttons! that's the most sloppiest board I've ever "designed". My main focus was on getting the dimensions for everything right. Hopefully every plastic nibble has the corresponding drill hole. The angles should be right. The shoulder button might be on the wrong side of the board, but maybe it's just right for the biggest lever I could achieve with the buttons. Boards are ordered from aisler.net, a German oshpark.com "strive to be", hopefully the boards will get here within the next week. Designed with EAGLE, because there was no time to learn to do that in KiCad (I notice a theme here).

    I hope I get this project done before my sister arrives, she will visit our home town right days before the end of this contest, so I need to steal some time before that. Now it's back to waiting for the results and further designing on that case design. From there it should be mostly soldering and programming that I can do from anywhere.

    Thank you for reading this short log! I hope the naming choice is quite obvious by now - I started with my LAME BOY that had a lower resolution than the GAME BOY, so it's lame. The FAME BOY purely exists to become famous like Ben Heck - a vanity project to gain subscribers  Well I wouldn't have started something like it at least and this contest is about becoming a paid youtuber somewhat. Not so many choices with naming to come after that.

    here's the git I've started for the project, currently only the boards are inside https://github.com/davedarko/FAMEBOY

  • FAME BOY - build log 1 - Hack Like Heck

    davedarko04/22/2018 at 10:17 0 comments

    [blatently copied from e14]

    Okay, wow - the competition is strong. So I thought in case I'm in the TOP10, I'd use that sweet screen and go another route, instead of using a classic DMG case! Here's a mockup of what I'd like to do, drawn in 123D Design, since I doubt there's enough time for me to learn fusion360 and finish the design in it. The cartridge reader is supposed to fit classic Game Boy cartridges and Advance games, therefor the dummy cartridge is a mix of both. This design is 20cm wide, so to prevent warping and early release from the build plate, I'm going to spilt it up and make it modular, but the controllers wont come of. While looking for pics of the switch, I sadly found a similar design rendered by an artist. But I guess that happens to every one and I like the design and want to go no with that. There will be shoulder buttons, too. let's see if I can fit everything inside and how thick it will be in the end :) 

    Here is a test print of the controller buttons, all on one side, just to check how the buttons are fitting. With some minor tweaks this should be perfect!

  • TOP10 - woot!

    davedarko04/13/2018 at 15:55 7 comments
  • It's time to vote :)

    davedarko04/05/2018 at 16:18 2 comments

    Please consider registering to vote on the platform, as likes on the element14 community count the most!

    https://www.element14.com/community/docs/DOC-89137/l/hack-like-heck-davedarko-fame-boy?ICID=Mfilmfest-contestant-widget

  • A bit of a hmpf moment

    davedarko03/20/2018 at 15:25 0 comments

    on the 13th of May the winners of the BOM  auditions were announced - on the 23rd the parts are expected to arrive here in Germany (send today, national winner packets were send on last friday). My plastics for the screen bezel were supposed to arrive last friday, hopefully it will get here on thursday. Ebay decided to redirect it to my parents place, so we had to resend it cause the dropoff place is open from 10 to 4... argh. I'm trying to print ABS now, seems like I have killed the hotend with the attempt to print with PLA. 

    Meh.

  • feels a bit empty, for reasons

    davedarko03/18/2018 at 17:54 5 comments

    There was an unofficial statement of "bonus points for blog posts" on the element14 community page for the "Hack Like Heck" contest, so that's why I'm posting my logs there and I'm too lazy to copy them over here. Wouldn't feel right either, so I admit to being lazy.

    Here's what I have so far:

    FAME BOY - build log 1 - Hack Like Heck

    FAME BOY - build log 2 - Hack Like Heck

    FAME BOY - build log 3 - Hack Like Heck

    FAME BOY - build log 4 - Hack Like Heck

View all 11 project logs

Enjoy this project?

Share

Discussions

Hack&Invent wrote 04/05/2018 at 12:51 point

Neat! from far it looks realy like a switch!
Did you think about use the Raspberry Pi Compute module instead of Pi Zero?

  Are you sure? yes | no

davedarko wrote 04/05/2018 at 13:00 point

Thanks, it should look like a DMG as well, does it? Yes, I thought about it for a minute, but the pi zero w is cheaper in this case and I don't need a bigger cpu for nintendo games before n64 anyway. for n64 Id also need more buttons

  Are you sure? yes | no

ReapeRum wrote 03/09/2018 at 14:16 point

hey cool idea i'd like to see the finished piece

  Are you sure? yes | no

ðeshipu wrote 03/08/2018 at 23:31 point

Hmm, looks nice, but I would have both bottom corners rounded — I know then it doesn't look like gameboy, but would be easier to hold.

  Are you sure? yes | no

Jarrett wrote 03/08/2018 at 22:53 point

If you don't win, is your next project going to be the SHAMEBOY?

  Are you sure? yes | no

Jarrett wrote 03/08/2018 at 22:54 point

Or the BLAMEBOY if you have some good excuses :)

  Are you sure? yes | no

ðeshipu wrote 03/08/2018 at 23:30 point

No, the next one is going to be FORTUNEBOY.

  Are you sure? yes | no

davedarko wrote 03/08/2018 at 23:51 point

could have gone with mame boy... darn, that was too obvious.

  Are you sure? yes | no

ðeshipu wrote 03/09/2018 at 00:16 point

Mommy's Boy

  Are you sure? yes | no

davedarko wrote 03/09/2018 at 07:21 point

you mean Dame Boy?

  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