MIDI Boutique msmd4 User manual

msmd4 © JDP’2004 MIDI Gadgets Boutique 1
msmd4 MIDI-to-Stepper Motor decoder
* user’s guide *
1. Purpose
msmd4 MIDI–to-Stepper Motor decoder unit is intended for
controlling small unipolar 4-phase stepper-motors via MIDI
messages. The unit responds to MIDI Controller (a.k.a. CC –
Control Change) message, selected by user between 16 possible
CC messages. The list of supported CC messages is defined by
user on ordering. Otherwise, the Controllers 0-15 will be used.
The unit responds only to selected CC message received on user-
selected MIDI channel, ignoring the other MIDI messages on the
same MIDI channel as well as all channel messages for other
MIDI channels, also Realtime and SysEx messages. The MIDI-thru
output allows multiple units to be cascadded on the same MIDI
line, without using additional MIDI split units.
2. Brief schematic description.
The unit is based on pre-programmed single-chip micro
controller PIC16F628 by Microchip. The outputs are buffered
using output Darlington driver array ULN2803, capable to drive
loads at max.50V and max.500 mA. This way, wide range of
stepper motors can be attached and driven by unit. The MIDI
input is opto-insulated, according requirements of MIDI
standard. There is diode bridge and voltage regulator on board,
which allow the unit to be supplied with either AC or DC
voltage in range 7-12 Volts (12V recommended). There is 8-bit
jumperset for selecting MIDI channel and CC message to respond
to. In other words, the unit can be set to one of 16 user-pre-
defined CC messages received on any of 16 MIDI channels. The
rightmost (by picture) 4 jumpers are used for selecting MIDI
channel on which the unit should receive MIDI messages,
according Table 1. As well, the leftmost 4 jumpers are intended
for selecting the CC message to respond to.
There is 2-pin header on board, intended for wiring the
so-called end switch. The end switch may be normally open or
normally closed (depending on request). It signals the
controller that the motor has reached its Min (initial
position). The end switch may be electromechanical or
electronic (opto-coupler).
There are 4 buttons on board: Reset, Fwd, Bwd and Mem
button. Reset button is used to reset the unit, thus forcing
the motor to rewind back to the start position. The Fwd and Bwd
buttons are used for moving the motor’s rotor forth and back.

msmd4 © JDP’2004 MIDI Gadgets Boutique 2
The Mem button is used for memorizing the current position of
the motor as being the Max position. The span between the Min
and Max positions is mapped over the full MIDI controller’s
range (7 bit value covers range 0-127). Thus the motor will be
responding to full range of CC message’s value, covering the
full user-defined rotation angle. Allowed maximal rotation
angle is 3600– 1 step.
3. Connecting the unit.
The unit has two DIN5 female connectors for wiring the
unit to MIDI line, the first being MIDI input and the second
being MIDI-thru output. The MIDI output strictly repeats the
incoming MIDI signals, so that more than one unit can be
chained on single MIDI line without need of MIDI splitters.
There is standard co-axial 2.5 mm connector for power supply
and single-row, 6-pin header connector for the step Motor. Note
that the motor should be powered from external power supply.
There is internal spike-suppression diodes embedded into output
buffers that should be wired to external power supply that
powers the motor. Finally, the end-switch should be wired using
the proper pin header, labeled ‘Stopper’.
The unit itself (without stepper motor) can be powered by
any type of wall adaptor with output voltage AC/DC between 7
and 12 Volts, capable to source about 200 mA of current.
4. Settings
Selecting the MIDI channel
The unit recognizes only MIDI channel messages coming on
its own MIDI channel. All other messages are being ignored and
don’t affect the output status. The MIDI channel can be set
using the 4 rightmost jumpers in jumperset. Since the unit
retransmits the full MIDI traffic on its MIDI-thru output, more
than one cascadded units set on separate MIDI channels may be
used together, each receiving its own messages and ignoring
other’s messages.
Table 1. Selecting the MIDI channel
Jumperset
MIDI channel Bit5 Bit6 Bit7 Bit9
1 On On On On
2 On On On Off
3 On On Off On
4 On On Off Off
5 On Off On On
6 On Off On Off
7 On Off Off On
8 On Off Off Off

msmd4 © JDP’2004 MIDI Gadgets Boutique 3
9 Off On On On
10 Off On On Off
11 Off On Off On
12 Off On Off Off
13 Off Off On On
14 Off Off On Off
15 Off Off Off On
16 Off Off Off Off
Selecting the CC message to respond to.
The CC message may be selected using bits 1,2,3,4 of
Jumper set. Unless there is user-defined list of CC’s, the
supported CC’s are in range CC0-CC15.
Table 2. Selecting the CC message to respond to
JumpersetStarting
(ending)
MIDI note Bit1 Bit2 Bit3 Bit4
0 On On On On
1 On On On Off
2 On On Off On
3 On On Off Off
4 On Off On On
5 On Off On Off
6 On Off Off On
7 On Off Off Off
8 Off On On On
9 Off On On Off
10 Off On Off On
11 Off On Off Off
12 Off Off On On
13 Off Off On Off
14 Off Off Off On
15 Off Off Off Off
NOTES:
The Jumperset status is read once during device
initialization (Reset). The changes made will not take effect
before the next Reset.
The values shown in red color are the factory presets.
The standard functions of Jumperset bits shown above can be
changed on user request.
5. Device specifications
Size: 12 x 5.6 cm (4.7 x 2.2 inches);
Power supply: AC/DC 7-12V/200 mA;

msmd4 © JDP’2004 MIDI Gadgets Boutique 4
Standard opto-insulated MIDI input;
Buffered MIDI-thru output;
4 parallel N-P-N Darlington outputs for max.50V/max.500mA
each;
MIDI control: 16 contiguous or non-contiguous Control Change
messages, full 7-bit value range;
MIDI channel – user selectable: 1-16.
Table of contents
Other MIDI Boutique Media Converter manuals