Adding Extra Switches
The All-In-One circuit can be easily tweaked for adding upto 4 extra switches that can be used for a panic button, a sustain pedal or other MIDI switches (very useful for SooperLooper!).
The unused pins in the MCP23017 are:
- pin 27 (GPA6)
- pin 28 (GPA7)
- pin 7 (GPB6)
- pin 8 (GPB7)
The first 2 are bound to INTA and the other 2 to INTB (but that is not really important to you, as it's handle by the zyncoder library ;-)
If you have a recent version of the MCP23017 you are lucky, as it includes an extra row-pin connector (SW-1) that allows to easily use this extra GPIO ports. If you don't, you have to solder your wires directly to the MCP23107 pins. Not difficult at all, but not really nice.
This is the pin assignment for the row-pin connector (SW-1):
- pin 1 => GND
- pin 2 => WiringPi GPIO 106
- pin 3 => WiringPi GPIO 107
- pin 4 => WiringPi GPIO 114
- pin 5 => WiringPi GPIO 115
You can check the schematic here:
So, if you have a recent version of All-In_Circuit, the only things you have to do is:
- Update your zynthian
- Solder the 5 row-pin connector to your All-In-One circuit
- Connect some kind of switch between pins 2-5 and pin 1 (GND). The switches are normally open, closing to pin 1 (GND).
- From the webconf tool, hardware menu, wiring section:
- Select MCP23017_EXTRA as wiring layout. This will set your ZYNTHIAN_WIRING_SWITCHES to “100,103,108,111,106,107,114,115”
- Configure the desired actions (advanced options). The UI active layer’s MIDI channel will be used for MIDI actions.