I've found some decent sites (notably a DJ site that provided some excellent information on this).
His site furnishes information on connecting potentiometers (control knobs) and linear analog faders alongside digital switches (he suggests arcade switches which are cheap and available through Amazon...though you can use, footswitches, I imagine just fine).
Electronics supplies:
Teensy 2.0 USB development board
- I've tinkered around with UNO, Raspberry PI, and while these do provide working interfaces in developing something like a USB board (that is a board that plugs in through a USB serial interface), it isn't as arguably as easy and ready to go as the teensy board. UNO generally requires additional work (MIDI look back interface) and thus is not really a true USB Midi system. Though with UNO you can hack the microcontroller, but you'll lose USB write/to access in uploading Processing/Arduino scripts and you'll have to have a special programming device that actually writes using a dedicated serial port in uploading scripts for the microcontroller each time, you want to write scripts. Teensy on the other hand, has a dedicated switch for the purpose of micro controller programming versus its existing state (once programmed) that has the controller acting as a stand alone USB dedicated device, thus why I have liked it. If you are scared of soldering there are boards that are plug in ready to go with pin connectors already soldered on the board array, although I've found a little bit of practice and experience with soldering goes a long way. You could afix the teensy, for instance, as I have done using a backer prototype board and solder the leads on this board which potentially offers a disconnect remedy from the cheaper board if necessary.
-Soldering Iron and Desoldering pump
- Solder
-Resistors appropriate for LEDs (I've used a bit of a higher resistor on mine at 1k)
-Foot Switches - I've used single pole momentary foot pedal switches in my cases, connected to the digital output ports. You'll want to do a mock up test run on a bread board checking all channels before doing any of the soldering work. Here is a parts supplier for instance.
-LEDs (using 5 mm here)
-Some PCB prototype bread board - Arduino makes em and there are a whole host of options out there. If you get one, I may suggest especially if you are new to all this stuff, going with something like Single Side Copper Prototype Paper PCB Breadboard 2-3-5 Joint Hole at least. I've used a double sided board personally on my end. I do have another cheaper PCB prototype board (with teensy shown attached on this board), but in my opinion if you have no experience connecting the array from single hole entry to another (using copper wires in routing), it is slower work.
- Jumper cables, or wire - I like the jumper leads a bit better even if the cost is a bit more at the moment. I've personally found that a single lead (not coiled wire) seems to be quick and easy, though I'm sure pros have solutions on working with this stuff. I have male to female socket types for my cable endpoints.
-Cable stripper, cable snips, and pliers (needle nose and stuff like this).
A short quick experience on soldering: A third hand tool may come in handy if you have it especially in maintaining a board's position while soldering leads. Guides out there provide excellent information, but a short synopsis is as follows: Hold the tip of the soldering iron on the copper point on the bread board with cable lead touching the tip of the iron. Gently stroke the cable lead tip with the solder, once you see the solder melting release gently the solder from the cable lead, and then remove the soldering iron. The solder will be attracted to the heat source (which is the tip of the iron and where thermal conductivity is greatest which is on both the cable lead and at the PCB breadboard copper connection point. The PCB board is not nearly as much of a thermal conductor and thus if you don't overly supply solder, the solder will be drawn to the copper on the PCB board and the jumper cable and potentially to your iron. Ideally there is at most a surface bubble above the board with the cable lead end poking through this, and certainly not too much of a bubble that has bridged on the array especially on the row side of the board (where as in breadboard fashion) the rows are not interconnected and you have accidentally bridged rows. A double sided PCB board will draw solder to both ends of the connection hole.
One you feel the soldering is completed well enough, snip off excess wire.
Watch it with the iron and components (especially plastic ones). Too much heat can and may damage component switches.
You'll need Arduino software and Teensyduino
Programming the micro controller for USB Midi and setting this up for your Midi controller device:
All is written here
I've used this function for control change outs:
The diagram that I've used is pretty simple. Full signal from the digital out goes to the switch from each digital connector on the Teensy board while LEDs will have to have resistance applied to their respective digital signal out channels. I run from the digital out series. (Inputting the signal to the big PCB prototype board from the Teensy board) then on a given row. In series this is InputTeensy>OuttoSwtich>Capacitor (1k)>OutToLED for each row on the main PCB Prototype breadboard. I use a negative rail on the Main PCB prototype bread board (shown to the left in image above) in connecting to GND to all ground terminals on LED and switches alike.
The nice thing with Teensy is that once it is programmed, it is recognized immediately by Ableton which furnishes a native interface to the Teensy driver shown in Ableton properties> MIDI where you can through Ableton enable input and output of the USB Midi device, that is again, it is just like any midi device you buy in store and plug and play in so far as usage...the Teensy people eliminate all the USB driver programming stuff so you don't have to mess with any of this stuff.
The goodnews is if you have any experience with Processing you may feel welcome with Arduino's IDE interface which is basically the same deal. In fact Processing.org provides serial interfacing references for UNO, Raspberry PI and many devices like this.
His site furnishes information on connecting potentiometers (control knobs) and linear analog faders alongside digital switches (he suggests arcade switches which are cheap and available through Amazon...though you can use, footswitches, I imagine just fine).
Electronics supplies:
Teensy 2.0 USB development board
- I've tinkered around with UNO, Raspberry PI, and while these do provide working interfaces in developing something like a USB board (that is a board that plugs in through a USB serial interface), it isn't as arguably as easy and ready to go as the teensy board. UNO generally requires additional work (MIDI look back interface) and thus is not really a true USB Midi system. Though with UNO you can hack the microcontroller, but you'll lose USB write/to access in uploading Processing/Arduino scripts and you'll have to have a special programming device that actually writes using a dedicated serial port in uploading scripts for the microcontroller each time, you want to write scripts. Teensy on the other hand, has a dedicated switch for the purpose of micro controller programming versus its existing state (once programmed) that has the controller acting as a stand alone USB dedicated device, thus why I have liked it. If you are scared of soldering there are boards that are plug in ready to go with pin connectors already soldered on the board array, although I've found a little bit of practice and experience with soldering goes a long way. You could afix the teensy, for instance, as I have done using a backer prototype board and solder the leads on this board which potentially offers a disconnect remedy from the cheaper board if necessary.
-Soldering Iron and Desoldering pump
- Solder
-Resistors appropriate for LEDs (I've used a bit of a higher resistor on mine at 1k)
-Foot Switches - I've used single pole momentary foot pedal switches in my cases, connected to the digital output ports. You'll want to do a mock up test run on a bread board checking all channels before doing any of the soldering work. Here is a parts supplier for instance.
-LEDs (using 5 mm here)
-Some PCB prototype bread board - Arduino makes em and there are a whole host of options out there. If you get one, I may suggest especially if you are new to all this stuff, going with something like Single Side Copper Prototype Paper PCB Breadboard 2-3-5 Joint Hole at least. I've used a double sided board personally on my end. I do have another cheaper PCB prototype board (with teensy shown attached on this board), but in my opinion if you have no experience connecting the array from single hole entry to another (using copper wires in routing), it is slower work.
- Jumper cables, or wire - I like the jumper leads a bit better even if the cost is a bit more at the moment. I've personally found that a single lead (not coiled wire) seems to be quick and easy, though I'm sure pros have solutions on working with this stuff. I have male to female socket types for my cable endpoints.
-Cable stripper, cable snips, and pliers (needle nose and stuff like this).
A short quick experience on soldering: A third hand tool may come in handy if you have it especially in maintaining a board's position while soldering leads. Guides out there provide excellent information, but a short synopsis is as follows: Hold the tip of the soldering iron on the copper point on the bread board with cable lead touching the tip of the iron. Gently stroke the cable lead tip with the solder, once you see the solder melting release gently the solder from the cable lead, and then remove the soldering iron. The solder will be attracted to the heat source (which is the tip of the iron and where thermal conductivity is greatest which is on both the cable lead and at the PCB breadboard copper connection point. The PCB board is not nearly as much of a thermal conductor and thus if you don't overly supply solder, the solder will be drawn to the copper on the PCB board and the jumper cable and potentially to your iron. Ideally there is at most a surface bubble above the board with the cable lead end poking through this, and certainly not too much of a bubble that has bridged on the array especially on the row side of the board (where as in breadboard fashion) the rows are not interconnected and you have accidentally bridged rows. A double sided PCB board will draw solder to both ends of the connection hole.
One you feel the soldering is completed well enough, snip off excess wire.
Watch it with the iron and components (especially plastic ones). Too much heat can and may damage component switches.
You'll need Arduino software and Teensyduino
Programming the micro controller for USB Midi and setting this up for your Midi controller device:
All is written here
I've used this function for control change outs:
usbMIDI.sendControlChange(control, value, channel)
Channel is by default fine at 1.
Control can be any one of the control change channels. If you are using other USB MIDI or
MIDI devices,you'll want to check with these devices when programming your controller to
ensure avoiding conflict signaling. I've chosen non dedicated channels like 14 to 24
for my control outs for each given switch.
Value can take a range of 0 to 127 (your choice).You'll be using the digital outs on the Teensy board (array just below GND (ground) side). These digital outs are sequentially from 0 to 10 on the left with the bottom most out on the teensy board with the mini USB jack position in the upside and the component side of the board facing you. The first digital connector is nearest to the GND connector on the board (digital 0)
The diagram that I've used is pretty simple. Full signal from the digital out goes to the switch from each digital connector on the Teensy board while LEDs will have to have resistance applied to their respective digital signal out channels. I run from the digital out series. (Inputting the signal to the big PCB prototype board from the Teensy board) then on a given row. In series this is InputTeensy>OuttoSwtich>Capacitor (1k)>OutToLED for each row on the main PCB Prototype breadboard. I use a negative rail on the Main PCB prototype bread board (shown to the left in image above) in connecting to GND to all ground terminals on LED and switches alike.
The nice thing with Teensy is that once it is programmed, it is recognized immediately by Ableton which furnishes a native interface to the Teensy driver shown in Ableton properties> MIDI where you can through Ableton enable input and output of the USB Midi device, that is again, it is just like any midi device you buy in store and plug and play in so far as usage...the Teensy people eliminate all the USB driver programming stuff so you don't have to mess with any of this stuff.
The goodnews is if you have any experience with Processing you may feel welcome with Arduino's IDE interface which is basically the same deal. In fact Processing.org provides serial interfacing references for UNO, Raspberry PI and many devices like this.
No comments:
Post a Comment