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
1015 tk 1
HEADER 3 MIDIO128 V3
2
 
3
<H1>MIDIO128 V3</H1>
4
<H3>Created in July 2011</H3>
5
 
6
<P CLASS=INFO>The MIDIO128 application allows to midify keyboard instruments such as organs.<BR>
7
It can also be used for other purposes of course - whenever you are planning to trigger MIDI events with buttons, and/or to control LEDs (or relays) via USB, MIDI or Ethernet/OSC, have a closer look to the feature list!</P>
8
 
9
<P CLASS=INFO>While the <A HREF="midio128_v2.html">previous version</A> was based on the <A HREF="mbhp_core.html">expired PIC based core</A>, MIDIO128 V3 utilizes the new <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17 module</A> and provides much more features:
10
<UL CLASS=CL>
11
<LI> up to 16 8bit input shift registers (=128 pins, =4 x <A HREF="mbhp_din.html">MBHP_DINX4 modules)</A>
12
<LI> up to 16 8bit output shift registers (=128 pins, =4 x <A HREF="mbhp_din.html">MBHP_DOUTX4 modules)</A>
13
<LI> up to 16 scan matrices for up to 1024 pins/keys
1033 tk 14
<LI> up to 8 pots/faders directly connected to the core
15
<LI> up to 128 pots/faders connected to up to two <A HREF="mbhp_ainser64.html">MBHP_AINSER64 modules</A>.
1015 tk 16
<LI> USB MIDI port with much higher transfer rate (ca. 100x faster!) than common MIDI
1086 tk 17
<LI> Ethernet port to send/receive events via <A HREF="midibox_osc.html">OSC</A>
1016 tk 18
<LI> support for DHCP - connect the module to a wireless router without additional configuration
1015 tk 19
<LI> different OSC modes are prepared for popular PC/Mac/iPhone/iPad apps, extensions can be added on request
1017 tk 20
<LI> can also be used as USB/MIDI interface, or even as OSC/MIDI interface
1016 tk 21
<LI> integrated MIDI router with 16 configurable nodes
1015 tk 22
<LI> multiple patches are stored on SD Card
23
<LI> optional Control Surface for direct editing without a computer
24
<LI> but patches can also be edited on a computer, e.g. in an Excel or Open Office spreadsheet
1021 tk 25
<LI> integrated MIDI monitor for all Ports (USB/MIDI/OSC)
1113 tk 26
<LI> integrated MIDI File Player and Recorder
1021 tk 27
<LI> integrated SD Card Reader (Mass Storage Device driver for USB)
1015 tk 28
<LI> more features available on request
29
</UL>
30
 
1016 tk 31
<H2> <IMG SRC="images/bullet.gif" ALT=""> Hardware </H2>
32
 
33
<P CLASS=DESC>The MIDIO128 V3 application consists of:
34
<UL CLASS=CL>
35
  <LI>a <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> module
36
  <LI>up to 4 <A HREF="mbhp_din.html">MBHP_DINX4</A> modules
37
  <LI>up to 4 <A HREF="mbhp_dout.html">MBHP_DOUTX4</A> modules
38
  <LI>an (more or less) optional <A HREF="mbhp_sdcard.html">SD Card</A><BR>
1113 tk 39
      Without a SD Card patches can't be stored/restored, and MIDI files can't be played or recorded
40
  <LI>an optional 2x20 LCD + 6 buttons + detented rotary encoder for the control surface<BR>
1016 tk 41
      Without the control surface patches can only be edited with a PC/Mac
1021 tk 42
  <LI>up to 8 pots/faders connected to J5A/J5B of the core module
1016 tk 43
</UL>
44
 
1021 tk 45
<p></p><center><a href="midio128/midio128_v3_interconnections.pdf"><img src="midio128/midio128_v3_interconnections.png" width="550" height=425></a></center><p></p>
1016 tk 46
 
47
<H2> <IMG SRC="images/bullet.gif" ALT=""> Controlling Reed Relays </H2>
48
 
49
<P CLASS=INFO><A HREF="mbhp/mbhp_doutx1_reed_relays.pdf">This diagram</A> shows, how Reed Relays can be connected to the DOUT module.<P>
50
<P CLASS=INFO><A HREF="mbhp/mbhp_doutx1_reed_relays.jpg">This photo</A> shows the circuit together with a 74HC595 shift register (DOUT) built on a veroboard.</P>
51
 
