The MIDI Forum

  1. Joseph
  2. Creating with MIDI
  3. Monday, 30 April 2018
  4.  Subscribe via email
I am the owner of a YAMAHA TG-500. For control I use a Roland W-30 keyboard and built-in 16-track MIDI sequencer.

I control various TG-500 parameters through a control change command such as volume, pan, sustain, pitch bend and banks select as well as choosing performance, multi set-ups or voices.

Recently I have been interested in controlling more TG-500 parameters (such as filter sweep or resonance for example) and this is where I am facing few snags. I have read the TG-500 MIDI data format document which lists all the controllable parameters through MIDI sysex commands. But it did not work so far.

The unit is in multimode (internal set 1 for example) with delay and phase chosen as global effects.

I have chosen a piano voice patch on MIDI channel 1 and set the effects send manually at a value of 101

I want to control through MIDI the amount of effect applied to piano, for example set it to 0 (zero) at the start of the song and then somewhere in the middle of the song set it to 90. I have looked at the MIDI chart and the syntax looks like this (Page 4 of the MIDI chart attached here):

(1) MIDI Parameter Change table ( Multi )

$F0 $43 $1n $29 $00 sub_group p_msb p_lsb v_msb v_lsb,$F7

Note) n ; Device Number
s ; parameter sub_group number
p; parameter number
v; parameter value

So the syntax should look something like:

F0 43 $1n 29 00 sub-group p_msb p_lsb v_msb v_lsb F7

Looking at the chart (page 5), s = 1 (instrument 1 piano)
P = 7 (instrument effect send) and
Value = 0 (no effect)

I inserted : F0 43 11 29 00 01 07 00 F7 and sent the command but nothing happened.

I then changed it to F0 43 11 29 00 01 07 00 00 00 F7 again nothing happened.

I read somewhere that 7F was for all receive so I changed the MIDI receive channel to all and inserted F0 43 7F …….. and tried both versions but again nothing happened.

I must be doing something wrong. Can anyone assist me?

By the way if I want to change the instrument memory bank through sysex (parameter 1 of chart on page 5) how is this done? It looks like there are 3 parameters that must be written (inst memory bank, inst memory and off/on for ind1..4)

Thanks in advance.
Attachments (1)
There are no comments made yet.
Accepted Answer Pending Moderation
I've downloaded the TG-500 midi doc, and I'm trying to make some sense of it.

The system is nothing like that for my MU90r.

So far, it looks to me as if the sysex system only operates on certain 'blocks' of data, which can be sent and received. If this is so, then you will need to determine the block that contains the data you wish to change, then get (Dump Request) that complete block, store the data in memory, change the specific bytes that you wish to modify (as per the tables provided), then send back (Dump) the complete block.

Is that what you were trying?

I've seen nothing (so far) that suggests you can send just certain parameters.

Does that seem reasonable given what you've read in the manual?

I'll keep looking at this.

I did find a posting on another forum that gave a number of complete commands regarding certain blocks. I found this easily using google, and I think 'Yamaha TG-500 sysex'.

There are no comments made yet.
  1. more than a month ago
  2. Creating with MIDI
  3. # 1
Accepted Answer Pending Moderation
Geoff thanks for your reply.

I am at a loss how to control parameters through sysex as suggested in the manual. I know that this can be done as there are some editor/librarian software that interfaces directly with the TG-500 and control it in real time....

My initial thought is that I am writing wrongly the sysex command interpreted from the manual. Yamaha does not provide any example as such. I hope that people from Yamaha read this and help or maybe a MIDI programmer knows the solution. I tried to find Yamaha support links but so far with no success.
There are no comments made yet.
  1. more than a month ago
  2. Creating with MIDI
  3. # 2
  • Page :
  • 1

There are no replies made for this post yet.
Be one of the first to reply to this post!