Gameboy Advance SPi (GBA SPi)

Moderators: odroid, mdrjr

Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Thu Aug 14, 2014 5:41 am

Hey guys, I know the first shipment of commercial ODROID-W's has not been released yet but I have already started purchasing and planning for this project. The idea is to put the ODROID-W into the base of a Gameboy Advance SP (GBA SP), add a battery, and controls along with sound. The screen used will not be the original GBA SP screen, instead I will be using a 2.8in TFT w/Capacitive Touch from adafruit.

Specs:
  • ODROID-W
  • Case will be GBA SP Shell (from ebay) - Gold Color
  • 2.8in TFT w/Capacitive Touch, 240×320 pixels, and 4 white-LED backlight
  • Mini Amplifier with mono speaker (since the system is so small, there is no point in having Left and Right audio, they will be merged into one speaker)
  • 1250mah Samsung phone battery (subject to change)
  • Nintendo 3DS joystick for movement in games
  • A, B, Start, Select, and 2 extra buttons to be able to play SNES and programmable for other emulators, etc.
  • USB HUB (4 total USB ports) - USB Wifi adapter will be wired inside the case, 3 will be relocated to the case (where the GBA Cart slot used to be).

Ok now that you know the specs, lets get on with how the project will be planned out...

Image

As you can see I will not have a D-Pad, there will not be enough room in the case annnnnnd since the ODROID-W comes with an ADC built in, why not utilize it's full potential! The 3DS slider's analog inputs (X and Y coordinates) will be converted into your typical up down left and right so it is usable in all emulators (sounds fun to play Gameboy games and NES games with an analog stick :D ) I will try and utilize the 3DS pad as a mouse too if I can figure it all out.

As for the four buttons on the right (A, B, and two blank ones) I will have them wired up to the GPIO pins as (A, B, X, Y) however in the emulators you can change the buttons to their correct order. An example is I can use the layout of SNES so the top two buttons (A and B) can be the Y and X like on the original controller. And the bottom two buttons can be the B and A button.

The brightness button on the GBA SP case will be the on/off button. However this is subject to change.

Select and start will be wired to the GPIO pins too and configured in the emulators.

I want to use digital volume instead of using a potentiometer wheel because I find them easier to use (personal opinion I guess).

Battery indicator is built into the ODROID-W so I will be able to monitor battery usage on-screen like a laptop would.

I know N64 doesn't run well on the RPi but I know Mario 64 is semi playable with overclocking so I hope to be able to try that out on this system, making it a super portable Mario 64 device sort of...

I chose the GBA SP case over the others because I love clamshell devices, they prevent many scratches on the screen and are extra pocket friendly. Since the ODROID-W is so tiny it will fit without any problem in the case.

Of course my handy dremeling skills will be able to make the inside smooth and in case you were wondering I will put a hollow GBA Cartridge into the slot and epoxy it in with the USB ports cut out. That will prevent the Hollow hole that the shell has. As for the micro SD card, it will be attached to the ODROID-W like it is right now (no relocation), it can be simply removed by opening the Battery cover on the back of the device. I will make it open and close by a strong magnet instead of the screw.

Well lets hope it all works out great :) Will take me a few months to complete I predict.
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby mknrls » Thu Aug 14, 2014 7:21 am

frostedfires wrote:Hey guys, I know the first shipment of commercial ODROID-W's has not been released yet but I have already started purchasing and planning for this project. The idea is to put the ODROID-W into the base of a Gameboy Advance SP (GBA SP), add a battery, and controls along with sound. The screen used will not be the original GBA SP screen, instead I will be using a 2.8in TFT w/Capacitive Touch from adafruit.

Specs:
  • ODROID-W
  • Case will be GBA SP Shell (from ebay) - Gold Color
  • 2.8in TFT w/Capacitive Touch, 240×320 pixels, and 4 white-LED backlight
  • Mini Amplifier with mono speaker (since the system is so small, there is no point in having Left and Right audio, they will be merged into one speaker)
  • 1250mah Samsung phone battery (subject to change)
  • Nintendo 3DS joystick for movement in games
  • A, B, Start, Select, and 2 extra buttons to be able to play SNES and programmable for other emulators, etc.
  • USB HUB (4 total USB ports) - USB Wifi adapter will be wired inside the case, 3 will be relocated to the case (where the GBA Cart slot used to be).

