Hi,
I am new to Arduino and may have bitten off more than I can chew already with my first project. I am trying to re-purpose a midi foot controller so I can customize what it does to interface with newer audio hardware.
The controller has 15 switches and 13 leds. I have traced the circuit board (and confirmed with powering up the leds and continuity testing the switches) and determined which pins are used to power each led, the grounds, and which pins are activated (closed? is that the right word) when each switch is pressed. The switches are momentary (activated as long as held down).
The leds all make sense - a common +ve pin and a -ve pin for each led.
Questions 1 - How do I connect these leds to an arduino (I am using a Mega) that use a common +ve and individual negative and be able to turn them on and off? Diagrams I have seen in arduino tutorials have all the -ve as common ground.
The switches have me a bit stumped. I figure that with so many switches and leds, and given it is an older controller, they ran out of pins on the micro-controller and had to double things up. The following shows which two pins are activated when each of the switches is pressed (I have given somewhat arbitrary numbers for the pins (which make sense to me on the board), but the relationships are correct). The first number is the switch, then a colon and then the two pins which are activated separated by a comma:
1: 2, 10
2: 6, 10
3: 8, 10
4: 10, 22
5: 10, 26
6: 2, 16
7: 1, 16
8: 16, 20
9: 22, 25
10: 25, 26
11: 2, 21
12: 1, 21
13: 20, 21
14: 21, 22
15: 21, 26
Question 2 - What is going on here? How would I connect these up to the arduino so that I could use them individually (and ideally, more that one at the same time)? I have done a little reading here on the forum and perhaps this could be some sort of matrix setup or need a shift register or something?
Please let me know if there is anything I can do to massage the pin out data better to make it more understandable or to make it easier for me to use when hooking things up.
Any insights would be much appreciated. Maybe I should have started with a blinking light or something :o