Subversion Repositories svn.mios

Rev

Rev 1113 | Go to most recent revision | Details | 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
 
8
<P CLASS=INFO>The optional control surface allows to edit some (but not all) configuration values without the need of a computer.
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
 
17
<P CLASS=INFO>A rotary encoder and 6 buttons are directly connected to J10 of the MBHP_CORE_LPC17 module to control the menu system:<BR>
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
 
66
<TT><PRE style="margin-left:50px">
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>
96
<IMG SRC="midibox_ng/cs/root1.gif" width=362 height=38 ALT="Screen"></IMG><BR>
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
 
109
<P CLASS=DESC>The <B>Var(iable)</B> page:<BR>
110
<IMG SRC="midibox_ng/cs/var1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
111
allows to change SysEx dump related variables directly from the control surface:
112
<UL CLASS=CL>
113
  <LI><B>Dev:</B> the device number <I>^dev</I>
114
  <LI><B>Pat:</B> the patch number <I>^pat</I>
115
  <LI><B>Bnk:</B> the bank number <I>^bnk</I>
116
  <LI><B>Ins:</B> the instrument number <I>^ins</I>
117
  <LI><B>Chn:</B> the channel number <I>^chn</I>
118
</UL>
119
 
120
<P CLASS=DESC>The variables could also be used for other purposes of course, they are only placeholders for typical usecases.
121
 
122
 
123
<P CLASS=DESC>The <B>Router</B> page:<BR>
124
<IMG SRC="midibox_ng/cs/rout1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
125
allows to configure the integrated MIDI Router.<BR>
126
The router consists of 16 "nodes".<BR>
127
Each node can be connected to an individual source and destination port.<BR>
128
A node is activated by selecting a source MIDI channel != "--", e.g. 1..16 or All (for all channels).<BR>
129
The node will forward a MIDI event to the destination port. Either to the original channel ("All"), or to a changed channel (1..16)
130
 
131
<UL CLASS=CL>
132
  <LI><B>Node:</B> the selected router node (1..16)
133
  <LI><B>SrcP:</B> the source port
134
  <LI><B>Chn.:</B> the source channel ("--" to disable, 1..16 or "All")
135
  <LI><B>DstP:</B> the destination port
136
  <LI><B>Chn.:</B> the destination channel ("--" to disable, 1..16 to change the channel, or "All" to keep it untouched)
137
</UL>
138
 
139
 
140
<P CLASS=DESC>The <B>OSC</B> page:<BR>
141
 
142
<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>
143
<IMG SRC="midibox_ng/cs/osc1.gif" width=422 height=38 ALT="Screen"></IMG><BR>
144
allows to configure the OSC ports 1..4.<BR>
145
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.
146
 
147
<UL CLASS=CL>
148
  <LI><B>Port:</B> the selected OSC port (1..4)
149
  <LI><B>Remote IP:</B> the remote IP assigned to the OSC port (e.g. the IP of your iPad)
150
  <LI><B>Remote Port:</B> the remote port to which OSC packets will be sent
151
  <LI><B>Local Port:</B> the local port from which OSC packets will be received
152
  <LI><B>Mode:</B> following transfer formats are currently supported:
153
    <UL CLASS=CL>
154
      <LI><B>MIDI:</B> MIDI events are bundled into MIDI elements
155
      <LI><B>Text Msg (Integer):</B> uses human readable pathes, values are in integer format
156
      <LI><B>Text Msg (Float):</B> uses human readable pathes, values are in float format
157
      <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>
158
      <LI><B>TOSC (TouchOSC):</B> selects format which is used by <A HREF="http://hexler.net/software/touchosc" TARGET="_blank">TouchOSC</A>
159
    </UL>
160
</UL>
161
</P>
162
 
163
<P CLASS=DESC>See the <A HREF="midibox_osc.html">MIDIbox OSC page</A> for more details about the OSC protocol.</P>
164
 
165
<P CLASS=DESC>The <B>Network</B> page:<BR>
166
<IMG SRC="midibox_ng/cs/netw1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
167
allows to configure the Ethernet interface of the <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> module.
168
 
169
<UL CLASS=CL>
170
  <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.
171
  <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
172
  <LI><B>Netmask:</B> if DHCP on: displays the current netmask, if DHCP off: allows to enter the netmask of your MIDIbox NG manually
173
  <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
174
</UL>
175
 
176
<P CLASS=DESC>The <B>Monitor</B> page:<BR>
177
<IMG SRC="midibox_ng/cs/mon1.gif" width=722 height=38 ALT="Screen"></IMG><BR>
178
shows all IN ports at the upper line, and OUT ports at the lower line.</P>
179
 
180
<P CLASS=DESC>Whenever an event is received or sent, the appr. item will show the event for a short moment.<BR>
181
This gives you a great overview of the MIDI activity, especially to analyze the current track and MIDI router setup.</P>
182
 
183
 
184
<P CLASS=DESC>The <B>Disk</B> page:<BR>
185
<IMG SRC="midibox_ng/cs/disk1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
186
allows to store and restore a patch on SD Card of a given name.
187
 
188
<UL CLASS=CL>
189
  <LI><B>Load:</B> opens a filename browser for all .MIO files found on SD Card:<BR>
190
      <IMG SRC="midibox_ng/cs/disk2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
191
      Select one of these files to load the patch (or press the Exit button to cancel this operation).
192
  <LI><B>Save:</B> enter the filename with the rotary encoder:<BR>
193
      <IMG SRC="midibox_ng/cs/disk3.gif" width=242 height=38 ALT="Screen"></IMG><BR>
194
      Press "SAVE" to store the patch (or press the Exit button to cancel this operation).
195
</UL>
196
 
197
 
198
<H2> <IMG SRC="images/bullet.gif" ALT=""> Planned Features </H2>
199
 
200
<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>
201
 
202
FOOTER