Sega Genesis Controller Repair

Leave a Comment
Sega Genesis Controller Repair

   Let's admit it, retro video game consoles and accessories are old; however, that doesn't make them not interesting from an electronics and software engineering standpoint! Although some retro video game consoles and accessories can be reproduced in newer forms for the fanboy (such as clone consoles and new video game controllers from aftermarket companies such as retro-bit), nothing beats the 100% compatibility and authenticity of original hardware and accessories. It is important to preserve the old hardware, reverse engineer and document the secrets and specs of the hardware for homebrew development and emulation, digitally backup the games for future generations to enjoy, and to take care of the hardware. Because once it is gone, it's gone.

   Although not hard to reproduce or to find new ones being produced, today we will be discussing how to repair and maintain your 1st-party Sega Genesis 3-button controller. This guide should carry over to 1st-party 6-button controllers, as well as for 3rd-party controllers with some variation. After playing on my ol' Genny with some friends a few weeks ago, I found some of the buttons on my pre-owned controllers I bought at the retro video game shop were becoming very unresponsive, if responsive at all, so I Googled how to fix the issues. It's a lot better to repair the hardware then to spend a few hard-earned dollars on new hardware, especially if on a budget!


   The most common problem with Sega controllers are the button contacts. These button contacts are similar in style to cheap calculator contacts or to microwave buttons. For the buttons on both of those devices, the button assembly consists of 5 main components:
  1. The physical button itself (usually with a label of what it does)
  2. The button contact (underneath the button itself)
  3. The PCB board with the electronics circuity
  4. The PCB contact
  5. Physical mechanism to retract the button to normally-opened position
   By pressing the physical button (component #1), the button contact (component #2) makes physical and electrical contact with the PCB board and the PCB contact (components #3 and #4). The physical mechanism (component #5, usually component #2 the rubber button contact) brings the button back to its normally-opened state after being pressed and released. The PCB contact is usually a yellow circle with electrical breaks in it. By pressing the button, the button contact (a black circle which has some type of electrically conductive material on it) closes the circuit at the yellow PCB contact, allowing the circuit on the controller and in the console to register a button press for an action in the game's code to occur. The problem with most pre-owned, 2nd-hand Genesis controllers is the dirtiness inside the controller, on those button contacts, and on the PCB contact. Depending on where and how the controller is stored, and after repeated button presses over the years, dirt can build up on those components, and reduce the button's ability to initiate electrical contact.


How to fix these issues

   To fix these issues, you will need to open up the controller and remove the dirt from components #2-4 above using rubbing alcohol. You will need the following

  • Appropriate sized Phillips screwdriver for the controller screws
  • Replacement screws (optional)
  • Dixie cup
  • Bottle of Rubbing alcohol (50%-70% strength recommended)
  • Q-Tips or Cotton swabs
  • Genesis game or Flashcart
  1. Remove the 6 screws from the bottom of the controller. Keep them handy. Optionally, if they are stripped, rusted, or in bad mechanical condition (like mine were), replace them with similar screws. Separate both halves of the controller

  2. Remove the screws holding the PCB to the controller. Replace if necessary and keep them handy. Carefully detach the PCB's DB9 wire from its notch on the top to remove the PCB.
  3. Push out the button assemblies and D-Pad assembly from the front of the controller. The D-Pad has a rubber mechanism which should also be removed. Remove the rubber button contacts from the switches, but remember which buttons they goto.

  4. Pour some rubbing alcohol solution into your Dixie cup.

  5. Using either your Q-tips or a cotton swap (I prefer a cotton swap), gently wet it with rubbing alcohol and rub it into the PCB contacts on the PCB. Dirt will be lifted onto the Q-tip/cotton swap. Repeat until clean and shiny. Use a dry Q-tip/cotton swab to soak up the leftover Q-tip solution on the PCB and wipe clean. Do the same for the black conductive material on the button contacts underneath the physical buttons, and for the rubber physical mechanism for the D-pad.

  6. Using the Q-tip/cotton swaps, clean up the insides of the controllers (mine were pretty dirty from the previous owner).
  7. Reassemble everything

  8. Lastly, plug the controller into your Sega Genesis, and play a game which utilizes all of the buttons. If you are awesome and already have a flashcart (such as the Everdrive MD), I strongly recommend looking for a ROM titled "Multitap - IO Sample Program (U) (Nov 28 1992)" "somewhere" on the interwebs. (El Google is your friend *wink*). This particular Sega program will diagnose controllers by showing button presses for 3-button and 6-button controllers, button presses and coordinates for the Mega/Sega Mouse, and various other Genesis peripherals.

   If you followed this guide (and did not break anything), your controllers should now be much more responsive in trigger button presses, making for a better gaming experience. Mine were quite unresponsive (some button were not even triggering), and this trick worked like a charm. If not, then there could be other issues with your controller (electrical shorts, loose solder joints, worn out rubber pieces for the buttons etc), which you should diagnose and repair/replace.

Happy retro gaming!



Post a Comment

Please login with either OpenID or a Google Account, and then post your comment. Please be respectful and courteous; no spam allowed.

Copyright EagleSoft Ltd. Powered by Blogger.