52
<H2> <IMG SRC="images/bullet.gif" ALT=""> Scan Matrices </H2>
53
 
1066 tk 54
<P CLASS=INFO>MIDIO128 V3 allows to scan up to 16 8x8 matrices, which are connected between a DOUT and DIN shift register.</P>
55
<P CLASS=INFO><A HREF="midio128/midio128_v3_scanmatrix.pdf">Connection diagram for a single matrix</A> connected between <A HREF="mbhp_din.html">MBHP_DIN</A> and <A HREF="mbhp_dout.html">MBHP_DOUT</A> module.</P>
56
<P CLASS=INFO><A HREF="midio128/midio128_v3_dio_scanmatrix.pdf">Connection diagram for two matrices</A> connected to <A HREF="mbhp_dio_matrix.html">MBHP_DIO_MATRIX</A> module.
1016 tk 57
</P>
58
 
59
<P CLASS=INFO>Each matrix can be assigned to a dedicated DIN and DOUT shift register. Optionally it's possible to share a single DOUT register for all matrices (in this case assign a DOUT to the first matrix, and disable the DOUT for all other matrices). The remaining (not assigned) DIN/DOUT registers can still be used to connect buttons and LEDs directly.</P>
60
 
61
 
1021 tk 62
<H2> <IMG SRC="images/bullet.gif" ALT=""> Pots/Faders </H2>
63
 
1033 tk 64
<P CLASS=INFO>Up to 8 pots/faders can be directly connected to J5A/B of the MBHP_CORE_LPC17 module as shown in the <a href="midio128/midio128_v3_interconnections.pdf">interconnection diagram</A>.</P>
1021 tk 65
 
1033 tk 66
<P CLASS=INFO>The resistor value should be in the range of 1k..10k. The cable between pot and J5 port shouldn't be longer than 0.5m if 10k pots are used. With a shielded cable and 1k pots the allowed length is up to 2m.</P>
1021 tk 67
 
68
 
1033 tk 69
<H2> <IMG SRC="images/bullet.gif" ALT=""> More Pots/Faders </H2>
70
 
71
<P CLASS=INFO>Up to 128 pots/faders can be scanned by using one or two <A HREF="mbhp_ainser64.html">MBHP_AINSER64</A> modules. The MIDIO128 firmware allows to configure individual MIDI events and Port routings for each analog input.</P>
72
 
73
 
1016 tk 74
<H2> <IMG SRC="images/bullet.gif" ALT=""> Installation </H2>
75
 
76
<P CLASS=DESC>The MIDIO128 V3 firmware is released as a precompiled binary, which can be easily updated via USB MIDI by using MIOS Studio. Details about the bootloader are explained <A HREF="mios32_bootstrap_newbies.html">here</A>.</P>
77
 
78
<P CLASS=DESC>Step by Step:
79
<UL CLASS=CL>
80
  <LI>it's assumed that you already tested the USB MIDI communication by pressing the Query button in MIOS Studio as explained in the <A HREF="mios32_bootstrap_newbies.html">Bootloader page</A> - you should get some informations about the chip and the running application.<BR>
81
      If this procedure sounds unfamiliar to you, please follow the hardware test procedure first as explained in the <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> page.</LI>
82
  <LI>download the latest midio128_v3_* release package from the <A HREF="mios32_download.html">MIOS32 Download Page</A>.
1113 tk 83
  <LI>unzip the .zip archive.
84
  <LI>load the project.hex file with the "Hex Upload" window of MIOS Studio and press the Start button.
85
  <LI>the new firmware will be transfered to your MIDIbox.
86
  <LI>once the "Upload completed" message is displayed by MIOS Studio (after ca. 20..30 seconds), your MIDIbox will reboot, and the new firmware will be started.
1016 tk 87
</UL>
88
</P>
89
 
90
<H2> <IMG SRC="images/bullet.gif" ALT=""> The Control Surface </H2>
91
 
92
<center><img src="midio128/midio128_v3_cs.jpg" width="550" height=554></IMG></center>
93
 
1113 tk 94
<P CLASS=DESC>The optional control surface allows to edit most configuration values without the need of a computer. The detented rotary encoder and buttons can be directly connected to J10 of the MBHP_CORE_LPC17 module, no special DIN shift register is required (see also <a href="midio128/midio128_v3_interconnections.pdf">this schematic</A>).</P>
1016 tk 95
 
1113 tk 96
<P CLASS=DESC>After startup the main screen will be displayed:<BR>
97
<IMG SRC="midio128/cs3/main1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
98
The upper line shows the current MIDI file once the soft-button below "PLAY" is pushed. The next two soft buttons allow to select the previous/next MIDI file found in the root directory of the SD Card.
1016 tk 99
 
1113 tk 100
<P CLASS=DESC>By pressing the EXIT button (blue button in the picture) a second selection page will be displayed with some additional options:<BR>
101
<IMG SRC="midio128/cs3/main2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
102
The first Soft button allows to start/stop recording. The next two soft buttons to fast-rewind/forward the MIDI file. And the fourth soft button is doing nothing ;-) - to change the tempo (BPM), just rotate the encoder (works also when the EXIT button is not pressed).</P>
103
 
104
<P CLASS=DESC>By pressing the SHIFT button a special page will pop up:<BR>
1016 tk 105
<IMG SRC="midio128/cs3/shift1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
1021 tk 106
<UL CLASS=CL>
1113 tk 107
  <LI><B>MIDI:</B> allows to start/stop the MIDI file player from any page while pressing the SHIFT button.
108
  <LI><B>BPM:</B> cycles between BPM Clock Auto/Master/Slave and Lock:
109
     <UL CLASS=CL>
110
       <LI><I>Master</I>: the MIDI player will run with a tempo specified in the .MID file
111
       <LI><I>Slave</I>: the MIDI player is synchronized to an external (incoming) MIDI Clock
112
       <LI><I>Auto</I>: the BPM generator is running in <I>Master</I> mode by default, but will switch to <I>Slave</I> mode when a MIDI clock is received.
113
       <LI><I>Lock</I>: all MIDI files will play at the BPM rate specified in the main screen.
114
     </UL>
1107 tk 115
  <LI><B>DOUT:</B> allows to disable all DOUT pins (like "All Notes Off") from any page
1021 tk 116
  <LI><B>MSD:</B> enables/disables the Mass Storage Device driver as descriped in the "Integrated SD Card Reader" topic
117
</UL>
1016 tk 118
 
1113 tk 119
 
120
<P CLASS=INFO>Back to the main screen:<BR>
121
<IMG SRC="midio128/cs3/main1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
122
The fourth soft-button below "MENU" enters the configuration menu:
123
<IMG SRC="midio128/cs3/root1.gif" width=602 height=38 ALT="Screen"></IMG><BR>
124
The pages are described in more details below.<BR>
125
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>
126
 
127
 
1016 tk 128
<P CLASS=DESC>The <B>DIN</B> page:<BR>
129
<IMG SRC="midio128/cs3/din1.gif" width=481 height=19 ALT="Screen"></IMG><BR>
130
allows to configure parameters for each individual input pin of the DIN shift register chain:
131
<UL CLASS=CL>
132
  <LI><B>Pin:</B> the pin number counted from 0 (0..127)
133
  <LI><B>DIN:</B> the same number in "SR.Dx" format: first number displays the number of shift register (counted from 1, 1..16), and the second number the data input of the shift register (D0..D7)
134
  <LI><B>Mode:</B> the button behaviour can be configured in three modes:
135
    <UL CLASS=CL>
136
      <LI><I>Normal:</I> On-Event sent when button pushed, Off-Event sent when button depressed
137
      <LI><I>OnOff:</I> only On-Event is sent, no event sent when button depressed
138
      <LI><I>Toggle:</I> alternates between On- and Off-Event whenever button is pushed
139
    </UL>
140
  <LI><B>E0On..E2On:</B> the three bytes of the "On-Event" which is sent when the button is pushed in hexadecimal format
141
  <LI><B>E0Off..E2Off:</B> the three bytes of the "Off-Event" which is sent when the button is depressed (resp. Toggle mode: the alternate event) in hexadecimal format
142
  <LI><B>USB1..OSC4:</B> selects the MIDI ports over which the selected DIN pin will send the MIDI event
143
</UL>
144
 
145
<P CLASS=INFO><I>Hot tip:</I> the usage of this page is too cumpersome for "mass edits" - if multiple (or all) pins should be changed, you might prefer to use a spreadsheet as described in the topic "Editing a patch with Excel/OpenOffice"</P>
146
 
147
 
148
<P CLASS=DESC>The <B>DOUT</B> page:<BR>
149
<IMG SRC="midio128/cs3/dout1.gif" width=331 height=19 ALT="Screen"></IMG><BR>
150
allows to configure parameters for each individual output pin of the DOUT shift register chain:
151
<UL CLASS=CL>
152
  <LI><B>Pin:</B> the pin number counted from 0 (0..127)
153
  <LI><B>DOUT:</B> the same number in "SR.Dx" format: first number displays the number of shift register (counted from 1, 1..16), and the second number the data input of the shift register (D7..D0). Note that D7..D0 is reversed, so that outputs can be connected from the left to the right side of the MBHP_DOUT module!
1021 tk 154
  <LI><B>Evn0..Evn1:</B> the first two bytes of the event which will set the output pin. Whenever the value 0x00..0x3F is received, the pin will be switched off, with values >= 0x40 the pin will be switched on.
1016 tk 155
  <LI><B>USB1..OSC4:</B> selects the MIDI ports over which the selected DOUT pin will receive MIDI events
156
</UL>
157
 
158
<P CLASS=INFO><I>Hot tip:</I> the usage of this page is too cumpersome for "mass edits" - if multiple (or all) pins should be changed, you might prefer to use a spreadsheet as described in the topic "Editing a patch with Excel/OpenOffice"</P>
159
 
160
 
161
<P CLASS=DESC>The <B>M8x8</B> page:<BR>
162
<IMG SRC="midio128/cs3/m8x8_1.gif" width=302 height=19 ALT="Screen"></IMG><BR>
163
allows to configure the scan matrices:
164
<UL CLASS=CL>
165
  <LI><B>Matrix:</B> the matrix number counted from 1..16
166
  <LI><B>Channel:</B> the MIDI channel to which the matrix will send Note Events
167
  <LI><B>Base:</B> the base node for the first pin of the matrix.
168
  <LI><B>DIN:</B> DIN register assignment. If "---", the matrix is disabled, with "1..16" the selected matrix is assigned to the given DIN shift register.<BR>
169
<I>Please note that the appr. pins of the shift register won't be available for sending common MIDI events as configured in the DIN page anymore!</I>
170
  <LI><B>DOUT:</B> DOUT register assignment. If "---", the matrix won't write to any DOUT register, with "1..16" the matrix will write to the given DOUT register in order to select the matrix row.<BR>
171
<I>Please note that the appr. pins of the shift register won't be available for outputing values on incoming MIDI events as configured in the DOUT page anymore!</I><BR>
172
<I>Please note also that all matrices will output the same value to the DOUT shift registers in order to select a button row. Accordingly it's possible to share a single DOUT register for all matrices to save hardware. However, using multple DOUT SRs could make sense if for example selarate keyboards should be scanned.</I>
173
</UL>
174
 
175
<P CLASS=DESC>The Matrix handler is prepared for supporting different modes, which will be added on request. Currently only a single matrix configuration <A HREF="midio128/midio128_v3_scanmatrix.pdf">(DINs connected to columns, DOUTs connected to rows)</A> is available, and only Note events over a selectable channel with a selectable base note are sent.</P>
176
 
177
 
1021 tk 178
<P CLASS=DESC>The <B>AIN</B> page:<BR>
179
<IMG SRC="midio128/cs3/ain1.gif" width=301 height=19 ALT="Screen"></IMG><BR>
180
allows to configure parameters for each individual analog pin of J5A/J5B of the core module:
181
<UL CLASS=CL>
182
  <LI><B>Pin:</B> the pin number counted from 0 (0..7)
183
  <LI><B>Evn0..Evn1:</B> the first two bytes of the event which is sent by the analog pin
184
  <LI><B>USB1..OSC4:</B> selects the MIDI ports over which the AIN will send MIDI events
185
</UL>
186
 
187
<P CLASS=INFO><B>Please note:</B> an unconnected analog input will send a permanent stream of random MIDI values. Therefore the pins are disabled by default (no MIDI port assigned). Please ensure that the pot/fader is properly connected before enabling the output port(s), either in the AIN page or in your .MIO file!</P>
188
 
189
 
1016 tk 190
<P CLASS=DESC>The <B>Router</B> page:<BR>
191
<IMG SRC="midio128/cs3/rout1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
192
allows to configure the integrated MIDI Router.<BR>
193
The router consists of 16 "nodes".<BR>
194
Each node can be connected to an individual source and destination port.<BR>
195
A node is activated by selecting a source MIDI channel != "--", e.g. 1..16 or All (for all channels).<BR>
196
The node will forward a MIDI event to the destination port. Either to the original channel ("All"), or to a changed channel (1..16)
197
 
198
<UL CLASS=CL>
199
  <LI><B>Node:</B> the selected router node (1..16)
200
  <LI><B>SrcP:</B> the source port
201
  <LI><B>Chn.:</B> the source channel ("--" to disable, 1..16 or "All")
202
  <LI><B>DstP:</B> the destination port
203
  <LI><B>Chn.:</B> the destination channel ("--" to disable, 1..16 to change the channel, or "All" to keep it untouched)
204
</UL>
205
 
206
 
207
<P CLASS=DESC>The <B>OSC</B> page:<BR>
1084 tk 208
 
1107 tk 209
<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>
1016 tk 210
<IMG SRC="midio128/cs3/osc1.gif" width=422 height=38 ALT="Screen"></IMG><BR>
211
allows to configure the OSC ports 1..4.<BR>
212
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.
213
 
214
<UL CLASS=CL>
215
  <LI><B>Port:</B> the selected OSC port (1..4)
216
  <LI><B>Remote IP:</B> the remote IP assigned to the OSC port (e.g. the IP of your iPad)
1084 tk 217
  <LI><B>Remote Port:</B> the remote port to which OSC packets will be sent
218
  <LI><B>Local Port:</B> the local port from which OSC packets will be received
1016 tk 219
  <LI><B>Mode:</B> following transfer formats are currently supported:
220
    <UL CLASS=CL>
221
      <LI><B>MIDI:</B> MIDI events are bundled into MIDI elements
222
      <LI><B>Text Msg (Integer):</B> uses human readable pathes, values are in integer format
223
      <LI><B>Text Msg (Float):</B> uses human readable pathes, values are in float format
224
      <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>
225
      <LI><B>TOSC (TouchOSC):</B> selects format which is used by <A HREF="http://hexler.net/software/touchosc" TARGET="_blank">TouchOSC</A>
226
    </UL>
227
</UL>
228
</P>
229
 
1084 tk 230
<P CLASS=DESC>See the <A HREF="midibox_osc.html">MIDIbox OSC page</A> for more details about the OSC protocol.</P>
1016 tk 231
 
232
<P CLASS=DESC>The <B>Network</B> page:<BR>
233
<IMG SRC="midio128/cs3/netw1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
234
allows to configure the Ethernet interface of the <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> module.
235
 
236
<UL CLASS=CL>
237
  <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.
238
  <LI><B>IP Host:</B> if DHCP on: displays the current IP address, if DHCP off: allows to enter the IP address of your MIDIO128 manually
239
  <LI><B>Netmask:</B> if DHCP on: displays the current netmask, if DHCP off: allows to enter the netmask of your MIDIO128 manually
240
  <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
241
</UL>
242
 
243
<P CLASS=DESC>The <B>MIDI</B> page:<BR>
1113 tk 244
<IMG SRC="midio128/cs3/midi3.gif" width=242 height=38 ALT="Screen"></IMG><BR>
245
enters a submenu to enter the <B>Play</B> or <B>Ports</B> page.
246
 
247
<P CLASS=DESC>The <B>MIDI/Play</B> page:<BR>
1016 tk 248
<IMG SRC="midio128/cs3/midi1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
249
allows to select the MIDI play mode, and to directly select a MIDI file.
250
 
251
<UL CLASS=CL>
1113 tk 252
  <LI><B>Mode:</B> two modes are available:
253
     <UL CLASS=CL>
254
       <LI><I>All</I>: plays all MIDI files which can be found in the root directory of your SD Card, one after another.
255
       <LI><I>Loop</I>: plays the current MIDI file in a loop.
256
       <LI><I>Single</I>: plays the current MIDI file only once, and thereafter stops the MIDI player
257
     </UL>
1016 tk 258
  <LI><B>Filename:</B> opens a filename browser:<BR>
259
      <IMG SRC="midio128/cs3/midi2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
260
      Use the rotary encoder or the &lt;/&gt; soft buttons to scroll through the directory. Press "Load" to play the selected MIDI file.
261
</UL>
262
 
1021 tk 263
 
1113 tk 264
<P CLASS=DESC>The <B>MIDI/Ports</B> page:<BR>
265
 <IMG SRC="midio128/cs3/midi4.gif" width=302 height=38 ALT="Screen"></IMG><BR>
266
provides some kind of "Patchbay" for the MIDI Recording/Playback functions.<BR>
267
Selectable Ports a DI/O (DIN/DOUT hardware pins), USB1..4, MIDI1..4 and OSC1..4<BR>
268
For each port it can be specified if should be used for REC/Play function, and if it should receive and/or send a MIDI clock.</P>
269
 
270
 
1021 tk 271
<P CLASS=DESC>The <B>Monitor</B> page:<BR>
1107 tk 272
<IMG SRC="midio128/cs3/mon1.gif" width=722 height=38 ALT="Screen"></IMG><BR>
1021 tk 273
shows all IN ports at the upper line, and OUT ports at the lower line.</P>
274
 
275
<P CLASS=DESC>Whenever an event is received or sent, the appr. item will show the event for a short moment.<BR>
276
This gives you a great overview of the MIDI activity, especially to analyze the current track and MIDI router setup.</P>
277
 
278
 
1016 tk 279
<P CLASS=DESC>The <B>Disk</B> page:<BR>
280
<IMG SRC="midio128/cs3/disk1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
281
allows to store and restore a patch on SD Card of a given name.
282
 
283
<UL CLASS=CL>
284
  <LI><B>Load:</B> opens a filename browser for all .MIO files found on SD Card:
285
      <IMG SRC="midio128/cs3/disk2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
286
      Select one of these files to load the patch (or press the Exit button to cancel this operation).
287
  <LI><B>Save:</B> enter the filename with the rotary encoder:<BR>
288
      <IMG SRC="midio128/cs3/disk3.gif" width=242 height=38 ALT="Screen"></IMG><BR>
289
      Press "SAVE" to store the patch (or press the Exit button to cancel this operation).
290
</UL>
291
 
292
<H2> <IMG SRC="images/bullet.gif" ALT=""> Editing a patch with Excel/OpenOffice </H2>
293
 
294
<P CLASS=DESC>Patches are stored in "CSV" (character separated values) format on SD Card, the items are delimited with semicolons.</P>
295
 
296
<P CLASS=DESC>This format allows to edit patches with a common text editor, but also in a spreadsheet with Microsoft Excel or <A HREF="http://www.openoffice.org" TARGET="_blank">OpenOffice</A>.
297
 
298
Most simple solution: mount the SD Card, search for the .MIO patch (e.g. "DEFAULT.MIO"), rename it to "DEFAULT.CSV" and double-click on the file.<BR>
299
Open Office will ask you for some formatting parameters, just use the default setup:</P>
300
 
301
<p></p><center><a href="midio128/midio128_v3_spreadsheet1.png"><img src="midio128/midio128_v3_spreadsheet1.png" width="550"></a></center><p></p>
302
 
303
<P CLASS=DESC>Now each cell will contain a single configuration value, and you can simply edit/copy/paste/etc... - vertically and horizontally!
304
<p></p><center><a href="midio128/midio128_v3_spreadsheet2.png"><img src="midio128/midio128_v3_spreadsheet2.png" width="550"></a></center><p></p>
305
 
306
<P CLASS=DESC>Note that some columns (such as USB2..4, RES1..4, etc...) have no effect yet, and are reserved for future extensions.
307
<I>(more details on the value formats required? This should be selfexplaining...)</I></P>
308
 
309
<P CLASS=DESC>Store your edits, and rename the file to the original filename. Thereafter load the patch from the Disk-&gt;Load menu - done!</P>
310
 
