Sorry about the repost but I'm guessing a lot of non-midifighter owners don't go into the midifighter subforum and might have missed this:



Quote Originally Posted by sidetrakd View Post
4 multiplexers for 32 analog inputs, 12 for knobs/faders (4 not connected) and 20 for buttons assigned as follows:
  • 4 bank buttons (rigged up to the midifighter external bank code)
  • 4 buttons (the black ones on the left) are used as "global" banks and change the midi channel for all other buttons
  • 1 input used for a foot pedal
  • The rest are used as general buttons (only 5 are connected)

For the analog buttons, I check the ADC value against a threshold to see if it is pushed or not (with some crude transition detection code).

LEDs are driven by a PIC, connected to the digital pins over something almost SPI (3 pins are shared with the multiplexers, the spare is used as slave select). This gives me num_pic_io - 4 LED's (17 for my 21 I/O pin PIC): green LEDs on the bank and global bank buttons, blue on the other five buttons.

The global banks are used to select the midi channel, so the buttons always have the same notes, just on a different channel.

More details & pics when I get time to write up a build log.
http://www.djtechtools.com/forum/sho...t=23597&page=3 (scroll to the bottom of the thread)

just goes to show that the midifighter is fast becoming a viable 'midi brain' alternative to the usual suspects...