Sorry, I'm unable to give you any
MIDI/USB recommendations, perhaps others can.
I use a couple of older internal cards
from E-MU that have external interfaces with MIDI
ports.
E-MU 1616m.
Likewise with Logic, I'm not a Logic
user.
However, with most programs there's a
settings or options menu which may allow the
settings for audio buffer sizes and numbers and
perhaps MIDI too.
They can be quite important if you're
planning to send fairly large SysEx messages,
e.g. bulk dumps.
Jeff has provided a good summary, but
just to add that there are a few special MMA
defined SysEx messages, like 'GM System On' that
are important for resetting things.
And SysEx messages can be common
amongst a manufacturers hardware offerings, e.g.
Yamaha's XG and Roland's GS standards.
I have a forum over at
midi-tutor.proboards,com where I explain MIDI in
some detail. Please feel free to join, there's
no charge.
In addition, MIDI messages are divided
into eight main types.
The first byte of a message always has
the most significant bit set on, and uses the
other three bits of the front half of the
message to define the message type.
So, in hexadecimal, shown as e.g. 8nH,
the '8' is the first four bits the 'n' is
"another value" not defined here, the 'H'
defines it as being hexadecimal.
Here's a summary of message types
from the MIDI specification:
8nH 1000nnnn 0kkkkkkk Note Off
0vvvvvvv vvvvvvv: note off velocity
9nH 1001nnnn 0kkkkkkk Note On
0vvvvvvv vvvvvvv ≠ 0: velocity
vvvvvvv = 0: note off
AnH 1010nnnn 0kkkkkkk Polyphonic Key
Pressure (Aftertouch)
0vvvvvvv vvvvvvv: pressure value
BnH 1011nnnn 0ccccccc Control Change
0vvvvvvv ccccccc: control # (0-119)
vvvvvvv: control value
ccccccc = 120 thru 127: Reserved.
CnH 1100nnnn 0ppppppp Program Change
ppppppp: program number (0-127)
DnH 1101nnnn 0vvvvvvv Channel Pressure
(Aftertouch)
vvvvvvv: pressure value
EnH 1110nnnn 0vvvvvvv Pitch Bend
Change LSB
0vvvvvvv Pitch Bend Change MSB
FnH 1111nnnn System Exclusive Message
John.