The question is almost similar from this link. But the link there is already old, and the answer (to me) don't have enough detail :

MIDI CC 5 - Controls portamento rate to slide between 2 notes played subsequently.

MIDI CC 65 - Portamento On/Off switch | 0 to 63 = Off, 64 to 127 = On

MIDI CC 84 - Controls the amount of Portamento.

I use a very old Cakewalk Pro Audio 9 and USB midi cable connection from computer to Yamaha PSR-640. In the event list of track-1, I put something like this :

TEMPO : 100

MBT 1:01:000, CC-65, Value 127 (Portamento ON)
MBT 1:01:001, CC-5, Value 50
MBT 1:01:002, Patch Change, Value String Ensemble 1
MBT 2:01:000, Note C5, Duration 1:000
MBT 2:02:000, Note D5, Duration 1:000
MBT 2:03:000, Note E5, Duration 1:000

I can hear the glide from C5 to E5.

Somewhere in the internet (I'm sorry I cannot find the link again), I read that CC #84 controls the starting note to glide.

Since I don't know what is the starting note for each value (0 - 127) of CC-84, I just tried it by changing the value of CC-84 and CC-5

Here is the list with CC-84 :

TEMPO : 100

MBT 1:01:000, CC-65, Value 127 (Portamento ON)
MBT 1:01:001, CC-5, Value 50
MBT 1:01:002, CC-84, Value 100
MBT 1:01:003, Patch Change, Value String Ensemble 1
MBT 2:01:000, Note C5, Duration 4:000
MBT 3:01:000, Note D5, Duration 4:000
MBT 4:01:000, Note E5, Duration 3:000
MBT 5:01:000, Note F5, Duration 4:000
  1. Result : The C5 sounds muted, D5 to F5 sounds normal and I didn't hear the glide at all from C5 to F5

  2. From the same list, I only change the value of CC-5 from 50 to 100.
    Result : Now I can hear the glide from C5 to F5 (even there is a rest at bar 4:04:000) but the C5 still sounds muted while D5 to F5 sounds normal.

  3. From the same list, I've tried CC-5 = 127 and CC-84 = 127.
    Result : C5 still sounds muted (the rest of the notes sound normal) but now D5 sounds C5 and I didn't hear any glide. (Which I assume, D5 sounds C5 is actually the starting note to glide but not have enough time to glide because CC-5 = 127).

I hear the difference - but to be honest I can not make a conclusion so I still don't understand on how to implement it, in what kind of situation (for example) using these CC-65/CC-5/CC-84 and how is the event list look.

Any kind of help will be greatly appreciated. Thank you in advanced.

  • 1
    afaik, the value of cc84 is the midi note number of your 'pre-porta' note, so maybe try something in audible range ;) then bend to somewhere musically close. C3 is 48, C4 60... The porta should [depending on hardware implementation] affect the next note actually triggered, so C5 in your example. [Though, to be safe, I'd set up your patch change well before any of that, in case it clears the buffers]
    – Tetsujin
    Mar 31, 2018 at 19:38
  • @Tetsujin, thank you for your comment. But I'm sorry, I don't even know on how to do "try something in audible range ;) then bend to somewhere musically close". Do you mean put the value which is "audible range" in CC84 ? If the CC84 value is 48, then the starting note to glide is C3 ? Assuming I'm correct to get what you mean, I've tried that - still "nothing happen" :).
    – karma
    Apr 1, 2018 at 15:01
  • 1
    This may be hardware-dependant. No-one ever properly agreed how porta ought to function; but if you send 65/127; 5/50; 84/48; Note C4.. you ought to hear a one-octave bend starting on C3, resolving to C4. It's too long ago for me to remember what generation the PSR640 belongs to, but it if was post 'XG' [circa 1995] then it ought to behave correctly.
    – Tetsujin
    Apr 1, 2018 at 15:07
  • 1
    OK, I checked the gen, it's a 99, but I still don't remember its internal spec. If it is marked XG, it ought to behave 'properly'. If it's only marked 'GM' then it might not.
    – Tetsujin
    Apr 1, 2018 at 15:12
  • 1
    @Tetsujin, PSR640 has XG also. I've tried your instruction, still no luck. I think I should give up :). BTW, I do a trick something like this : CC65=127, CC5=75, C3 duration value = 0 at MBT=1:02:119 and at MBT=1:03:000 C4 duration value = 1:000 (whole note). Of course I won't hear the C3, but when C4 on I can hear the gilde starts from C3 :). Thank you for your time, Tetsujin.
    – karma
    Apr 2, 2018 at 18:44

1 Answer 1


The MIDI specification says:

When a Note-On is received after a Portamento Control message, the voice's pitch will glide from the key specified in the Portamento Control message to the new Note-On's pitch at the rate set by the portamento time controller.

CC84 should be a note number.

  • thank you for the answer. But I still don't know how to implement it. "CC84 should be a note number" ---> yes, and it seems (if I'm not mistaken) Tetsujin say that a value 48 of CC84 is C3 note. Value 60 is C4 note. But still I don't know how to implement it :)
    – karma
    Apr 1, 2018 at 15:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.