Subversion Repositories svn.mios

Rev

Rev 1107 | Rev 1117 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1107 tk 1
HEADER 3 MIDIbox NG User Manual --- Standard Control Surface
2
 
3
<P CLASS=INFO><B><A HREF="midibox_ng_manual.html">Back to main page...</A></B></P>
4
 
5
<H1>MIDIbox NG</H1>
6
<H1>User Manual --- Standard Control Surface</H1>
7
 
1113 tk 8
<P CLASS=INFO>The optional Standard Control Surface (SCS) allows to edit some (but not all) configuration values without the need of a computer.
1107 tk 9
 
10
<center><img src="midio128/midio128_v3_cs.jpg" width="550" height=554></IMG></center>
11
 
12
 
13
<H2> <IMG SRC="images/bullet.gif" ALT=""> Hardware: the original SCS </H2>
14
 
15
<P CLASS=INFO>Actually we've two ways how to access the SCS menu system. First let's describe the original SCS:</P>
16
 
1113 tk 17
<P CLASS=INFO>A <B>detented</B> rotary encoder and 6 buttons are directly connected to J10 of the MBHP_CORE_LPC17 module to control the menu system:<BR>
1107 tk 18
<a href="midibox_ng/mbng_scs.pdf">Schematic of the Standard Control Surface</A><BR>
19
In addition a LCD is required. The recommended size is at least 2x20! Graphical LCDs (GLCDs) are supported as well.</P>
20
 
21
<P CLASS=INFO>The <A HREF="midio128.html">MIDIO128 project</A> uses the same control surface, which means that users who built a MIDIO128 can upload the MIDIbox NG firmware and control it with their existing hardware, and vice versa!
22
 
23
 
24
<P CLASS=DESC>In the main page (which is active after power-on) it's possible to emulate <A HREF="midibox_ng_manual_ngc.html">BUTTON and ENC</A> functions, which means that a very basic MIDI controller with a rotary encoder + 6 buttons could be created without the need to attach a <A HREF="mbhp_din.html">MBHP_DIN</A> module to the core!</P>
25
 
26
<P CLASS=DESC>A premade PCB layout for the SCS doesn't exist yet, but if you are interested to create one: step forward! :-)</P>
27
 
28
 
29
<H2> <IMG SRC="images/bullet.gif" ALT=""> Hardware: the emulated SCS </H2>
30
 
31
<P CLASS=DESC>Alternatively, it's possible to access the SCS menu system from buttons/encoder which are connected to a <A HREF="mbhp_din.html">MBHP_DIN</A> module.</P>
32
 
33
<P CLASS=DESC>In this case, Meta events have to be used to trigger the SCS functions. The events could be assigned to dedicated buttons/encoder, but also to controllers which are part of a bank (means: access the SCS by pressing your self-defined shift button which switches to a different bank).
34
 
35
<P CLASS=DESC>Example configuration:
36
<TT><PRE style="margin-left:20px">
37
EVENT_BUTTON id=  1  type=Meta   meta=ScsSoft1 range=0:1
38
EVENT_BUTTON id=  2  type=Meta   meta=ScsSoft2 range=0:1
39
EVENT_BUTTON id=  3  type=Meta   meta=ScsSoft3 range=0:1
40
EVENT_BUTTON id=  4  type=Meta   meta=ScsSoft4 range=0:1
41
EVENT_BUTTON id=  5  type=Meta   meta=ScsShift range=0:1
42
EVENT_BUTTON id=  6  type=Meta   meta=ScsMenu  range=0:1
43
 
44
# if dec/inc buttons should be used:
45
# DEC:
46
EVENT_BUTTON id=  7  type=Meta   meta=ScsEnc   range=63:63 button_mode=OnOnly
47
# INC:
48
EVENT_BUTTON id=  8  type=Meta   meta=ScsEnc   range=65:65 button_mode=OnOnly
49
 
50
# if a rotary encoder should be used:
51
ENC n=  1   sr= 15 pins=0:1   type=detented3
52
EVENT_ENC    id=  1  type=Meta   meta=ScsEnc   range=0:127 enc_mode=40Speed
53
</PRE></TT>
54
 
55
 
56
<H2> <IMG SRC="images/bullet.gif" ALT=""> Main Page </H2>
57
 