Ok now that you know the specs, lets get on with how the project will be planned out...

Image

As you can see I will not have a D-Pad, there will not be enough room in the case annnnnnd since the ODROID-W comes with an ADC built in, why not utilize it's full potential! The 3DS slider's analog inputs (X and Y coordinates) will be converted into your typical up down left and right so it is usable in all emulators (sounds fun to play Gameboy games and NES games with an analog stick :D ) I will try and utilize the 3DS pad as a mouse too if I can figure it all out.

As for the four buttons on the right (A, B, and two blank ones) I will have them wired up to the GPIO pins as (A, B, X, Y) however in the emulators you can change the buttons to their correct order. An example is I can use the layout of SNES so the top two buttons (A and B) can be the Y and X like on the original controller. And the bottom two buttons can be the B and A button.

The brightness button on the GBA SP case will be the on/off button. However this is subject to change.

Select and start will be wired to the GPIO pins too and configured in the emulators.

I want to use digital volume instead of using a potentiometer wheel because I find them easier to use (personal opinion I guess).

Battery indicator is built into the ODROID-W so I will be able to monitor battery usage on-screen like a laptop would.

I know N64 doesn't run well on the RPi but I know Mario 64 is semi playable with overclocking so I hope to be able to try that out on this system, making it a super portable Mario 64 device sort of...

I chose the GBA SP case over the others because I love clamshell devices, they prevent many scratches on the screen and are extra pocket friendly. Since the ODROID-W is so tiny it will fit without any problem in the case.

Of course my handy dremeling skills will be able to make the inside smooth and in case you were wondering I will put a hollow GBA Cartridge into the slot and epoxy it in with the USB ports cut out. That will prevent the Hollow hole that the shell has. As for the micro SD card, it will be attached to the ODROID-W like it is right now (no relocation), it can be simply removed by opening the Battery cover on the back of the device. I will make it open and close by a strong magnet instead of the screw.

Well lets hope it all works out great :) Will take me a few months to complete I predict.

So That's the project you where talking about :) Interresting! Cant wait to see your progress!!
mknrls
 
Posts: 58
Joined: Mon Jan 06, 2014 9:49 am
Location: Canada
languages_spoken: English & French
ODROIDs: C0, W & XU4

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Thu Aug 14, 2014 7:47 am

Thanks buddy :) I thought it would be best to post here since it is the official site. I'm super interested to see your project too :) thanks for showing me the ODROID W by the way! I'm sure we both can help each other out.
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby mknrls » Thu Aug 14, 2014 7:52 am

frostedfires wrote:Thanks buddy :) I thought it would be best to post here since it is the official site. I'm super interested to see your project too :) thanks for showing me the ODROID W by the way! I'm sure we both can help each other out.


Np mate :) for sure! :p
mknrls
 
Posts: 58
Joined: Mon Jan 06, 2014 9:49 am
Location: Canada
languages_spoken: English & French
ODROIDs: C0, W & XU4

Re: Gameboy Advance SPi (GBA SPi)

Unread postby odroid » Thu Aug 14, 2014 2:58 pm

