NEWS | SYNTH A-Z | FORUM | SynMag - Das SYNTHESIZER-MAGAZIN | KONTAKT | MOOGULATOR
Modular | Analog | Digital | Sampler | Soft | Drums | Groovebox | Sequencer

MIDI Basics

From Synthesizer Wiki
Jump to: navigation, search


  • MIDI - Musical Instrument digital Interface
  • Midi Format + more Midi Info: MIDI


Midi Wiring / How it works

  • MIDI has a Master and more slaves that are chained. There are 3 MIDI Jacks: IN, OUT, THRU
  • Being Master means to send the timing "MIDI Clock" to the chain.
  • the chain transports the signal from IN to THRU.
  • the Midi OUT sends MIDI Notes and Controllers (Modulation Wheel, Parameters) in real time but will NOT be integrated into the IN-THRU chain. if you want to do that you need to Merge the signals: Midi Merger
  • The Master can be a computer or Sequencer or even a Keyboard that will control and synchronize all following devices if connected to the chain:

Devices - connections: DEVICE1 MIDI OUT --> MIDI IN (Device 2) --> MIDI Thru --> MIDI in (Device 3) -->..


MIDI Musical Instrument Digital Interface kleine info über MIDI: um gerüchte aus der welt zu setzen: midi hat 16 kanäle, ja, aber SysEx daten werden immer ohne kanal gesendet also pro “MIDIkabel” gibtes dann die möglichkeit SysEx zu schicken welches ALLE angeschlossenen Geräte empfangen..meist wenn was bei einem dump nicht klappt ist es die DEVICE ID die nicht auf 0 gestellt ist. das format sieht ansich so aus: MIDIformat.. was midi macht? es sendet midibefehle note (taste gedrückt) und anschlagstärke, dann 128 verschiedene sgnt controller, also knöpfe bei synthesizern die parameter steuern…, aftertouch und SysEx, das sind komplette “dumps” also datenpakete, die komplette speicherinhalte von synthies beinhalten.. der neue midi2 standard wird auf netzwerktechnik basieren und wird vom IEEE zusammengestellt. IEEE P1639 (IEEE 802.11 based) features: 16mio devices, hoffentlich auch mehr controller und auflösung..10 gigabit pro sekunde statt 31.2kbaud (kbit/sec) info generell: the MIDI Manufacturers Association www.midi.org. letzlich wird aber bisher MIDI2 nicht eingesetzt.. zzt werden eher USB/USB2 lösungen verwendet, die das midiprotokoll auf diesen schnittstellen in einem midiprotokoll nutzen.. zB remote keyboards und co. hier wird sicher in zukunft noch einiges passieren. bis dahin wird der standard mit der 5poligen DIN buchse noch einige zeit bleiben..

Midi Merger + Patchbays

what use? Midi Merger: if you eg have 2 sequencers chained via thru you can use the clock via thru OR the midi out.. so if you want both you need to merge the midi ports digitally, same with controlling 1 synth from 2 keyboards or sequencers..

Midi Thru Box: Some synth do ont have midi thru , also you can use it to increase the performance eg multiple drummachines & sequencers to directly get their clock signal from the thru box instead of XX instruments in a chain..

Midi Controller: Is a device that allows to change Parameters on Synths in realtime, lots of them also have a keyboard and other "input" sensors etc..


there are lots of cheap thru boxes and merger like m-audio (and all companies bought by m-audio like midiman etc.)

MIDI format sieht so aus: / Midi Format looks like this