58
<P CLASS=INFO>In the main page (which is active after power-on) the SCS menu system is inactive. Instead, MIDIbox NG will display the strings which are printed by the controllers as specified in the <A HREF="midibox_ng_manual_ngc.html">.NGC file</A>.</P>
59
 
60
<P CLASS=INFO>By pressing the EXIT button the menu system will be entered. Press it again to exit the menu system.</P>
61
 
62
<P CLASS=INFO>The SOFT1..4 and SHIFT button, as well as the encoder have no effect in the main page by default, but they can emulate controller ids!
63
 
64
<P CLASS=INFO>E.g. with following configuration, the SOFT buttons can be used to select a bank, and the SHIFT button is used to enable the FAST mode for rotary encoders:
65
 
1113 tk 66
<TT><PRE style="margin-left:20px; font-size:8pt">
1107 tk 67
# the SCS should emulate button/enc functions in main page
68
SCS soft1_button_emu_id=2000 \
69
    soft2_button_emu_id=2001 \
70
    soft3_button_emu_id=2002 \
71
    soft4_button_emu_id=2003 \
72
    shift_button_emu_id=2004 \
73
    enc_emu_id=2000
74
 
75
 
76
# Controlled from SCS buttons at J10 in main page
77
EVENT_BUTTON id=2000  type=Meta   meta=SetBank   button_mode=OnOnly range=1:1  lcd_pos=1:17:1 label="Bnk%q"
78
EVENT_BUTTON id=2001  type=Meta   meta=SetBank   button_mode=OnOnly range=2:2  lcd_pos=1:17:1 label="Bnk%q"
79
EVENT_BUTTON id=2002  type=Meta   meta=SetBank   button_mode=OnOnly range=3:3  lcd_pos=1:17:1 label="Bnk%q"
80
EVENT_BUTTON id=2003  type=Meta   meta=SetBank   button_mode=OnOnly range=4:4  lcd_pos=1:17:1 label="Bnk%q"
81
EVENT_BUTTON id=2004  type=Meta   meta=EncFast:4 button_mode=OnOff  range=0:2
82
 
83
# the SCS encoder at J10 just increments/decrements the bank
84
# redundant function - could be changed in future
85
EVENT_ENC    id=2000  type=Meta   meta=SetBank   range=1:4
86
</PRE></TT>
87
 
88
<P CLASS=INFO>Of course, the buttons/encoders could also trigger any other action which is controllable by an EVENT_* definition. E.g., they could also send MIDI events.
89
 
90
<P CLASS=INFO>In fact, MIDIbox NG configurations are thinkable which only only consist of these SCS components!</P>
91
 
92
 
93
<H2> <IMG SRC="images/bullet.gif" ALT=""> Menu Pages </H2>
94
 
95
<P CLASS=DESC>The SCS menu will be entered by pressing the EXIT button in the main page:<BR>
1113 tk 96
<IMG SRC="midibox_ng/cs/root1.gif" width=422 height=38 ALT="Screen"></IMG><BR>
1107 tk 97
The pages are described in more details below.<BR>
98
Note that the 2x20 LCD will only display 4 of these items at once. Use the rotary encoder to scroll through the menu, and use a soft button to select the item above the button. Use the Exit button to get back to the previous page.</P>
99
 
100
<P CLASS=DESC>By pressing the Shift button a special page will pop up:<BR>
101
<IMG SRC="midibox_ng/cs/shift1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
102
<UL CLASS=CL>
103
  <LI><B>Clk:</B> <I>no function yet!</I>
104
  <LI><B>BPM:</B> <I>no function yet!</I>
105
  <LI><B>DOUT:</B> allows to disable all DOUT pins (like "All Notes Off") from any page
106
  <LI><B>MSD:</B> enables/disables the Mass Storage Device driver as descriped in the "Integrated SD Card Reader" topic
107
</UL>
108
 
1113 tk 109
 
110
<H2> <IMG SRC="images/bullet.gif" ALT=""> Var(iable) </H2>
111
 
1107 tk 112
<IMG SRC="midibox_ng/cs/var1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
1113 tk 113
<P CLASS=DESC>The Var page allows to change SysEx dump related variables directly from the control surface:
1107 tk 114
<UL CLASS=CL>
115
  <LI><B>Dev:</B> the device number <I>^dev</I>
