English Version
Spanish Version
French Version
External MIDIbox Extensions
Not only pots or faders can be connected to the analog and digital inputs of the MIDIbox, but nearly everything which delivers a voltage between 0V and 5V.
This page is a tray for all those circuits, invented by the MIDIbox Users. Get inspired and feel free to contact me if you would like to publish your own extensions!
Converting drum pad signals to MIDI events requires a lot of additional programming effort, but Admir Salahovic did it. Find his frequently updated homepage under http://edrum.info
Expression Pedal Connector by Matteo Bosi
This circuit illustrates how to connect an Expression Pedal to the MIDIbox: expressionpedal.gif (32 k)
A Breath Controller circuit, also made by Matteo Bosi
Design by Matteo Bosi (2002) matteo@alchemystudio.it - Visit my site and listen to my music at http://www.alchemystudio.it
NOTE: I take NO responsibility for any damage that can occur to you or to your
instrumentation while you are building or using this addon (even if it is due
to an error in this documentation). I'm not a master in electronic, so perhaps
there is a better way to design this circuit and obtain a better efficiency.
However, I assure this schematic works fine. Do not complain with me if the
results obtained by using this schematics don't suit your taste!! Instead, contact
me and let's try togeter to resolve the problems! Current schematic is 1.0,
and may be improved in the future (I hope!). if you have any question or suggestion,
please write to matteo@alchemystudio.it
I would like to thank very much Ian Fritz (ijfritz@earthlink.net),
designer of the "Stealth
Wind Controller", who helped me in choosing the sensor and in electronic
design. I would also like to thank Thorsten Klose (you should know where to
find him!) , MIDIBOX creator, for his wonderful MIDI projects and all the help
he gave to me.
This file describes you how to build a breath controller (BC) addon for Thorsten
Klose's Midibox. My BC is something that converts the breath you blow in a small
tube into an electrical voltage, and drives this signal directly to one of the
Midibox analog input. You will use the BC instead of one pot of your midibox.
I designed also a "switch circuit" that allows you to choose to use a pot or
my BC, so that when you don't need it you will not loose a pot! How do you use
a BC and why you should build it? I decided to go on this design basically for
fun and for personal interest, but also because I very often use sampled breath
instruments in my songs (flutes, trumpets...). With a BC you can add a LOT of
realism to your sequenced parts, basically because when you use the BC it's
like to play a "real" wind instrument. The feel you obtain in this way is unique!
Often, you assign the BC to the MIDI control 2 (breath controller) or to MIDI
control 11 (expression). In this way, with the BC you can vary the volume of
the note played just by blowing more or less into the tube of the BC, as you
were playing a real wind instrument. More advanced sample programming let's
you control also the filter and so, the more you blow, the more higher frequency
you add, just like in real life. If you search on web about resources and tips
about BC, you'll learn in how many different way you can use it, both in sequencing
and in live playing. The main part of this design is the pressur sensor SDX01G2,
built by Sensym (you can find infos at www.sensortechnics.com
or by typing SDX01G2 in google
for example). It measure a gage pressure in the range of 0-1 psi (0-60 mbar)
and output a signal that go from 0 to 18 mV. You can view its specification
by downloading the datasheet file. This sensor works
in "common mode". It has two outputs (+ and -): when you apply a power supply,
its output raises to about 3V and, when pressure is applied to the sensor, the
+ output will raise by 0-18mV (proportional to the pressure applied) and the
- output will diminish by 0-18mV. All this electrical characteristic apply when
the sensor is supplied with 20Vcc. You can use a lower power supply, and these
voltage will vary proportionally. When you breath into a tube without much effort,
you produce a pressure that is far below the maximum range measured by this
sensor (60mbar), so the SDX01G2 is perfect for the purpose of measuring your
breath pressure. The circuit is basically an instrumentation amplifier followd
by a second gain stage with an offset calibration. You can download all the
schematics here and download
the list of all components here
The file Breath_controller_Schematics1
shows how to build the power supply (I used a 12V power supply, mainly because
I plan to build Admir Edrums, and it will require that power supply). This is
a classic schematics (I think) so no comment is required. Just be sure to connect
the right polarity of the electrolitic and tantal capacitor! The second drawing
of this file shows the connections of the sensor itself (you should also see
the datasheet). the out + and out - will be connected
directly to pins 3 and 5 of LM324 op-amp (see next) The last drawing show how
to connect the BC to your midibox, with a two way switch that lets you choose
between the use of a pot and the use of the BC. You need to bring the 0V (ground)
and the 5V FROM Midibox TO the BC unit and the BC signal out FROM BC unit TO
Midibox. I used a stereo jack for this purpose (see photos - coming soon!).
Practically, you need to remove the wire that go from a pot to the 4051 (at
the pot side!) and bring this wire to the switch. Then, you connect the other
part of the switch to the signal coming from BC unit, and then solder a wire
form the central pin of the switch to the 4051 input you just removed. The file
Breath_controller_Schematics2
is the BC unit itself. I will not explain all the circuit, but will give just
some hints. There are two amplification stage, the first (the three op-amps
on the left) is an instrumentation amplifier with a variable gain, defined by
the pot P1 (perhaps the gain on this stage should be a little higher, but schematics
are just at 1.0!). The basic idea of this amp is that resistors R1,R3,R4,R5,R6,R7
should be exactly the same. I used 5 100K resistor at 1% for R1,R3,R4,R5,R6
and a 82K + a 22K trimmer for what should be R7 (perhaps it's better also here
a 100K 1% resistor!). By using the trimmer you sohuld adjust the amplification
offset of the first stage gain. The amplified signal is then drived to a second
amplificator (the op-amp on the far right) that is a differential amplifier.
With the use of P3 trimmer you can set the final offset and also obtain a "blowing
threshold", i.e. the voltage (your controller number output from midibox) begin
to raise only when a certain amount of pressure is applied to the sensor. The
final amplified signal is then drived to a clamping diode that set the 5V reference
from the midibox. I used 8V supply, so that the maximum output from the LM324
op-amp is about 6,8V. We cannot apply this voltage to a PIC analog input, because
it will be damaged. DON'T FORGET THE DIODE!!! This clamping design is similar
to the one used by Thorsten with his LFO unit. I'm not quite sure about the
usefulness of the R12 resistor, but anyway, I mounted it and everything works!
The last file (Breath_controller_connections)
shows how I have arranged all the components into a normal board.
To show how my BC works I provided 3 files. The first (trumpets.mid)
is just a MIDI example of the data my unit gives out. I assigned my BC to CC2,
so you can view, along the notes I played with my midikeyboard, also the CC
of the breath controller (CC2). Please note that the MIDI is recorded "live",
with very few correction in my sequencer. The CC2 messages are recorded with
my BC unit WHILE I was playing the trumpet sequence - a simple improvisation
so, please, no comment about the music itself! ;-) The second is the file is
Trumpets_withoutBC.mp3 that is just a "rendering" of the midifile WITHOUT
the use of the BC control change messages. I used a professional trumpets bank,
found in a samples CD i obtain with my soundcard Creamware Pulsar. The sound
bank is used "as is", without any additional programming in the sampler. The
third file Trumpets_withBC.mp3 show you the
result obtained by using the BC along with a basic sample programming. The sampler
used is the Creamware STS3000. I assigned the CC2 to the filter cutoff frequency
AND the loudness controll. The more high is the CC2 data, the more the sample
is played loud and the more high is the filter cutoff frequency. Again, I want
to remeber that the BC unit was played LIVE, while hitting the notes on the
keyboard!
More mp3 and MIDI examples are coming, as soon as I'll compose new songs ;-)
Matteo Bosi
P.S.: here are some photos of the breath controller: 1, 2, 3, 4, 5, 6, 7
3 LFO Extension (and CV Input example) by Thorsten Klose
This is primary a learning example that demonstrates how to connect circuits with a symmetrical output voltage (here: -12V to 12V) to the MIDIbox without the danger of blowing up the PIC. Never apply voltages below 0V or above 5V to the analog/digital input pins of the PIC!
Note that the sound itself is not comming from the LFOs, but from a MIDI synthesizer. The LFOs are used to modulate the sound parameters like VCO Frequency, CutOff Frequency, Resonance, Sync., Effect parameters of the synth. This is achieved by connecting the LFOs to one of the 8/16/64 analog inputs of the MIDIbox. The box samples the curve comming from the LFOs and sends out a continuous MIDI controller stream to the synthesizer. It's like you are twisting the knobs by yourself, but the LFOs are faster than your fingers and they are working full automatically. A word to Example #6: it demonstrates that this extension can be used as a nice "random rhythm- and scratching machine" ;-)
- lfo_schematic.pdf (14 k) Schematic of the LFO extension (+Mixer and Interface Unit)
- lfo_powersupply.pdf (6 k) +/- 12 V Power Supply
- lfo_indicator.gif (5k) simple LED indicator for the LFOs by Peter
- lfo_pcb.zip (8k) PCB Layout by Olaf van Kampen
- Using one LFO: 1 (567 k)
- Using three LFOs: 2 (485 k) 3 (113 k) 4 (98 k) 5 (102 k) 6 (1065 k)
- breadboard.jpg (31 k) The circuit on a breadboard
- ICL8038 Datasheet
- LM324 Datasheet
Last update: 2024-05-08
Copyright © 1998-2023, Thorsten Klose. All rights reserved.
|