nobble
.
- Joined
- Apr 30, 2017
- Messages
- 170
- Likes
- 268
Hey BB,
As (hopefully) you all know, I love Gameboy modding with an undying passion. It was my first ever console. My first venture was a dual clock mod for the Gameboy pocket years back.
This post has board scans of both the front lcd, and back cartridge PCBs. Along with info and diagrams showing how to wire a NES controller to your Gameboy. (work in progress)
With the help of @seerofvoid420 we made this diagram of the front button PCB inside of a DMG. It shows the traces to DAN215 that outputs the signals to the cpu, and the ribbon cable.
Recently I got a few Easy_VGA boards from Kitschbent to test out. They are great! They really keep to the E-Z theme when installing. Big thanks to uXe for designing them!!!
After wiring the mod to the back half pcb, I noticed it didn't need the front PCB to output video. But the buttons are not connected afterwards. So further understanding of the traces from the buttons to the DAN215 was needed.
These are the DAN215 components that output the signal data.
To bypass them we need to program an Arduino to act in replacement for them.
@Postman and I got help from uXe, and together we were able to write some code to interpret the NES controller button presses and output them as DMG button signals.
This is the final code we came up with on uXe's Github. There are a couple of lines in the code to test that the NES side of it works. Open the Arduino IDE serial monitor and you should see eight ones (11111111) being printed repeatedly, and when you press a button the corresponding 1 should change to a 0. You can comment out/delete: //Serial.println(buttons_state, BIN);
(If using a generic Pro Micro, select Leonardo as your board type in Arduino IDE)
Here is a scan of the back-half pcb that shows where the ribbon cable header pins solder to the Pro Micro.
The Pro Micro replaces the front PCB inputs entirely. This will allow for custom controllers to be used externally on the handheld, turning it into a fully-fledged home console.
All that is left is to wire either a NES controller port or cut the end off a controller cable and wire directly to the Arduino. The following image shows the Pro Micro and NES controller pinouts along with the pins you connect to.
If you have any issues, try checking over and reflowing your connections, use short wires, and shield your boards with some tape.
I figured I would post this here for all to use as a tool. Thanks for the help guys!
*This may be helpful to some doing mods/repairs on old Gameboys, or trying to redesign the PCB.
As (hopefully) you all know, I love Gameboy modding with an undying passion. It was my first ever console. My first venture was a dual clock mod for the Gameboy pocket years back.
This post has board scans of both the front lcd, and back cartridge PCBs. Along with info and diagrams showing how to wire a NES controller to your Gameboy. (work in progress)
With the help of @seerofvoid420 we made this diagram of the front button PCB inside of a DMG. It shows the traces to DAN215 that outputs the signals to the cpu, and the ribbon cable.
Recently I got a few Easy_VGA boards from Kitschbent to test out. They are great! They really keep to the E-Z theme when installing. Big thanks to uXe for designing them!!!
After wiring the mod to the back half pcb, I noticed it didn't need the front PCB to output video. But the buttons are not connected afterwards. So further understanding of the traces from the buttons to the DAN215 was needed.
These are the DAN215 components that output the signal data.
To bypass them we need to program an Arduino to act in replacement for them.
@Postman and I got help from uXe, and together we were able to write some code to interpret the NES controller button presses and output them as DMG button signals.
This is the final code we came up with on uXe's Github. There are a couple of lines in the code to test that the NES side of it works. Open the Arduino IDE serial monitor and you should see eight ones (11111111) being printed repeatedly, and when you press a button the corresponding 1 should change to a 0. You can comment out/delete: //Serial.println(buttons_state, BIN);
(If using a generic Pro Micro, select Leonardo as your board type in Arduino IDE)
Here is a scan of the back-half pcb that shows where the ribbon cable header pins solder to the Pro Micro.
The Pro Micro replaces the front PCB inputs entirely. This will allow for custom controllers to be used externally on the handheld, turning it into a fully-fledged home console.
All that is left is to wire either a NES controller port or cut the end off a controller cable and wire directly to the Arduino. The following image shows the Pro Micro and NES controller pinouts along with the pins you connect to.
If you have any issues, try checking over and reflowing your connections, use short wires, and shield your boards with some tape.
I figured I would post this here for all to use as a tool. Thanks for the help guys!
*This may be helpful to some doing mods/repairs on old Gameboys, or trying to redesign the PCB.
Last edited: