Subversion Repositories svn.mios

Rev

Rev 1162 | 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
 
1162 tk 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</A> and <A HREF="mbhp_core_stm32f4.html">MBHP_CORE_STM32F4 module</A>, and provides much more features:
1015 tk 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>
1162 tk 35
  <LI>a <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> or <A HREF="mbhp_core_stm32f4.html">MBHP_CORE_STM32F4</A> module
1016 tk 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
 
1162 tk 64
<P CLASS=INFO>Up to 8 pots/faders can be directly connected to J5A/B of the MBHP_CORE_LPC17 or MBHP_CORE_STM32F4 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>
1162 tk 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> resp. <A HREF="mbhp_core_stm32f4.html">MBHP_CORE_STM32F4</A> page.</LI>
1016 tk 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
 
1117 tk 90
 
91
<H2> <IMG SRC="images/bullet.gif" ALT=""> Working under Windows? </H2>
92
 
93
<P CLASS=DESC>MIDIO128 enables 4 USB MIDI ports. Unfortunately some windows versions can't handle this correctly: MIDI is stucking sometimes, Filebrowser operations are failing, etc.</P>
94
 
95
<P CLASS=DESC>In order to overcome this issue, sometimes it helps to install the GM5 USB MIDI driver, which can be downloaded from the <A HREF="mios32_download.html">MIOS32 Download page</A>.
96
 
97
<P CLASS=DESC>Unfortunately the GM5 driver can cause new issues if multiple cores are connected. And users reported that it doesn't work stable under Windows XP. In such cases it's recommended to force the usage of a single USB port which solves the MIDI transfer issues with the drawback of the reduced functionality.
98
 
99
<P CLASS=DESC>So: if you notice MIDI transfer issues, please enable the single_usb option with the <A HREF="mios32_bootstrap_newbies.html">MIOS32 Bootloader</A> update application.
100
 
101
 
102
<H2> <IMG SRC="images/bullet.gif" ALT=""> Working under MacOS? </H2>
103
 
104
<P CLASS=DESC>The USB MIDI implementation of MacOS is perfectly working, regardless of the number of USB MIDI ports!
105
 
106
<P CLASS=DESC>So far we only noticed a minor issue when an app changes the number of USB MIDI ports or the device name. Such changes won't be taken over automatically, instead you've to delete the old interface description in the Audio-MIDI-Setup:
107
<UL CLASS=CL>
108
  <LI>start the Audio-MIDI-Setup of MacOS (e.g. search for "audio-midi" with Spotlight)
109
  <LI>disconnect the core module from USB
110
  <LI>delete the interface in the Audio-MIDI-Setup
111
  <LI>connect the core module to USB again
112
</UL>
113
 
114
<P CLASS=DESC>Thereafter you should see an interface with the new names and the right number of USB MIDI Ports:
115
<A HREF="mios32/macos_midi_setup.png"><IMG SRC="mios32/macos_midi_setup.png" WIDTH=550></A>
116
 
1016 tk 117
<H2> <IMG SRC="images/bullet.gif" ALT=""> The Control Surface </H2>
118
 
119
<center><img src="midio128/midio128_v3_cs.jpg" width="550" height=554></IMG></center>
120
 
1162 tk 121
<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, resp. J10A of the MBHP_CORE_STM32F4 module, no special DIN shift register is required (see also <a href="midio128/midio128_v3_interconnections.pdf">this schematic</A>).</P>
1016 tk 122
 
1200 tk 123
<P CLASS=INFO>Meanwhile also a PCB is available which has been created by Ilmentator - see <A HREF="http://www.midibox.org/dokuwiki/doku.php?id=scs_pcb&#midibox_scs_standard_control_surface_module" TARGET="_blank">this Wiki page</A>.</P>
124
 
1113 tk 125
<P CLASS=DESC>After startup the main screen will be displayed:<BR>
126
<IMG SRC="midio128/cs3/main1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
127
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 128
 
1113 tk 129
<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>
130
<IMG SRC="midio128/cs3/main2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
131
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>
132
 
133
<P CLASS=DESC>By pressing the SHIFT button a special page will pop up:<BR>
1016 tk 134
<IMG SRC="midio128/cs3/shift1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
1021 tk 135
<UL CLASS=CL>
1113 tk 136
  <LI><B>MIDI:</B> allows to start/stop the MIDI file player from any page while pressing the SHIFT button.
137
  <LI><B>BPM:</B> cycles between BPM Clock Auto/Master/Slave and Lock:
138
     <UL CLASS=CL>
139
       <LI><I>Master</I>: the MIDI player will run with a tempo specified in the .MID file
140
       <LI><I>Slave</I>: the MIDI player is synchronized to an external (incoming) MIDI Clock
