Page 1 of 1

MIDI_ARGS, MIDI Thru, Note, CC, Pitch Bend

Posted: 08 Sep 2017 11:25
by samriccijr
Hi group! This is my first post. Please help!

I am trying to send Pitch Bend messages from my Nord Lead 2x through Lemur to my Use Audio Plugiator.

My setup is Nord Out to Midisport Uno in connected to iPhone
Midisport out connected to Plugiator MIDI in.
Pluguiator USB connected to PC.

The MIDI in Checker file (viewtopic.php?f=25&t=4727&start=10) reports incoming note and cc as

{42,10,0} //MIDI_ARGS[0],[1] and[2]

I can successfully map Note and Controller Information Thru Lemur using MIDI_ARGS in a script:

Script NoteThru:
On MIDI, 90 Note On, MIDI 0, 0 to 127, 1 to 1
noteout(0,MIDI_ARGS[0],MIDI_ARGS[1],1); // successfully sends all midi note information to Target 0 MIDI channel 1.

Script CCThru
On MIDI B0 Controller, Midi 0, 0 to 127, 1 to 1
if (MIDI_ARGS[0]==1) {ctlout(0,1,MIDI_ARGS[1],1);} // passes mod wheel thru on Target 0 MIDI channel 1
if (MIDI_ARGS[0]==70) {ctlout(0,58,MIDI_ARGS[1],1);} // maps CC70 to CC58 on MIDI channel 1.

if (MIDI_ARGS[0]==24 && MIDI_ARGS[1]==4)
{ctlout(0,75,127,1);ctlout(0,76,0,1);ctlout(0,77,0,1);ctlout(0,78,0,1);ctlout(0,79,0,1);} //remaps input cc 24 value 4 to several output ccs.

These all work successfully. I can use the Nord Knobs and buttons to program Plugiator's Pro12.

However, when I try this with Pitch Bend I get no response....

The MIDI in Checker reports incoming pitch bend as

{8192,0} //

******is this ARGS[0] or ARGS[0]+128*ARGS[1]?

Script PitchBendThru
On MIDI, E0 Pitch Bend, Midi 0, 0-127, 1 to 1

******On MIDI 0xE0 Pitch bend only allows 0-127 not 0-16384?

midiout(0,{0xE0,MIDI_ARGS[0]}); //does not work
midiout(0,{0xE0,MIDI_ARGS[0],MIDI_ARGS[1]}); //does not work
midiout(0,{0xE0,floor(MIDI_ARGS[0]%128),floor(MIDI_ARGS[0] / 128)}); //does not work

Please help! I am excited to post my next panel. Sam in NJ USA

Re: MIDI_ARGS, MIDI Thru, Note, CC, Pitch Bend

Posted: 09 Sep 2017 11:57
by samriccijr
I found it, MIDI_ARGS[0] reports the full pitch bend value..

You have to nibblize the reported value to LSB (MIDI_ARGS[0] MOD%128) and MSB (floor(MIDI_ARGS[0] /128))

This command maps Pitch Bend thru:

On MIDI, 0xE0 Pitch Bend, MIDI 0, 0-127, 1 to 1
midiout(0,{0xE0,MIDI_ARGS[0]%128,floor(MIDI_ARGS[0] / 128)});

Sam