311
 
1021 tk 312
<H2> <IMG SRC="images/bullet.gif" ALT=""> Integrated SD Card Reader</H2>
313
 
314
<P CLASS=DESC>A MSD (Mass Storage Device) driver is integrated into the firmware. It allows you to mount your SD Card via USB without disconnecting it from the MBHP_CORE_LPC17 module, which is especially useful if you want to quickly edit a .MIO file, or copy some .MID files.</P>
315
 
1113 tk 316
<P CLASS=DESC>It can be activated by pressing SHIFT and the soft button under the "MSD" item:<BR>
1021 tk 317
<IMG SRC="midio128/cs3/shift1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
318
</P>
319
 
1024 tk 320
<P CLASS=DESC>Alternatively (if no control surface connected) it can be activated in the MIOS Terminal with the "msd on" command.</P>
321
 
1021 tk 322
<P CLASS=DESC>Once enabled, the SD Card should be automatically mounted by your operating system (Windows/MacOS/Linux). USB MIDI will be disabled. The upper line of the LCD will show the MSD status in any menu page until your SD Card has been unmounted from the operating system (and MSD has been disabled again).</LI>
323
 
1113 tk 324
<B>Please note:</B> some users reported, that the MSD function works unstable on their Windows computer. It works fine under MacOS. The Windows issues are probably related to the fact, that the same USB port was used for MIDI before. Meanwhile I developed an alternative, much more comfortable solution: the MIOS Filebrowser which works via MIDI! :-)
1021 tk 325
 
1113 tk 326
 
327
<H2> <IMG SRC="images/bullet.gif" ALT=""> Accessing Files from MIOS Studio </H2>
328
 
329
<P CLASS=DESC>The Filebrowser of <A HREF="mios_studio.html">MIOS Studio</A> allows to access the SD Card via USB MIDI:
330
<CENTER><IMG SRC="mios_studio/mios_studio_filebrowser.png" width=952 height=550></CENTER></P>
331
 
332
<P CLASS=DESC>The "Update" button retrieves the directory structure. Once it has been read, files and directories can be selected in the directory tree.<BR>
333
Existing files can be downloaded to your computer at a speed of ca. 40..50 kb/s.<BR>
334
New files can be uploaded from your computer at a speed of ca. 10..20 kb/s.<BR>
335
The edit functions allow to modify files in text or binary (hex) format, which is really helpful for quick changes on application specific configuration files without disconnecting the SD Card from the core, or enabling the MSD driver (which would deactivate USB MIDI).</P>
336
 
337
 
1016 tk 338
<H2> <IMG SRC="images/bullet.gif" ALT=""> Remote-Configuration from MIOS Terminal</H2>
339
 
340
<P CLASS=DESC>Some configuration values can be edited from the MIOS Terminal which is part of <A HREF="mios_studio.html">MIOS Studio</A>.<BR>
341
Enter "help" to get a list of available commands:</P>
342
<p></p><center><a href="midio128/midio128_v3_terminal.png"><img src="midio128/midio128_v3_terminal.png" width="550"></a></center><p></p>
343
 
344
<P CLASS=DESC>In future it could be possible to edit any configuration parameter from the terminal, which might be helpful for runtime editing if MIDIO128 is used without a control surface.</P>
345
 
346
 
347
<H2> <IMG SRC="images/bullet.gif" ALT=""> Future Enhancements/Wishlist:</H2>
348
 
349
<UL CLASS=CL>
1021 tk 350
  <LI>all open requests have been implemented
1016 tk 351
  <LI>your request might be added here if it's easy to implement
352
</UL>
353
 
1090 tk 354
<H2> <IMG SRC="images/bullet.gif" ALT=""> License </H2>
355
 
1093 tk 356
<P CLASS=DESC>This project is a DIY project licensed under <A HREF="http://www.ucapps.de/TAPR_Noncommercial_Hardware_License_v1.0.pdf" TARGET="_blank">TAPR NCL</A>. A commercial release is neither planned, nor allowed! But the license allows you to build and sell up to 10 units per year (e.g. to friends) as long as the given constraints of the license are not violated.</P>
1090 tk 357
 
358
 
1015 tk 359
FOOTER