141
       <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.
142
       <LI><I>Lock</I>: all MIDI files will play at the BPM rate specified in the main screen.
143
     </UL>
1107 tk 144
  <LI><B>DOUT:</B> allows to disable all DOUT pins (like "All Notes Off") from any page
1021 tk 145
  <LI><B>MSD:</B> enables/disables the Mass Storage Device driver as descriped in the "Integrated SD Card Reader" topic
146
</UL>
1016 tk 147
 
1113 tk 148
 
149
<P CLASS=INFO>Back to the main screen:<BR>
150
<IMG SRC="midio128/cs3/main1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
151
The fourth soft-button below "MENU" enters the configuration menu:
152
<IMG SRC="midio128/cs3/root1.gif" width=602 height=38 ALT="Screen"></IMG><BR>
153
The pages are described in more details below.<BR>
154
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>
155
 
156
 
1016 tk 157
<P CLASS=DESC>The <B>DIN</B> page:<BR>
158
<IMG SRC="midio128/cs3/din1.gif" width=481 height=19 ALT="Screen"></IMG><BR>
159
allows to configure parameters for each individual input pin of the DIN shift register chain:
160
<UL CLASS=CL>
161
  <LI><B>Pin:</B> the pin number counted from 0 (0..127)
162
  <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)
163
  <LI><B>Mode:</B> the button behaviour can be configured in three modes:
164
    <UL CLASS=CL>
165
      <LI><I>Normal:</I> On-Event sent when button pushed, Off-Event sent when button depressed
166
      <LI><I>OnOff:</I> only On-Event is sent, no event sent when button depressed
167
      <LI><I>Toggle:</I> alternates between On- and Off-Event whenever button is pushed
168
    </UL>
169
  <LI><B>E0On..E2On:</B> the three bytes of the "On-Event" which is sent when the button is pushed in hexadecimal format
170
  <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
171
  <LI><B>USB1..OSC4:</B> selects the MIDI ports over which the selected DIN pin will send the MIDI event
172
</UL>
173
 
174
<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>
175
 
176
 
177
<P CLASS=DESC>The <B>DOUT</B> page:<BR>
178
<IMG SRC="midio128/cs3/dout1.gif" width=331 height=19 ALT="Screen"></IMG><BR>
179
allows to configure parameters for each individual output pin of the DOUT shift register chain:
180
<UL CLASS=CL>
181
  <LI><B>Pin:</B> the pin number counted from 0 (0..127)
182
  <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 183
  <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 184
  <LI><B>USB1..OSC4:</B> selects the MIDI ports over which the selected DOUT pin will receive MIDI events
185
</UL>
186
 
187
<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>
188
 
189
 
190
<P CLASS=DESC>The <B>M8x8</B> page:<BR>
191
<IMG SRC="midio128/cs3/m8x8_1.gif" width=302 height=19 ALT="Screen"></IMG><BR>
192
allows to configure the scan matrices:
193
<UL CLASS=CL>
194
  <LI><B>Matrix:</B> the matrix number counted from 1..16
195
  <LI><B>Channel:</B> the MIDI channel to which the matrix will send Note Events
196
  <LI><B>Base:</B> the base node for the first pin of the matrix.
197
  <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>
198
<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>
199
  <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>
200
<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>
201
<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>
202
</UL>
203
 
204
<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>
205
 
206
 
1021 tk 207
<P CLASS=DESC>The <B>AIN</B> page:<BR>
208
<IMG SRC="midio128/cs3/ain1.gif" width=301 height=19 ALT="Screen"></IMG><BR>
209
allows to configure parameters for each individual analog pin of J5A/J5B of the core module:
210
<UL CLASS=CL>
211
  <LI><B>Pin:</B> the pin number counted from 0 (0..7)
212
  <LI><B>Evn0..Evn1:</B> the first two bytes of the event which is sent by the analog pin
213
  <LI><B>USB1..OSC4:</B> selects the MIDI ports over which the AIN will send MIDI events
214
</UL>
215
 
216
<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>
217
 
218
 
1016 tk 219
<P CLASS=DESC>The <B>Router</B> page:<BR>
220
<IMG SRC="midio128/cs3/rout1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
221
allows to configure the integrated MIDI Router.<BR>
222
The router consists of 16 "nodes".<BR>
223
Each node can be connected to an individual source and destination port.<BR>
224
A node is activated by selecting a source MIDI channel != "--", e.g. 1..16 or All (for all channels).<BR>
225
The node will forward a MIDI event to the destination port. Either to the original channel ("All"), or to a changed channel (1..16)
226
 
227
<UL CLASS=CL>
228
  <LI><B>Node:</B> the selected router node (1..16)
229
  <LI><B>SrcP:</B> the source port
230
  <LI><B>Chn.:</B> the source channel ("--" to disable, 1..16 or "All")
231
  <LI><B>DstP:</B> the destination port
232
  <LI><B>Chn.:</B> the destination channel ("--" to disable, 1..16 to change the channel, or "All" to keep it untouched)
233
</UL>
234
 
235
 
236
<P CLASS=DESC>The <B>OSC</B> page:<BR>
1084 tk 237
 
1107 tk 238
<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 239
<IMG SRC="midio128/cs3/osc1.gif" width=422 height=38 ALT="Screen"></IMG><BR>
240
allows to configure the OSC ports 1..4.<BR>
241
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.
242
 
243
<UL CLASS=CL>
244
  <LI><B>Port:</B> the selected OSC port (1..4)
245
  <LI><B>Remote IP:</B> the remote IP assigned to the OSC port (e.g. the IP of your iPad)
1084 tk 246
  <LI><B>Remote Port:</B> the remote port to which OSC packets will be sent
247
  <LI><B>Local Port:</B> the local port from which OSC packets will be received
1016 tk 248
  <LI><B>Mode:</B> following transfer formats are currently supported:
249
    <UL CLASS=CL>
250
      <LI><B>MIDI:</B> MIDI events are bundled into MIDI elements
251
      <LI><B>Text Msg (Integer):</B> uses human readable pathes, values are in integer format
252
      <LI><B>Text Msg (Float):</B> uses human readable pathes, values are in float format
253
      <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>
254
      <LI><B>TOSC (TouchOSC):</B> selects format which is used by <A HREF="http://hexler.net/software/touchosc" TARGET="_blank">TouchOSC</A>
255
    </UL>
256
</UL>
257
</P>
258
 
1084 tk 259
<P CLASS=DESC>See the <A HREF="midibox_osc.html">MIDIbox OSC page</A> for more details about the OSC protocol.</P>
1016 tk 260
 
261
<P CLASS=DESC>The <B>Network</B> page:<BR>
262
<IMG SRC="midio128/cs3/netw1.gif" width=302 height=38 ALT="Screen"></IMG><BR>
263
allows to configure the Ethernet interface of the <A HREF="mbhp_core_lpc17.html">MBHP_CORE_LPC17</A> module.
264
 
265
<UL CLASS=CL>
266
  <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.
267
  <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
268
  <LI><B>Netmask:</B> if DHCP on: displays the current netmask, if DHCP off: allows to enter the netmask of your MIDIO128 manually
269
  <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
270
</UL>
271
 
272
<P CLASS=DESC>The <B>MIDI</B> page:<BR>
1113 tk 273
<IMG SRC="midio128/cs3/midi3.gif" width=242 height=38 ALT="Screen"></IMG><BR>
274
enters a submenu to enter the <B>Play</B> or <B>Ports</B> page.
275
 
276
<P CLASS=DESC>The <B>MIDI/Play</B> page:<BR>
1016 tk 277
<IMG SRC="midio128/cs3/midi1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
278
allows to select the MIDI play mode, and to directly select a MIDI file.
279
 
280
<UL CLASS=CL>
1113 tk 281
  <LI><B>Mode:</B> two modes are available:
282
     <UL CLASS=CL>
283
       <LI><I>All</I>: plays all MIDI files which can be found in the root directory of your SD Card, one after another.
284
       <LI><I>Loop</I>: plays the current MIDI file in a loop.
285
       <LI><I>Single</I>: plays the current MIDI file only once, and thereafter stops the MIDI player
286
     </UL>
1016 tk 287
  <LI><B>Filename:</B> opens a filename browser:<BR>
288
      <IMG SRC="midio128/cs3/midi2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
289
      Use the rotary encoder or the &lt;/&gt; soft buttons to scroll through the directory. Press "Load" to play the selected MIDI file.
290
</UL>
291
 
1021 tk 292
 
1113 tk 293
<P CLASS=DESC>The <B>MIDI/Ports</B> page:<BR>
294
 <IMG SRC="midio128/cs3/midi4.gif" width=302 height=38 ALT="Screen"></IMG><BR>
295
provides some kind of "Patchbay" for the MIDI Recording/Playback functions.<BR>
296
Selectable Ports a DI/O (DIN/DOUT hardware pins), USB1..4, MIDI1..4 and OSC1..4<BR>
297
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>
298
 
299
 
1021 tk 300
<P CLASS=DESC>The <B>Monitor</B> page:<BR>
1107 tk 301
<IMG SRC="midio128/cs3/mon1.gif" width=722 height=38 ALT="Screen"></IMG><BR>
1021 tk 302
shows all IN ports at the upper line, and OUT ports at the lower line.</P>
303
 
