Difference between revisions of "Adding Extra Switches"

From ZynthianWiki
Jump to navigation Jump to search
m
Line 1: Line 1:
The All-In-One circuit can be tweaked for having 4 extra switches that can be used for a sustain pedal, MIDI switches (very useful for SooperLooper!), or for sending some specific MIDI message (program change, etc.).  
+
The All-In-One circuit can be easily tweaked for having 4 extra switches that can be used for a sustain pedal, MIDI switches (very useful for SooperLooper!), or for sending some specific MIDI message (program change, etc.).
  
 
The unused pins in the MCP23017 are:
 
The unused pins in the MCP23017 are:
  
pin 27 (GPA6)
+
* pin 27 (GPA6)
pin 28 (GPA7)
+
* pin 28 (GPA7)
pin 7 (GPB6)
+
* pin 7 (GPB6)
pin 8 (GPB7)
+
* pin 8 (GPB7)
The first 2 are bound to INTA and the other 2 to INTB.
 
  
You can check the schematic:
+
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 ;-)
  
http://wiki.zynthian.org/images/4/44/Zynthian_allinone.sch.svg 8
+
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.  
  
the UI active layer’s MIDI channel will be used.
+
This is the pin assignment for the row-pin connector (SW-1):
  
So, the only things you have to do is:
+
* pin 1 => GND
 +
* pin 2 => WiringPi GPIO 106
 +
* pin 3 => WiringPi GPIO 107
 +
* pin 4 => WiringPi GPIO 114
 +
* pin 5 => WiringPi GPIO 115
  
* update your zynthian
+
You can check the schematic here:
  
* solder a 5 row-pin connector to your AllInOne circuit
+
http://wiki.zynthian.org/images/4/44/Zynthian_allinone.sch.svg
  
* connect some kind of switch between pin1-4 and pin5 (GND)
+
So, if you have a recent version of All-In_Circuit, the only things you have to do is:
  
* from the webconf tool, configure your wiring layout accordingly to the used pins: ZYNTHIAN_WIRING_SWITCHES’: “100,103,108,111,106,107,114”
+
* Update your zynthian
 
+
* Solder the 5 row-pin connector to your All-In-One circuit
==Here are the default pin assignments:==
+
* 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:
pin 1 => GND
+
** Select MCP23017_EXTRA as wiring layout. This will set your ZYNTHIAN_WIRING_SWITCHES to “100,103,108,111,106,107,114,115”
pin 2 => WiringPi GPIO 106
+
** Configure the desired actions (advanced options). The UI active layer’s MIDI channel will be used for MIDI actions.
pin 3 => WiringPi GPIO 107
 
pin 4 => WiringPi GPIO 114
 
pin 5 => WiringPi GPIO 115
 
 
 
And the current hardcoded configuration is like this:
 
 
 
PANIC switch (6th zynswitch) => pin 2 (106)
 
  short press => All Notes Off
 
  bold (long) press => All Sounds Off
 
Unused (6th zynswitch) => pin 3 (107)
 
Unused (7th zynswitch) => pin 4 (114)
 
MIDI CC64 (Sustain Pedal) (8th zynswitch) => pin 5 (115)
 
 
 
Switches are normally open, closing to pin 1 (GND).
 

Revision as of 17:09, 1 March 2019

The All-In-One circuit can be easily tweaked for having 4 extra switches that can be used for a sustain pedal, MIDI switches (very useful for SooperLooper!), or for sending some specific MIDI message (program change, etc.).

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:

http://wiki.zynthian.org/images/4/44/Zynthian_allinone.sch.svg

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.