Believe it or not, we've also tried to run the gpsp(GBA emulator) on the SPI TFT LCD. :D
We could run the fbcp in background for mirroring the fb0 on fb1.
But the fbcp eats CPU resource much and slow down the emulation speed. :(
So we need to optimize the fbcp performance.
User avatar
odroid
Site Admin
 
Posts: 21761
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Fri Aug 15, 2014 5:20 pm

I'm sure everything will work out fine :) I will tinker with it too when it arrives and see if I can optimize it.
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby keffcat » Sun Aug 24, 2014 6:04 am

Wow, I had the same exact idea ever since seeing the Odroid-W! If you want to check out my (in-progress) parts list, it's right here:

https://docs.google.com/spreadsheets/d/1MIA3Di29vfdKrVSsErHqIgQH-SnoRPmzVx9XWeTyPRU/edit#gid=0

I'll be using the original D-pad (it's a lot simpler to use the original SP board to solder inputs, but I'm eager to see if your analog stick works!) I'll also be using a 3.5" composite screen (which barely fits in the case, by my measurements - going to need a bit of sanding to fit in those extra millimeters) because SPI eats up too much CPU time, and it produces a lower framerate to boot. I really wish there were screens on this scale with HDMI input, but sadly that's just wishful thinking.

I'd love to share progress once the Odroid-W ships, best of luck with your project!
keffcat
 
Posts: 3
Joined: Sun Aug 24, 2014 5:57 am
languages_spoken: english

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Mon Aug 25, 2014 4:52 am

Oh that's very cool keffcat! I'm wondering now if a SPI screen was a bad choice. Everyone keeps saying it will cause lag... I have an old 3.5in Composite tft laying around so I might just go with that plan.

What do you guys think?
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby mdrjr » Mon Aug 25, 2014 5:43 am

frostedfires wrote:Oh that's very cool keffcat! I'm wondering now if a SPI screen was a bad choice. Everyone keeps saying it will cause lag... I have an old 3.5in Composite tft laying around so I might just go with that plan.

What do you guys think?


It will lag.. AFAIK the best you can get on a SPI screen is 20fps-ISH.
If that's ok for you..
mdrjr
Site Admin
 
Posts: 11575
Joined: Fri Feb 22, 2013 11:34 pm
Location: Brazil
languages_spoken: english, portuguese
ODROIDs: -

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Mon Aug 25, 2014 6:12 am

Ok I will return my 2.8in touchscreen for a normal composite screen... will be easier to wire anyways and better frame rate! I should have thought of this before purchasing but oh well... I will just pay the shipping fee to return.
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Mon Sep 01, 2014 12:24 am

OK so I bought a 3.5in composite screen from Adafruit.com (what keffcat recommended to use) instead of a touchscreen... So it should have better CPU and run emulators without as much lag.

I also ended up dremmeling the inside of the GBA SP case and got all the items ready to make this, except the odroid is still on it's way. So more updates when it arrives :)
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Sat Sep 06, 2014 11:47 pm

The Odroid arrived! yay!! I booted it up and it looks sweet! Running NOOBS on the SD card but will add the RTC and Fuel Gage update to the card once it downloads.

My 3.5in screen is on it's way and will be here on Wednesday too. I am trying to figure out the best layout in the case. I think I am going to relocate the micro HDMI port to a spot on the back of the case. It will be hard to do but I will try it out sometime this week.
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby keffcat » Tue Sep 09, 2014 4:41 am

Awesome! Glad to hear you're making progress :)

Unfortunately, my version is probably going to be on hold while I wait for the next iteration of the Odroid-W, what with the whole Broadcom fiasco. Hopefully they can get that sorted out.

My biggest concern was figuring out a way to fit both the LCD and the driver board inside the screen (combined height of about 1cm, much higher than the screen casing can offer). I suppose you could desolder the RCA connectors, but I doubt that'd give you much of a height advantage. The other option was passing the (LVDS?) cable through the hinge, but it's much wider than the normal GBA cable and would likely not work as well.

Looking forward to seeing how you resolve those issues!
keffcat
 
Posts: 3
Joined: Sun Aug 24, 2014 5:57 am
languages_spoken: english

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Tue Sep 09, 2014 5:18 am

I was able to fit my 3.5in screen in the GBA SP by dremeling some plastic out of the inside of the casing. My layout allows all the components to just Barely fit in the case of the GBA sp haha. But I am getting it all organized. Around September 17th I will have a Lot of free time to work on the project so more updates then. But I have got the USB Hub connected and I'm working on getting the Wifi working.
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Fri Nov 21, 2014 12:36 am

I've gotten a lot of progress done already and also was featured on a hackaday post:

http://hackaday.com/2014/11/19/a-raspbe ... dvance-sp/

I posted my work-log on the Bacman forums to try and win a competition. I plan on finishing up this project very soon and I will include a video later.

Great product Odroid!!
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby robroy » Fri Nov 21, 2014 2:37 am

so if you’re aiming for a smaller build, the Odroid is the way to go

Looks like the reviewer was impressed with the tiny form factor of the W!

It's mentioned that another project had to heavily modify the RPi in order to get the size even close to yours :D
Rob Roy, Editor-in-Chief of ODROID Magazine (submit an article | make a donation)
User avatar
robroy
 
Posts: 3294
Joined: Mon Feb 25, 2013 2:29 am
Location: San Francisco, California
languages_spoken: English
ODROIDs: Q2, X, X2, U2, U3, XU-E, XU3, XU4, C1, C1+, C2

Re: Gameboy Advance SPi (GBA SPi)

Unread postby frostedfires » Fri Nov 21, 2014 11:09 pm

Yeah I thought that was great! Hopefully we can get more people interested in the Odroid products! :)
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Pi SP - Worlds smallest portable pi? Complete!