304
<P CLASS=DESC>Whenever an event is received or sent, the appr. item will show the event for a short moment.<BR>
305
This gives you a great overview of the MIDI activity, especially to analyze the current track and MIDI router setup.</P>
306
 
307
 
1016 tk 308
<P CLASS=DESC>The <B>Disk</B> page:<BR>
309
<IMG SRC="midio128/cs3/disk1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
310
allows to store and restore a patch on SD Card of a given name.
311
 
312
<UL CLASS=CL>
313
  <LI><B>Load:</B> opens a filename browser for all .MIO files found on SD Card:
314
      <IMG SRC="midio128/cs3/disk2.gif" width=242 height=38 ALT="Screen"></IMG><BR>
315
      Select one of these files to load the patch (or press the Exit button to cancel this operation).
316
  <LI><B>Save:</B> enter the filename with the rotary encoder:<BR>
317
      <IMG SRC="midio128/cs3/disk3.gif" width=242 height=38 ALT="Screen"></IMG><BR>
318
      Press "SAVE" to store the patch (or press the Exit button to cancel this operation).
319
</UL>
320
 
321
<H2> <IMG SRC="images/bullet.gif" ALT=""> Editing a patch with Excel/OpenOffice </H2>
322
 
323
<P CLASS=DESC>Patches are stored in "CSV" (character separated values) format on SD Card, the items are delimited with semicolons.</P>
324
 
325
<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>.
326
 
327
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>
328
Open Office will ask you for some formatting parameters, just use the default setup:</P>
329
 
330
<p></p><center><a href="midio128/midio128_v3_spreadsheet1.png"><img src="midio128/midio128_v3_spreadsheet1.png" width="550"></a></center><p></p>
331
 
332
<P CLASS=DESC>Now each cell will contain a single configuration value, and you can simply edit/copy/paste/etc... - vertically and horizontally!
333
<p></p><center><a href="midio128/midio128_v3_spreadsheet2.png"><img src="midio128/midio128_v3_spreadsheet2.png" width="550"></a></center><p></p>
334
 
335
<P CLASS=DESC>Note that some columns (such as USB2..4, RES1..4, etc...) have no effect yet, and are reserved for future extensions.
336
<I>(more details on the value formats required? This should be selfexplaining...)</I></P>
337
 
338
<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>
339
 
340
 
1021 tk 341
<H2> <IMG SRC="images/bullet.gif" ALT=""> Integrated SD Card Reader</H2>
342
 
1162 tk 343
<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 core module, which is especially useful if you want to quickly edit a .MIO file, or copy some .MID files.</P>
1021 tk 344
 
1113 tk 345
<P CLASS=DESC>It can be activated by pressing SHIFT and the soft button under the "MSD" item:<BR>
1021 tk 346
<IMG SRC="midio128/cs3/shift1.gif" width=242 height=38 ALT="Screen"></IMG><BR>
347
</P>
348
 
1024 tk 349
<P CLASS=DESC>Alternatively (if no control surface connected) it can be activated in the MIOS Terminal with the "msd on" command.</P>
350
 
1021 tk 351
<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>
352
 
1113 tk 353
<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 354
 
1113 tk 355
 
356
<H2> <IMG SRC="images/bullet.gif" ALT=""> Accessing Files from MIOS Studio </H2>
357
 
358
<P CLASS=DESC>The Filebrowser of <A HREF="mios_studio.html">MIOS Studio</A> allows to access the SD Card via USB MIDI:
359
<CENTER><IMG SRC="mios_studio/mios_studio_filebrowser.png" width=952 height=550></CENTER></P>
360
 
361
<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>
362
Existing files can be downloaded to your computer at a speed of ca. 40..50 kb/s.<BR>
363
New files can be uploaded from your computer at a speed of ca. 10..20 kb/s.<BR>
364
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>
365
 
366
 
1016 tk 367
<H2> <IMG SRC="images/bullet.gif" ALT=""> Remote-Configuration from MIOS Terminal</H2>
368
 
369
<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>
370
Enter "help" to get a list of available commands:</P>
371
<p></p><center><a href="midio128/midio128_v3_terminal.png"><img src="midio128/midio128_v3_terminal.png" width="550"></a></center><p></p>
372
 
373
<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>
374
 
375
 
376
<H2> <IMG SRC="images/bullet.gif" ALT=""> Future Enhancements/Wishlist:</H2>
377
 
378
<UL CLASS=CL>
1021 tk 379
  <LI>all open requests have been implemented
1016 tk 380
  <LI>your request might be added here if it's easy to implement
381
</UL>
382
 
1090 tk 383
<H2> <IMG SRC="images/bullet.gif" ALT=""> License </H2>
384
 
1093 tk 385
<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 386
 
387
 
1015 tk 388
FOOTER