116
  <LI><B>Pat:</B> the patch number <I>^pat</I>
117
  <LI><B>Bnk:</B> the bank number <I>^bnk</I>
118
  <LI><B>Ins:</B> the instrument number <I>^ins</I>
119
  <LI><B>Chn:</B> the channel number <I>^chn</I>
120
</UL>
121
 
122
<P CLASS=DESC>The variables could also be used for other purposes of course, they are only placeholders for typical usecases.
123
 
124
 
1113 tk 125
<H2> <IMG SRC="images/bullet.gif" ALT=""> Router </H2>
126
 
1107 tk 127
<IMG SRC="midibox_ng/cs/rout1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
1113 tk 128
<P CLASS=DESC>The Router page allows to configure the integrated MIDI Router.<BR>
1107 tk 129
The router consists of 16 "nodes".<BR>
130
Each node can be connected to an individual source and destination port.<BR>
131
A node is activated by selecting a source MIDI channel != "--", e.g. 1..16 or All (for all channels).<BR>
132
The node will forward a MIDI event to the destination port. Either to the original channel ("All"), or to a changed channel (1..16)
133
 
134
<UL CLASS=CL>
135
  <LI><B>Node:</B> the selected router node (1..16)
136
  <LI><B>SrcP:</B> the source port
137
  <LI><B>Chn.:</B> the source channel ("--" to disable, 1..16 or "All")
138
  <LI><B>DstP:</B> the destination port
139
  <LI><B>Chn.:</B> the destination channel ("--" to disable, 1..16 to change the channel, or "All" to keep it untouched)
140
</UL>
141
 
142
 
1113 tk 143
<H2> <IMG SRC="images/bullet.gif" ALT=""> OSC </H2>
1107 tk 144
 
145
<P CLASS=DESC>Aside from the possibility to configure Ethernet and OSC Server/Client from the MIOS Terminal as described at the <A HREF="midibox_osc.html">MIDIbox OSC page</A>, it's also possible to change the settings from the control surface:<BR>
146
<IMG SRC="midibox_ng/cs/osc1.gif" width=422 height=38 ALT="Screen"></IMG><BR>
147
allows to configure the OSC ports 1..4.<BR>
148
Each OSC port has an individual remote IP, a remote port (to which OSC packets will be sent) and a local port (from which OSC packets will be received). Various packet formats are supported, additional modes can be added in future on request.
149
 
150
<UL CLASS=CL>
151
  <LI><B>Port:</B> the selected OSC port (1..4)
152
  <LI><B>Remote IP:</B> the remote IP assigned to the OSC port (e.g. the IP of your iPad)
153
  <LI><B>Remote Port:</B> the remote port to which OSC packets will be sent
154
  <LI><B>Local Port:</B> the local port from which OSC packets will be received
155
  <LI><B>Mode:</B> following transfer formats are currently supported:
156
    <UL CLASS=CL>
157
      <LI><B>MIDI:</B> MIDI events are bundled into MIDI elements
158
      <LI><B>Text Msg (Integer):</B> uses human readable pathes, values are in integer format
159
      <LI><B>Text Msg (Float):</B> uses human readable pathes, values are in float format
160
      <LI><B>MPP (Pianist Pro):</B> selects format which is used by <A HREF="http://moocowmusic.com/PianistPro/index.html" TARGET="_blank">Pianist Pro</A>
161
      <LI><B>TOSC (TouchOSC):</B> selects format which is used by <A HREF="http://hexler.net/software/touchosc" TARGET="_blank">TouchOSC</A>
162
    </UL>
163
</UL>
164
</P>
165
 
1113 tk 166
<P CLASS=DESC>See the <A HREF="midibox_osc.html">MIDIbox OSC chapter</A> for more details about the OSC protocol.</P>
1107 tk 167
 
1113 tk 168
 
169
<H2> <IMG SRC="images/bullet.gif" ALT=""> Network </H2>
170
 
1107 tk 171
<IMG SRC="midibox_ng/cs/netw1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
1113 tk 172
<P CLASS=DESC>The Network page allows to configure the Ethernet interface of the <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> module.
1107 tk 173
 