the first dada is just binary, hex and decimal values, all 7bit (128 values) - longer / larger controller ranges often use NRPNs (cascaded controllers) to address the parameter and raise the resolution of each parameter like the 16384 steps on the Alesis Andromeda etc.. Sysex has NO channel but a device ID which makes it possible to address more than one instrument (so you can address lots of (eg. TG77's..)..

das erste sind einfach die binären, hexadezimalen und dezimalen werte und danach die info über noten, CC oder andere informationen.., dann die notennummer und velocity.. alles in 7 bit , also 128 schritte max.

längere (controller)datenpakete werden zB per NRPN verpackt, wie etwa beim Alesis Andromeda A6, der somit eine auflösung pro knopf 14bit = 16384 schritte hat..

hoffe das spricht für sich selbst: und sagt vorallem eins aus: alles geht doch eher "seriell" über das kabel!!.. daher: sysEx ist entsprechend einzustufen , besonders bei synths , die nur SysEx parameter empfangen!!.. denn sie "knallen" den ganzen kanal voll.. um genauer zu sein, das KABEL!, denn sysEx ist ja kanalunabhängig , sondern einfach eine andere adresse.. (ab F0 hex)!!

midi DIN 5 pin

1 unused
2 signal
3 ground
4 signal b
5 unused

THE MIDI JACK - DER MIDI STECKER / BUCHSE

ANSCHLÜSSE / CONNECTION:

from left to right // gesehen von hinten von links nach rechts, 5V spannung nicht verwechseln mit Rolands DIN sync !! deren belegung findest du hier: Roland DIN Sync do NOT confuse MIDI with the (same 5 pin) Roland DIN Sync

MIDI FORMAT

Midi Format + more Midi Info: MIDI


10000000= 80= 128| Chan 1 Note off | Note Number | Note Velocity

10000001= 81= 129| Chan 2 " | (0-127) | (0-127)

10000010= 82= 130| Chan 3 " | see | "

10000011= 83= 131| Chan 4 " | Table | "

10000100= 84= 132| Chan 5 " | 2 | "

10000101= 85= 133| Chan 6 " | " | "

10000110= 86= 134| Chan 7 " | " | "

10000111= 87= 135| Chan 8 " | " | "

10001000= 88= 136| Chan 9 " | " | "

10001001= 89= 137| Chan 10 " | " | "

10001010= 8A= 138| Chan 11 " | " | "

10001011= 8B= 139| Chan 12 " | " | "

10001100= 8C= 140| Chan 13 " | " | "

10001101= 8D= 141| Chan 14 " | " | "

10001110= 8E= 142| Chan 15 " | " | "

10001111= 8F= 143| Chan 16 " | " | "

10010000= 90= 144| Chan 1 Note on | " | "

10010001= 91= 145| Chan 2 " | " | "

10010010= 92= 146| Chan 3 " | " | "

10010011= 93= 147| Chan 4 " | " | "

10010100= 94= 148| Chan 5 " | " | "

10010101= 95= 149| Chan 6 " | " | "

10010110= 96= 150| Chan 7 " | " | "

10010111= 97= 151| Chan 8 " | " | "

10011000= 98= 152| Chan 9 " | " | "

10011001= 99= 153| Chan 10 " | " | "

10011010= 9A= 154| Chan 11 " | " | "

10011011= 9B= 155| Chan 12 " | " | "

10011100= 9C= 156| Chan 13 " | " | "

10011101= 9D= 157| Chan 14 " | " | "

10011110= 9E= 158| Chan 15 " | " | "

10011111= 9F= 159| Chan 16 " | " | "

10100000= A0= 160| Chan 1 Polyphonic | " | Aftertouch

10100001= A1= 161| Chan 2 aftertouch | " | pressure

10100010= A2= 162| Chan 3 " | " | (0-127)

10100011= A3= 163| Chan 4 " | " | "

10100100= A4= 164| Chan 5 " | " | "

10100101= A5= 165| Chan 6 " | " | "

10100110= A6= 166| Chan 7 " | " | "

10100111= A7= 167| Chan 8 " | " | "

10101000= A8= 168| Chan 9 " | " | "

10101001= A9= 169| Chan 10 " | " | "

10101010= AA= 170| Chan 11 " | " | "

10101011= AB= 171| Chan 12 " | " | "

10101100= AC= 172| Chan 13 " | " | "

10101101= AD= 173| Chan 14 " | " | "

10101110= AE= 174| Chan 15 " | " | "

10101111= AF= 175| Chan 16 " | " | "

10110000= B0= 176| Chan 1 Control/ | See | See

10110001= B1= 177| Chan 2 Mode change | Table | Table

10110010= B2= 178| Chan 3 " | three | three

10110011= B3= 179| Chan 4 " | " | "

10110100= B4= 180| Chan 5 " | " | "

10110101= B5= 181| Chan 6 " | " | "

10110110= B6= 182| Chan 7 " | " | "

10110111= B7= 183| Chan 8 " | " | "

10111000= B8= 184| Chan 9 " | " | "

10111001= B9= 185| Chan 10 " | " | "

10111010= BA= 186| Chan 11 " | " | "

10111011= BB= 187| Chan 12 " | " | "

10111100= BC= 188| Chan 13 " | " | "

10111101= BD= 189| Chan 14 " | " | "

10111110= BE= 190| Chan 15 " | " | "

10111111= BF= 191| Chan 16 " | " | "

11000000= C0= 192| Chan 1 Program | Program # | NONE

11000001= C1= 193| Chan 2 change | (0-127) | "

11000010= C2= 194| Chan 3 " | " | "

11000011= C3= 195| Chan 4 " | " | "

11000100= C4= 196| Chan 5 " | " | "

11000101= C5= 197| Chan 6 " | " | "

11000110= C6= 198| Chan 7 " | " | "

11000111= C7= 199| Chan 8 " | " | "

11001000= C8= 200| Chan 9 " | " | "

11001001= C9= 201| Chan 10 " | " | "

11001010= CA= 202| Chan 11 " | " | "

11001011= CB= 203| Chan 12 " | " | "

11001100= CC= 204| Chan 13 " | " | "

11001101= CD= 205| Chan 14 " | " | "

11001110= CE= 206| Chan 15 " | " | "

11001111= CF= 207| Chan 16 " | " | "

11010000= D0= 208| Chan 1 Channel | Aftertouch | "

11010001= D1= 209| Chan 2 aftertouch | pressure | "

11010010= D2= 210| Chan 3 " | (0-127) | "

11010011= D3= 211| Chan 4 " | " | "

11010100= D4= 212| Chan 5 " | " | "

11010101= D5= 213| Chan 6 " | " | "

11010110= D6= 214| Chan 7 " | " | "

11010111= D7= 215| Chan 8 " | " | "

11011000= D8= 216| Chan 9 " | " | "

11011001= D9= 217| Chan 10 " | " | "

11011010= DA= 218| Chan 11 " | " | "

11011011= DB= 219| Chan 12 " | " | "

11011100= DC= 220| Chan 13 " | " | "

11011101= DD= 221| Chan 14 " | " | "

11011110= DE= 222| Chan 15 " | " | "

11011111= DF= 223| Chan 16 " | " | "

11100000= E0= 224| Chan 1 Pitch | Pitch | Pitch

11100001= E1= 225| Chan 2 wheel | wheel | wheel

11100010= E2= 226| Chan 3 range | LSB | MSB

11100011= E3= 227| Chan 4 " | (0-127) | (0-127)

11100100= E4= 228| Chan 5 " | " | "

11100101= E5= 229| Chan 6 " | " | "

11100110= E6= 230| Chan 7 " | " | "

11100111= E7= 231| Chan 8 " | " | "

11101000= E8= 232| Chan 9 " | " | "

11101001= E9= 233| Chan 10 " | " | "

11101010= EA= 234| Chan 11 " | " | "

11101011= EB= 235| Chan 12 " | " | "

11101100= EC= 236| Chan 13 " | " | "

11101101= ED= 237| Chan 14 " | " | "

11101110= EE= 238| Chan 15 " | " | "

11101111= EF= 239| Chan 16 " | " | "

11110000= F0= 240| System Exclusive | ** | **

11110001= F1= 241| System Common - undefined | ? | ?

11110010= F2= 242| Sys Com Song Position Pntr | LSB | MSB

11110011= F3= 243| Sys Com Song Select(Song #)| (0-127) | NONE

11110100= F4= 244| System Common - undefined | ? | ?

11110101= F5= 245| System Common - undefined | ? | ?

11110110= F6= 246| Sys Com tune request | NONE | NONE

11110111= F7= 247| Sys Com-end of SysEx (EOX) | " | "

11111000= F8= 248| Sys real time timing clock | " | "

11111001= F9= 249| Sys real time undefined | " | "

11111010= FA= 250| Sys real time start | " | "

11111011= FB= 251| Sys real time continue | " | "

11111100= FC= 252| Sys real time stop | " | "

11111101= FD= 253| Sys real time undefined | " | "

11111110= FE= 254| Sys real time active sensing| " | "

11111111= FF= 255| Sys real time sys reset | " | "

Midi Format + more Midi Info: MIDI


SYSEX - SYX + MID

    • Note: System Exclusive (data dump)

2tes byte= Hersteller ID danach folgen einige bytes (herstellerabhängig) beendet mit EOX. 2 byte = manufacturers ID followed by model numbers and ending with EOX.

note: SYX files are NOT the same as MID files, use sysex (mac) or midiox (pc) to dump them from/to a computer..

achtung: es gibt reine .SYX files, (manche hersteller liefern neue betriebssysteme so aus) die genau nur DIESE daten enthalten.. wie man damit umgeht im software/computerbereich: hier

Das MIDI Manifest - Midi 2?

Dauerhaft sollte man nun von den sehr sich ausruhenden Herstellern zum Thema Midi.

Was gebraucht wird: - Computerintern und zwischen 2 Computern sync, Controller, Parameter, Noten etc. zu transportieren - Dasselbe nach aussen - Schnell und unproblematisch - Mind 16 - 32 bit für Controlleradressierung bzw. Parametertiefe (65535 Controller mit Werten bis 65535 = 16bit) - Übertragung der Parameternamen und Werte - Prioritätenreglung (Noten, Controller = Prio1, Parameternamen Prio2, Sync: Prio0 etc..) Vorteile für Industrie - Geräte verkaufen können - Analoge können neu umgerüstet werden, neue können auf die lächerliche 7Bit-Auflösung verzichten und keine "Workarounds" mehr.. Liebe Industrie, wollt ihr kein Geld verdienen? Setzt euch zusammen, macht eine schnelle, gute und zeitgemäße Norm, die langfristig funktioniert und bietet auch Midi2->Midi Interfaces an - Dann verkauft ihr ALLE die nächsten 2 Jahre mehr.. Danke.


THE MIDI MANIFESTO.. Manufacturers!! You want to sell more? Why not coming together make a Standard and then sell much more, especially the next 2 years will bring you a lot of chances to sell things..

what is necessary:

- computer to computer and internal things to get them synched etc.. - up to date speed and scaleability - no less than 16-32 bit Resolution and Addressing (no less than 65535 Steps / Parameters possible then without Sysex!!) - add parameter names (cool for controller boxes and software - plugins and box will sync up and simply show all parameters.. thats how most ppl want to work.. put them up ordered by use OSC.. Filter.. ..Sequencer step 1-128.. - Priority for tempo sync, notes and a also controllers in the second place, parameter names when there is time..(idle or manually).. - no more sysex needed then or at least rare then.. - analogue synths can be retrofitted with better resolutons and more controllers.. so, why not? tell me?.. will bring you a lot of new products sold..