See here: viewtopic.php?f=3&t=1878
During my build and PCB design a few things have changed and there are now a lot of posts and replies so I will spend a few days condensing it all down into this first post! I'll also make sure everything is nice and clear
KITES SUPER AIO
Pre order status: Prototype ready, preorder done, preorder closed (see viewtopic.php?f=3&t=1878)
- [+] Fully assembled prototype
- Under the hood (I haven't glued in the screw posts on-top of screen yet):
Everything connected (need longer battery wires):
Charging via USB (note the green charging LED, I also need to get a screen surround or paint the silver bits in black):
- A REAL 'All in one' that really does do it ALL in ONE
- Main PCB fills the 'front' half of a shell
- DPI LCD with support for 320x240 LCD (included) (640x480 support coming soon, and will be compatible with original board)
- Built in USB HUB
- Built in ATMEGA32u4 for buttons and joystick (UDLR, ABXY, L1L2, R1R2, JoyX, JoyY, battery monitor, current monitor, AMP and WIFI enable/disable, status LED, backlight brightness control)
- Supports the classic 'SNES' style button arrangement as well as the 'vertically aligned' style (required for the 3DS joystick in the middle)
- Built in 1A charger and load balance (play and charge at same time)
- Built in efficient regulators (3.3v and 5v)
- Built in SD slot in contrast port
- Built in 3.2W stereo amplifier + headphone jack (with auto switch off when headphones plugged in)
- Built in volume pot
- Built in Over temperature fan enable (5V or 3.3V)
- Built in Safe shutdown, with low batt warning
- Built in emergency shutdown (REALLY important if the Pi freezes or crashes as otherwise you'd have to disassemble to remove the power!)
- Built in WIFI (with enable/disable by button combo)
- Built in external USB port in the 'EXT' slot
- Built in Micro USB port for charging and uploading sketched to ATMEGA32u4 (optional hole required to use this in a shell)
- Additional 'mode' button to enable things like backlight adjustment, audio amp disable/enable, wifi enable/disable, etc (ideal to locate where the original barrel jack goes)
- Supports a Pi Zero (directly soldered to PCB)
- Supports a Pi3 (or 2) with optional 'GPIO Extender'
- The back half of shell is relatively untouched, cartridge boards can be used and solder pads available for SD card in cartridge
- Full sized main board. Fully soldered, tested, and programmed (Arduino button controller, USB HUB, USB Audio, Amplifier, Headphone + speaker switch (inc headphone jack), DPI LCD connector, WiFi (with button combo disable switch), Safe Shutdown Circuit, 1A Battery Charger, Low battery warning, SD slot in contrast port, Joystick + L1 L2 R1 R2, Current and voltage monitor (available to the Pi itself to get accurate power draw), over-temperature 'fan enable', adjustable backlight brightness)
- Back board (USB Port, Volpot, Power switch connector, Mode button connector) which is very small
- 320x240 LCD (DPI, clear and bright!)
- Board interlink cables
- Micro USB cable (with extra long connector, making it a lot easier to connect through the GBO shell)
- 3mm LEDs for power, charging, status (low batt), and wifi enabled/disabled
- GBO or 3D printed case
- Extra A and B buttons and plastic supports (SNES controller or otherwise)
- Power switch (Original or one that fits (see forum for suitable ones))
- Pi Zero or Pi3
- Tools (Soldering iron with pointed tip, drill, sharp knife)
Not trying to tease or anything it'll be ready soon, just hold on a little bit I know a lot of you are ready to drop for the pre-order but I've got one more thing to check and we'll be ready! I'm also working on a video guide on how to put it all together EASILY!
PS when pre-orders go up there won't be a limit or a super short time slot, it will be up for at least a week and I'll make sure you all know about it, so don't worry about not getting in
Does it come populated with components? - Yes.
Does it come with the 320x240 LCD? - Yes.
Can I put <joystick/button/switch> here instead? - You can do whatever you want, the board facilitates everything, customise locations as you please.
Does this work with the cartridge SD? - Technically yes, as the SD solder pads are available, however there is already SD in the contrast slot.
What is the battery life? - Depends on battery size, but with WiFi, FULL brightness, and running SNES it consumes ~650mA. Turning off WiFi and lower brightness is ~450mA. If you do "<battery capacity (mAh)> / <drain (mA)>" that will tell you the approx hours of runtime. E.g. my 3000mAh is 3000/650 = ~4.5Hrs of runtime, at lowest power draw it reaches 6.7Hrs! This is theoretical assuming the drain is constant, and the battery capacity actually IS what the battery is sold as (e.g. a "5000mAh 18650" style battery is a fake and not possible to be that big, look up reviews and if it's too cheap to be true, then it is definitely a lie!)
Do I have to put the LEDs there? - Nope, the LEDs will come lose, and you can either solder them like I did, not put them anywhere, or use wires to put them anywhere else!
What switch should I use? - Check the forum there are many suggestions. At pre-order I will say if one is included or not.
What are those little cables that connect everything together? - JST 1.0mm connectors, will be included.
- [+] Original post Wed May 18 2016 10.42 pm
- I thought I would share my build log in the hope that it will inspire others and also be a great place to bounce ideas around (like many of the other posts here which have influenced my process, thanks guys!). I have MANY ideas for this project and I plan to do it in two stages.. the first being a mostly manual soldering/cutting/gluing version, and then the second where I make all the custom boards to link everything together to make room for a bigger battery (and other bits!)..
I have designed a custom board in two parts, that fit into the ORIGINAL PCB locations but take up a lot less space with some creative cutouts.. the image below shows how they fit (paper cutouts so far). This will allow for the original screw holes to be used to hold everything together, and that ALL holes already in the gameboy are used (and no drilling externally required, apart from the additional buttons/joystick).
With a 3.5" LCD and a controller board, it does still fit behind the board so it all fits nicely (not shown is the GBO case that I bought from China where I cut out the holes, didn't have the heart to cut up my GBO!)
Top board (front of gameboy)
- 32bit processor (USB Gamepad firmware) (STM32F103)
- Up, down, left, right, B, A, X, Y, Start, Select PCB button pads
- L1, L2, R1, R2 headers
- 3DS joystick support (any analog joystick will work, but board designed to fit the 3DS joystick perfectly!)
- Micro USB port exposed from contrast pot location (also acts as micro controller programmer)
- Pi shutdown and low battery outputs (includes battery voltage monitor)
- Extra mounting holes at board edge and in center for additional standoff locations
Bottom board (back of gameboy)
- Battery connector
- 1000mA charger and load balancer
- 3.3v 2A regulator (step up/down)
- 5v 2A regulator (step up/down)
- Volume control (stereo) pot in original location
- 3.7W stereo amp
- Headphone jack (which when plugged disables amp)
- Current monitor
- Full sized USB port in EXT
- Original power switch completely disable power
- Status LEDs along top edge
- 'Mode' button poking from the original power jack hole (used for some advanced things on the STM in the next version)
As you can see that is a LOT of stuff crammed in a very small space, especially the power board as this has created a load of space available in the middle for stuff..
My plan is to use a Pi3, however there are a few things to address first.. I have ordered some micro fans (15x15x3mm!) which if they provide enough cooling will be triggered by the Pi when a temp is hit.. as for power, using 3.3v or even the VBAT voltage directly should save some efficiency (modifications to the Pi will be needed here..) and that with the space savings should allow for a bigger battery (or at least more of them). Changing the power source may also reduce heat as load is taken away from the on-board regulators.
If all fails I have a Pi Zero already, which when overclocked just about plays PSX and N64 games! I would love to be able to play Ocarina of Time But we'll see.. as long as I can get a big enough battery (target 6000 or 8000mAh) then that will be at least 6hrs of gameplay..
I have chosen an LCD that is 320x240 and accepts VGA input.. using the 'gert 666 vga' schematic it is possible to get the Pi to directly drive the screen.. this is SO MUCH clearer than the composite video LCDs, no shaking, no wobbling.. seems great! I had originally planned to use a HDMI to VGA adapter so that I wouldn't have to modify the Pi however it uses up so much space.. A 640x480 LCD is possible but they are pretty expensive! 320x240 should be fine anyway. I will get a video in action at some point.
To create more space, I will permanently fix in a cartridge, and hollow out the inside so it is now bigger and squarer on the inside, which should give more room for the Pi to fit in!
What's coming up next?
- Wait for Front, Back, and Pi to VGA PCB boards to arrive (go China!)
- Remove all big components from Pi3, and measure power draw by using vbat/3.3v direct
- Test micro fans
- Map out 'compute module' pins and make custom board to use the compute module
- Find a suitable audio DAC chip (start with USB DAC, but eventually will use an I2S DAC)
- Custom board for a GameBoy Pocket?
- Add L and R buttons, unsure of best way to do this, most likely soft tactile switches on the bottom edge
From the list above, you can see my goal.. which is to use the Compute Module, and design a single board that has all the components and can drive an LCD directly.. I am waiting on a sample of a number of LCDs which the Pi will directly drive, which will remove the need for a controller PCB in the way (more space and power savings).
Here is the button layout I am planning, the X and Y buttons are vertically in line with the B and A buttons due to the joystick taking up space on the inside:
Comments welcome! I will update as I progress. I want to make it look as authentic and as clean as possible.