Yamaha P115 program change/script in Elements 9

I recently picked up a Yamaha P115, and I’m trying to create a patchname script file for it using the old Steinberg Scriptmaker program. On the P115, there is a single row of buttons that can be pressed once for one sound, and pressed a second time form another sound…The best I’ve been able to manage while tweaking the script/settings in device manager is to select a voice in Cubase that just ends up as a second voice layered over whatever the currently selected voice on the P115. I think it may have to do with the mono/poly modes (and I’ve spent hours playing with the settings), but I can’t get Cubase to give me a single voice program change.

Does anyone have a script for the P115 or a piano with a similar patch arrangement, or any related advice?

Thanks! :slight_smile:

Did you set the local off on your keyboard when using it with Cubase?

Local control is “on”, since I want to use the P115’s internal sounds… I’m just trying to select the P115 sounds in Cubase (so I can save presets for it and another synth).

The P115 is receiving midi data. When I try to select a voice in Cubase, I get whatever voice was already selected on the P115, plus the voice selected in Cubase layered with it…in much the same way as would occur if I held one button on the P115 and selected the second voice as I described above.

So it would appear that either a) Cubase is only adding the “second” voice to the first, as if I was already pressing a button for the first voice, or b) My Cubase script is sending data that applies to “dual” mode, and I need to somehow configure my script to ensure it selects only one voice.

Local control should be set to off when the keyboard is connected to computer to avoid doubling midi events.

When you press a key the internal sound generator of the keyboard receives a note on message. The same note is sent to computer and then Cubase sends it back to the keyboard. So you have the same note twice.

In some cases it may result in what you describe.

Imagine you have a midi track set to channel 2. You choose a patch. Let’s say strings. When you press a key you get the string sound because Cubase sends that note back to keyboard on channel 2 where the strings are loaded. But because the local control is on the keyboard will also play the same note on channel one with whatever patch you may have currently selected on the keyboard.

You can make a simple test. Draw in a few notes in Cubase and let it play back without pressing any key on the keyboard. If you still get two sounds then it’s not the local control.

I switched local control to off, and that took care of the dual voice issue. Thanks!

Remaining Issue:
I’ve managed to manually configure the settings in Cubase device manager so I can select most of the P115’s voices. However, I’m having trouble getting the “Bright Piano” voice to work (all I get is the “Grand Piano” voice when I select Bright Piano from Cubase). I’ve tried everything I could think of, including a lot of playing around in Device Manager…various midi commands, putting it in its own subfolder, etc…but no luck. Starting to drive me a bit batty o_O

Screencap from Cubase - an example of settings I’ve tried:

From the P115 Midi doc:

Appreciate any further tips you might have!

The ‘Bright Piano’ has program change 0 in the patch list. On the midi implementation you can clearly see it needs program change 1. One way to fix this is to first de-install the patch list in Cubase, then open it in a txt editor (path = C:\Users%username%\AppData\Roaming\Steinberg\Cubase XX_64\Scripts\Patchnames\inactive) and change the value to 1. While you’re at it you may want to check all other patches and program changes as well and correct them if needed. After you save it you can then set it up again in Cubase so it will load with the new and correct setting(s).

The ‘Bright Piano’ has program change 0 in the patch list. On the midi implementation you can clearly see it needs program change 1.

The Program Change number looks correct to me. Yamaha is using 1-128 for Program Change while Cubase needs 0-127. So you need to subtract 1 as stated in the manual.

I agree with Nickeldome’s suggestion to edit the patch script txt file instead. I find it much easier then trying to edit the patches within Cubase itself. I tried to create a patch script from the picture you posted. The numbers are Program Change-1,MSB,LSB. p2 is level hierarchy. You can change it to p1 if you want to.

[cubase parse file]
[parser version 0001]

[creators first name]
[creators last name]
[device manufacturer]YAMAHA
[device name]Yamaha P115
[script name]Yamaha 01v
[script version]version 1.00

[define patchnames]

[mode] Voices

[p2, 0, 0, 122]		Grand Piano
[p2, 0, 0, 112]		Bright Grand
[p2, 5, 0, 122]		Mellow Grand
[p2, 5, 0, 123]		DX E. Piano
[p2, 4, 0, 122]		Stage E. Piano
[p2, 4, 0, 123]		Vintage E. Piano
[p2, 16, 0, 122]	Jazz Organ
[p2, 19, 0, 123]	Pipe Organ
[p2, 18, 0, 122]	Rock Organ
[p2, 11, 0, 122]	Vibraphone
[p2, 48, 0, 122]	Strings
[p2, 6, 0, 122]		Harpsichord
[p2, 32, 0, 122]	Wood Bass
[p2, 33, 0, 122]	E. Bass


You can give it a go if you want to. Create a new text file, copy the code.
(The same patch script is in attachment)
Place the txt file into:

C:\Users\UserName\AppData\Roaming\Steinberg\Cubase XX_64\Scripts\Patchnames\inactive\yamaha

It should appear in Cubase Midi Device Manager as Yamaha P115 (or whatever you write as [device name])
Yamaha P115 test.zip (443 Bytes)

I managed to get the bright piano voice working by configuring it in Device Manager. Somehow LSB 122 (not 112) and PC #2 worked. If I run into other issues (or just feel really brave), I’ll try the script you kindly provided…I’ll save it to my drive for future use.

Thanks again for your help!