Thursday 30 June 2011

Supergun project

I know i didn't even managed to get my USB Joystick to work completely yet, but I have a Supergun project in mind. It's a long term project as it will be composed of different parts, each requiring different electornic skill that promise long hours, day and month of enjoyment.

For those who don't know what a Supergun is, it's a device that enable to play arcade PCBs on regular TV/monitor screen and regular controller instead of a dedicated arcade cabinet. It's basically composed of three parts:
  •  Power supply. The arcade PCBs require 12v and 5v power and even -5 for some boards
  • Controls input. The arcade PCBs provides pins to connect controllers, the super just exposes then to connect regular ones.
  • Audio/Video output. Arcades PCBs output RGB signal at 15Hz,this video signal is transformed to VGA or PAL/NTSC to regular Monitor/TV set. the audio itself is mostly untouched.

There exist numberous Superguns on the market, most are home made, but none really fits my needs. And I'm quire surprised by this as some features seems pretty useful. So I intent to create my own with an awesome list of features:
  • Integrated Power supply. I know it would be much easier to get a PC ATX power supply or any kind of existing external power unit, but I really look for something that can sit on a table without taking too much space, and won't require a lot of noisy cooling fans. Plus power supply is an awesome electronic project. I must admit I don't know how many Watt a JAMMA board can suck, but I think it will need much less than the 350 or 400W of an ATX PSU. In addition I'd really like to be able to monitor the power supply state (mostly consumption) and build some fine tuning mechanisms. Some arcade boards are pretty old and may require some specific tuning to work.
  • Raw pins for control inpout AND USB. All superguns just exposes the JAMMA pins to connect a simple controller. It's pretty simple and highly efficient, but it lacks flexibility. Mostly the possibility to add 4 players easily, or plus your USB Joystick you already use on PC or console, or the possibility to use exotic devices some PCBs uses like trackball or driving wheel/pedals. The USB interface should enable to plug regular PC devices and emulate the JAMMA device for the board.
  • USB service port. I especially want to be able to plug the Supergun to a PC. The features we can imagine with a Supergun as a USB device are numerous, but I mostly want to be able to record the audio/video, to update the firmware, and configure the settings (buttons layouts, power, etc...).
  • Video upscaller. I intent to output a RGB VGA signal rather than TV PAL/SECAM. Mostly because it will require just a video upsaller to double the scan lines. Support PAL and/or SECAM just adds to the region problems with different TV sets. VGA is simple and nowadays even TVs have a VGA input. A nice to have is a scan-line generator integrated with scan line doubler. Just making the added lines darker to give a fine CRT feeling on LCD. Offering the possitility of video inversion can be fine as some PCBs output inverted video to projectors, but usually these boards has some configuration pins for video inversion, and this would surely complexify the video circuit and add latency. So not required, but nice to have.
  • Open source hardware and software. I intent to publish everything, because let's face it, I'm not an electronic engineer or an awesome coder. So help from community is always a plus. I really intent to build the hardware with plenly of room for some cool software features I didn't tought yet.
A great project, a lot of ideas, but I really should finish this USB Joystick first.

Tuesday 28 June 2011

USB Joystick

For some time now I try to develop an USB Joystick out of a broken one. The goal is to remove the faulty pcb board and replace it with a board of my own design. It's a much longer and harder process than I though, but it is quite rewarding and I learn a lot in the process. Here is a small video presentation of where is project is at.

Hello World

I'll post here my various hacks and developments projects I'm working on. And maybe one day I will be able to actually finish one of them!