Controlling Yamaha registration memory using patch change


(Oliverward70) #1

I have read on this forum http://www.psrtutorial.com/forum/index.php/topic,44438.0.html that controlling the registrations is possible over midi. However, I am using Ardour 3 (running on a raspberry pi) and as far as I can tell, you cannot specify the bank msb or lsb from ardour 3 like the forum post suggests. For reference, I am using a Yamaha Psr s 900.
Many Thanks


(Oliverward70) #2

I have found a page here that has a way to ‘convert’ MSB and LSB to one bank number. Is this what I should do?


(Paul Davis) #3

Yep, that’s correct.

We changed it last year because it seems that most manufacturers seem to specify MSB/LSB rather than actual bank number (as you have discovered).


(Oliverward70) #4

Ok thanks a lot, in a complete os update of my raspberry pi , I have managed to install ardour 5. I hope to use this instead of ardour 3. Thanks for your help Paul


(Oliverward70) #5

Sorry, as previously mentioned I am quite new to MIDI. Can you explain what you mean by think a bit harder to figure out what the actual bank number is is there a way to ‘convert’ MSB and LSB to a single bank number. Please excuse my crude knowledge of MIDI.


(Paul Davis) #6

You can certainly do this with Ardour 3.x as well (I just built and tried it). The difference is that in Ardour 3.x, you just specify the bank number a single value, rather than separately entering the MSB and LSB. This is easier to use in some cases (where the manufacturer just refers to bank numbers) and harder in others (where the manufacturer refers to MSB and LSB values). Somewhere between 4.x and 5.x, we change the patch change dialog to explicitly show the MSB and LSB instead of the “combined” bank number. So you just have to think a bit harder to figure out what the actual bank number is, and enter that.


(Oliverward70) #7

Ok, that is what I suspected. As you can probably tell I am not an expert in midi but as far as I can tell ardour 3 isn’t capable of this. Thanks for your help.


(Paul Davis) #8

You’re confused.

A bank change message consists of an MSB and (optionally) an LSB. A patch change is a single byte numbered from 0-127. Ardour allows you to control all 3 of these messages. I don’t know if 3.x did that … it is possible it does not. But Ardour 5.x certainly does.


(Oliverward70) #9

Yes I will try to install ardour 5, but I am conscious of the Pi’s limited ram and slow processor clock. I assume ardour 3 is unable to send the msb and lsb as I am only able to change program, bank and patch.
I will get back to you with the results of ardour 5 installation.


(Paul Davis) #10

There is no special magic MIDI message involved here. From the forum post, it is nothing but a normal patch and/or bank change.

Using Ardour 3 in 2018 is madness.


(Oliverward70) #11

Hi, ardour 3 is the latest availabe package that will run on a raspberry pi unless I try to install ardour 5 from source. I can insert patch changes that work fine with the preset voices on the psr-s900. A registration is a user made configuration that uses 2 or 3 voices for a particular song that can be recalled at a push of a button rather than having to manually set them up each time.
From reading that forum post, I believe I need to send msb and lsb messages for the registrations to work however I am unsure if ardour 3 is capable of this.


(Paul Davis) #12
  1. Please stop using Ardour3. The current release is Ardour 5.12. Ardour 3.x has a serious risk of data loss.

  2. I have no idea what the term “registration” means in the context being discussed in that forum post, but basically it sounds just like a patch change/selection.

Patch changes can be sent from Ardour in one of two ways:

a) Once you have created a MIDI region, make sure you are in grab/object mode (press “g”). Right click on the region, select its name, then MIDI, then “Insert Patch Change”. Make sure the edit point is set appropriately, since that is where the patch change will be inserted. The patch change will be sent whenever the playhead pass through the position of the patch change on the timeline.

b) right click on the track header, and choose “Patch Selector”. Clicking on any of the 127 patch numbers will send an immediate patch change message through the track to the MIDI outputs for that track.

BTW, none of this has anything to do with the Yamaha, as far as I can tell.