Unread postby frostedfires » Sun Jan 04, 2015 4:35 am

Here's my finished portable using the Odroid W. Love this product guys! And I'm so glad I learned about this chip.



It's a long video but here are some highlights if you don't have time for the whole video:
Quake 3 - 9:42
Mario Kart - 12:43
1080P Movie Playing 16:33

Here's a link to the worklog:

http://www.bacman.co.uk/bacforum/viewto ... 243&t=4990

Specifications:
*Odroid W (Raspberry pi clone)
*1300mah battery (cell phone battery [tiny])
*Wifi Module (I said Bluetooth in the video but meant Wifi)
*Usb hub (4 usb ports - 1 will be used for wifi internally, 1 is wired to the Teensy 3.1, so 2 external)
*HDMI port (great for movie player on the big screen at home)
*Mono speaker hooked to an amp with digital volume (tact switches to change volume)
*3.5in screen! (Larger than the original GBA SP screen)
*Directional Pad, A, B, X, Y, L, R, Start, Select + Joystick and a misc button.

Fun Facts:
  • I fried 1 Odriod W in the making of this portable
  • Battery life = 2 hours
  • I tried over 10 different speakers to get the right sound (and it still crackles every once in a while)
  • There are 3 screws holding it closed and some epoxy! Only way I could get the HDMI out to be on the device was to cut a screw post so ended up with 3 instead of 4.
  • There is no GBA Game in the system... it's just for cosmetic.
  • The mouse took me 2 days of research to figure out how to program
  • I used the Teensy 3.1 cause I can't code the GPIO pins on the Rpi :( But oh well ha!
  • The psp cap is on a 3ds Joystick, rival companies :)
  • This was my first Linux device and my first Raspberry Pi... I know that's sad...
  • L X W X H = (8.1cm X 8.9cm X 2.6cm)
  • I put a lot of blood sweat and tears into this device but it's worth it in the end.
User avatar
frostedfires
 
Posts: 26
Joined: Wed Aug 13, 2014 2:58 am
languages_spoken: english
ODROIDs: ODROID-W (Amazing!)

Re: Gameboy Advance SPi (GBA SPi)

Unread postby odroid » Sun Jan 04, 2015 11:17 am

Oh! Really impressive video.
Finally you made the Worlds smallest portable Pi !! :o
User avatar
odroid
Site Admin
 
Posts: 21761
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: Gameboy Advance SPi (GBA SPi)

Unread postby zriel » Thu Apr 09, 2015 2:06 pm

@frostedfires
Excellent work! I would love to embark on a project like this: to make a handheld system. I don't know enough to go about such a project. I can imagine that my biggest problems would be in providing the board with USB ports, as well as (somehow) properly connecting appropriate pieces of a gamepad/buttons.

I tried to go the bacman.co.uk link that you provided, but the website is down. Do you still have the information that you had at that site? I appreciate any info you have.
zriel
 
Posts: 31
Joined: Thu Aug 14, 2014 5:11 am
Location: USA
languages_spoken: English
ODROIDs: 2×C1, 2×U3, 1×XU3-Lite

Re: Gameboy Advance SPi (GBA SPi)

Unread postby Hayz » Sun Jan 22, 2017 4:00 am

can anyone give me instructions on how to connect a 2.8in touch screen to the odriod w? i am wanting to make the smallest computer in the gameboy sp and i have all the parts i need but i dont want to solder anything yet until i know the correct way to connect.
Hayz
 
Posts: 1
Joined: Sun Jan 01, 2017 6:54 am
languages_spoken: english
ODROIDs: ODROID W

Re: Gameboy Advance SPi (GBA SPi)

Unread postby odroid » Sun Jan 22, 2017 11:47 am

I tried to find a clue in the article. But it was not clearly described.
http://magazine.odroid.com/wp-content/u ... df#page=16
User avatar
odroid
Site Admin
 
Posts: 21761
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID


Return to Projects

Who is online

Users browsing this forum: No registered users and 1 guest