174
<UL CLASS=CL>
175
  <LI><B>DHCP:</B> if enabled (default), the Host IP, Network Mask and Gateway address will be requested from a DHCP Daemon (e.g. your wireless router) automatically whenever the ethernet cable is connected. The configuration could take some seconds depending on the responsiveness of your router.
176
  <LI><B>IP Host:</B> if DHCP on: displays the current IP address, if DHCP off: allows to enter the IP address of your MIDIbox NG manually
177
  <LI><B>Netmask:</B> if DHCP on: displays the current netmask, if DHCP off: allows to enter the netmask of your MIDIbox NG manually
178
  <LI><B>IP Gateway:</B> if DHCP on: displays the current gateway address, if DHCP off: allows to enter the gateway of the ethernet network manually
179
</UL>
180
 
1113 tk 181
 
182
<H2> <IMG SRC="images/bullet.gif" ALT=""> Monitor </H2>
183
 
1107 tk 184
<IMG SRC="midibox_ng/cs/mon1.gif" width=722 height=38 ALT="Screen"></IMG><BR>
1113 tk 185
<P CLASS=DESC>The Monitor page shows all IN ports at the upper line, and OUT ports at the lower line.</P>
1107 tk 186
 
187
<P CLASS=DESC>Whenever an event is received or sent, the appr. item will show the event for a short moment.<BR>
188
This gives you a great overview of the MIDI activity, especially to analyze the current track and MIDI router setup.</P>
189
 
190
 
1113 tk 191
 
192
<H2> <IMG SRC="images/bullet.gif" ALT=""> Learn </H2>
193
 
194
<P CLASS=DESC>The MIDI Learn function allows to assign a received MIDI event (Note/Aftertouch/CC/Program Change/PitchBender) to a controller (button/encoder/pot/motorfader). In NRPN mode it's even possible to assign an incoming NRPN event. In this learn mode, CC#6/38/98/99 will be transformed to an NRPN and can't be learned "standalone", therefore it's provided as a separate selection.
195
 
196
<P CLASS=DESC>The usage is simple:<BR>
197
<IMG SRC="midibox_ng/cs/learn1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
198
<P CLASS=DESC>Select either "Common" or "NRPN" to start the learning procedure. Thereafter following screen will appear:<BR>
199
<IMG SRC="midibox_ng/cs/learn2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
200
which tells you that MBNG is waiting for an incoming MIDI event.
201
 
202
<P CLASS=DESC>The incoming MIDI event should be sent over the full range (e..g. 0...127) to define the min/max value of the event which should be learnt:
203
<IMG SRC="midibox_ng/cs/learn3.gif" width=242 height=38 ALT="Screen"></IMG><BR>
204
Once the values have been received, just move the controller (button/encoder/pot/motorfader) to which the new event should be assigned.</P>
205
 
206
<P CLASS=DESC>-&gt; done!</P>
207
 
208
<P CLASS=DESC>Please note that it's also possible to assign the MIDI Learn function to a dedicated button by using a <A HREF="midibox_ng_manual_ngc.html">Meta Function</A>.</P>
209
 
210
<H2> <IMG SRC="images/bullet.gif" ALT=""> Disk </H2>
211
 
1107 tk 212
<IMG SRC="midibox_ng/cs/disk1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
1113 tk 213
<P CLASS=DESC>The Disk page allows to store and restore a patch on SD Card of a given name.
1107 tk 214
 
215
<UL CLASS=CL>
216
  <LI><B>Load:</B> opens a filename browser for all .MIO files found on SD Card:<BR>
217
      <IMG SRC="midibox_ng/cs/disk2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
218
      Select one of these files to load the patch (or press the Exit button to cancel this operation).
219
  <LI><B>Save:</B> enter the filename with the rotary encoder:<BR>
220
      <IMG SRC="midibox_ng/cs/disk3.gif" width=242 height=38 ALT="Screen"></IMG><BR>
221
      Press "SAVE" to store the patch (or press the Exit button to cancel this operation).
222
</UL>
223
 
224
 
225
<H2> <IMG SRC="images/bullet.gif" ALT=""> Planned Features </H2>
226
 
227
<P CLASS=INFO>It's planned to store/restore "snapshots" from the SCS, which allow to recall controller values (resp. SysEx patches) from files stored on SD Card.</P>
228
 
229
FOOTER