Phillrb / MVSPlus

A collection of Neo-Geo MVS arcade tools including Arduino replacement for both MV-LED (credits) and MV-ELA (lamp driver) and an ATTiny mod to auto-start Universe BIOS 4.0 pic'n'mix mode
16 stars 4 forks source link

All LEDS are on and remain on #2

Open Papamoeziz opened 8 years ago

Papamoeziz commented 8 years ago

Hello, First of all, thank you for making this, as I have a 4 cart neogeo I have built a cab for. When I try and hook this code/wiring up for game selection, it turns on all the led's, and nothing changes when I change game. I am using a relay module to power some lights, and I can write a code to cycle them, but when I load on your code they all light up and that's it. Would you be able to lend me some ideas? I'm completely lost. Thanks in advance Tim.

Phillrb commented 8 years ago

Hey, thanks. So you're attempting to create your own 'MV-ELA' replacement to illuminate a game poster or something to show the currently selected game. I guess you're not using a mini LCD so you can remove all that code. If you're not going to display player credits then you can remove all that code too.

The crucial part is that you hook up the arduino to the 5 pin header for the ELA and alter line 71 to the pins you are using. So, in my example I hooked up the clock pin of the ELA header to pin 53 on the arduino and then hooked up the remaining 4 pins of the connector to pin 51, 49, 47 and 45 on the arduino. I can't remember which is the clock pin unfortunately... it's either the first or the last! I hooked up my LEDs to pins 42, 44 ,46 and 48.

The code needs some altering for your purposes... use this version: MVSPlus_game_pos_only.zip

Papamoeziz commented 8 years ago

Hey Phillip. Thanks for the super fast reply. I tried putting in your code and hooking it up as per your instructions, and then changed a few pins round to see if it would work but still no luck. Being that it's doing the same thing, I think it must be how I've wired it. From the manual I've got off the net I have the following pinout (and it's an 8-pin) for the ELA.

  1. 5v
  2. El clock (which I've hooked to the clock pin)
  3. ELA O0
  4. ELA O1
  5. ELA O2
  6. ELA O3
  7. ELA O4
  8. Ground.

I've tried hooking it up 0-3, and 1-4 with the clock, and in both directions (incase I am counting the wrong way on my board and still nothing. Voltages I get are 5.49, 1.02, 1.02,1.02, 1.02,1.02,1.02,0 so all that is correct ( I assume), which makes sense that the 1.02 values are information triggers and not actual power. These figures are constant regardless of game selected. I tested it on a crappy voltmeter, so I guess my next step is to try hook it up to an oscilloscope and see what it is putting out that way to see if I can't make sense of the signal it is sending depending on the game. If you have any ideas I'd love to hear them, but you've already been far more help than I expected, so incase you don't have the time, thank you nonetheless for everything, and maybe I look forward to a reply :).

Here is the cabinet anyway, hand built with all the trimmings, it's a lowboy layout (same that we used to have in our fish and chip shops when I was a kid) dressed up in neogeo lowboy styling, with the four slot which never existed in the lowboy(here anyway). Bar the people who know what they're looking at, you'd be hard pressed to prove its not original from the outside.

Thanks again! Tim

Sent from my iPad

On 10/11/2016, at 4:41 am, Phillip Riscombe-Burton notifications@github.com wrote:

Hey, thanks. So you're attempting to create your own 'MV-ELA' replacement to illuminate a game poster or something to show the currently selected game. I guess you're not using a mini LCD so you can remove all that code. If you're not going to display player credits then you can remove all that code too.

The crucial part is that you hook up the arduino to the 5 pin header for the ELA and alter line 71 to the pins you are using. So, in my example I hooked up the clock pin of the ELA header to pin 53 on the arduino and then hooked up the remaining 4 pins of the connector to pin 51, 49, 47 and 45 on the arduino. I can't remember which is the clock pin unfortunately... it's either the first or the last! I hooked up my LEDs to pins 42, 44 ,46 and 48.

The code needs some altering for your purposes... use this version: MVSPlus_game_pos_only.zip

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

Phillrb commented 8 years ago

Looking at the README.md (which I wrote so long ago that I can't remember), you need to connect pin 2 from the 8-pin connector to pin 53 on the arduino, 3 -> 51, 4 -> 49, 5 -> 47 and 6 -> 45. Forget what I said earlier!! Pin 2 is the clock signal as you've said and pins 2 to 6 are all that's needed to read the 4 game slots (these are the data lines). Pins 1, 7 and 8 are not needed.

Then, on the arduino, connect your LEDS to 42, 44 ,46 and 48 to display the correct game.

If this still doesn't work then I'd hook the arduino up to a PC and make it spit out Serial logs on significant events so you can see what values it's reading in. I remember being confused about the voltage readouts too so don't feel bad.