News:

PSR Tutorial Home
- Lessons, Songs, Styles & More

Main Menu

How to integrate external sound modules

Started by voodoo, May 04, 2018, 10:31:17 AM

Previous topic - Next topic

voodoo

Hi,

based on the concept of the yammex sound module, I tried how to integrate external sound modules into Genos. There are two ways, which I will propose here.

1. Using YEM

In YEM we can build packs containing dummy voices, which do nothing, but sending out MSB/LSB/PC messages to midi out. There we have:

* MSB is always 063 (for regular voices) or 062 (for drum voices).
* LSB is configurable freely
* PC (Program Change number) is configurable freely.

Using this, we can build our own expansion pack containing only dummy voices to control external sound modules. When our sound module only listens to PC, or to LSB/PC this will work fine. However, we have some caveats:

* For MSB we can choose only 062 or 063.
* For LSB we have to configure the LSB assignment in YEM. This is a little bit uncomfortable when we have several packs.
* Each LSB number can be used only once.

What is the problem with the unique LSB? Let's consider the Korg M1 (or the virtual iM1 for iPad). For each bank number there is a set of programs, when the M1 is in program mode, and there is a set of multis, when M1 is in multi mode. Both bank share the same LSB number. But we cannot use two different packs in YEM which have the same LSB number.

2. Using voice files (without YEM)

There is another way to build dummy voices:

* Select any voice in Genos
* Save this voice as user voice to the USB stick as a myVoice.vce file
* Make many copies of this and rename them as you like
* Use any midi or hex editor to set the MSB/LSB/PC values in this voice file
* Copy all voice files back to USB stick and call them directly from Genos without pack installation.

In the attachment, I send some example voice files for different MSB/LSB/PC combinations. You can rename and use them as you want. Here we have the following advantages:

* We can use any MSB/LSB/PC combination without restrictions
* We can use several copies of MSB/LSB/PC combination without restrictions
* We can put voices from different banks into the same folder
* We can use them on the fly from USB stick (or internal storage) without pack installation.

Note the following observations:

* When you set the MSB/LSB/PC values to banks that are used by Genos, theses voices are called.
* So, to not interfere with other voices, use fantasy bank numbers as MSB=064 or MSB=100.
* When we set MSB=0 or MSB=1, we can call all hidden GM/XG voices of the Genos. For example with MSB/LSB/PC=0/0/0 we get the standard GM piano sound.

What do you think of this? Is it a solution?

Uli





[attachment deleted by admin]
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

voodoo

Here is an example for calling some GM voices.

[attachment deleted by admin]
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

Joe H

Quote from: voodoo on May 04, 2018, 10:31:17 AM
... There is another way to build dummy voices:

* Select any voice in Genos
* Save this voice as user voice to the USB stick as a myVoice.vce file
* Make many copies of this and rename them as you like
* Use any midi or hex editor to set the MSB/LSB/PC values in this voice file
* Copy all voice files back to USB stick and call them directly from Genos without pack installation...

I tried this on my S970.  I get the same results as with the S910... It does not work on the PSR arrangers.  The OS filters the "illegal" Voice message.  I wrote a Voice message for my Analog plug-in card installed in my MU128 sound module.  After I edited the .vce file in MixMaster I send the message from MixMaster and it worked.  When I tried to load the AN User Voice on the keyboard it did not work.  So I changed the file extension from .vce to .mid and play the file in MixMaster and it worked but did NOT work when the MIDI file was played on the S970 sequencer.  I tried to edit the .vce file on the keyboard, and got a message that the file could not edited.

The PSR OS  will filter out all non-supported Voice messages and any other MIDI messages not supported by the keyboard.  I think this was done to keep people like me from corrupting the operation of the keyboard. This was the case with the S910 and still is the case with the S970.

I am working on building a dummy Voice bank for the Motif Rack XS User Voice Bank 1 and the User Multi Bank.  They work flawlessly once I have my custom MIDI configuration loaded which is set up with Local Off on R1, Transmit MIDI for R1... Note, CC, PC, PB and AT.  For Receive MIDI... PB and AT only.

The result of this setting is that when I select this custom MIDI configuration, I hear only the Motif sounds for R1 which play just like the S970 Voices and I can play along with styles using the Motif R1 Voice(s).  When I open the Motif dummy Voice pack on the S970, I have direct access to my favorite Motif Voices or Multis (by name)... 10 Voices per page.  The other advantage of creating a dummy pack is that with Vali's new utility... YEM Content Explorer we can generate Voice definition files for MixMaster, PadMaker and PadMaker-Midi as well as StyleMagic YA and Midiworks YA.  It is important to add our own support for the custom packs we install on our keyboards.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

JohnS (Ugawoga)

Hi
Can't you just midi up and sound out to sound In on Genos and the expander sounds are there through the outs of your main speakers.
Also use an external mixer a possibility
That way you can blend sounds from Genos an external device

all the best
John


"Oh sausages then!! ;D
Genos, I7 computer 32 gig ram, Focusrite 6i6, Cubase controller, Focal Alpha Monitors, Yamaha DXR8 Speakers
Cubase 10, Sonarworks, Izotope.  Sampletank, Arturia and Korg software.  Now IK Mixbox

voodoo

Quote from: Joe H on May 05, 2018, 08:49:53 AM
I tried this on my S970.  I get the same results as with the S910... It does not work on the PSR arrangers.

Hi Joe,

wow, I did not expect this. This is a little disappointing. Have you tried to locate the cause for the problem? Do user voices never send out midi? Or does the OS know, which bank numbers are legal and which are not? Can there be another cause for the problem? Like corrupting the voice files by editing them?

Have you tested this:

* Save any S970 voice as user voice.
* Monitor the midi out if it sends the MSB/LSB/PC
* Edit the voice file to some other voice number
* Check, which combinations work and which do not

I have seen, that the Genoss does not send all the other midi information from the voice file. It only sends the MSB/LSB/PC. So there seems to a filter, too. I will experiment a little more on this topic.

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

Joe H

Uli,

I will do a little more experimenting, but I'm not to optimistic that things will work. 

As I noted above, I first ran into this problem on my S910.  I was baffled by it and thought I was doing something wrong.  But came to the conclusion that Yamaha has made great effort to prevent users/players of the arranger from corrupting the operation of the keyboard.

Fortunately for me the Motif uses MSB 063/062 for it's Voices. It is a lot of work to setup the User Voice and User Multi banks on the Motif and create the dummy Voice banks in YEM but it will be worth it in the long run.  I have downloaded a 3rd party Voice bank produce by JayB from Germany.  JayB's sounds are superior to Yamaha Preset Voices.

:)    8)

I'm really glad I bought the Motif Rack XS because now I have the power of a real synth as an extension of my Arranger... I have the best of both worlds!  As I mentioned in another thread I will write a User Guide for how to integrate the Motif with the arranger.  Many concepts will work for other external instruments as well.  I use the Virtual Acoustic, Analog and DX/FM plug-in cards as external sounds for my S970 too.  So was hoping your idea for editing Voice Set files would work. I have had to use my Peavey PC1600x MIDI controller to select those plug-in Voices.  I'll post again after I try a couple more experiments.


Regards,
Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Patrick

Hi Uli, i've tried you're Gm voices, and it's works well on my S970; I can load the voices from USB and we can also edit all the voices; perhaps because the voices are on the S970? Have a nice sunday Patrick

:)

Joe H

Uli,

I did some more testing.  I edited the Grand Piano Voice Set file in MixMaster to MSB 36 LSB 2 PC 60.  Played the file and it worked correctly to call up the Voice Pastel on my AN plug-in card.  When I loaded this as a User Voice from my USB stick it called up the wrong Voice.

So I loaded it back into MixMaster and deleted all the sy*** messages and tried playing the file again from MixMaster and it worked.  When I tried loading the file as a User Voice on the keyboard I got an error message staing the file did load correctly.  Next tried changing the Pastel.vce to Pastel.mid and played the file from MixMaster and it worked.  The file contained just the time signature, tempo, MSB = 36, LSB 2, PC = 60.

So next I loaded the MIDI file Pastel.mid into the S970 sequencer... hit play and it did not work.

I think if someone who has a Genos and an external keyboard other than a GM instrument could try this to see if the Genos will send non-keyboard Voice messages we could resolve the issue for the Genos.  It does not work on the PSR arrangers. Maybe writing the Voice message as a sy*** string might work but that is not doable for most people.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Joe H

I did another test.  This time I edited a User Voice file I created from my custom expansion Voice pack that I know works.  I edit it in MixMaster and removed all messages but the Time Signature, Tempo and MSB, LSB, and PC.    -- > MSB 063   LSB 020   PC 001

I got the same error message when I tried to load the modified User Voice... "file did load properly"

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

voodoo

Hi Joe,

I have seen, that MixMaster changes the structure of the midi file. So perhaps it would be better to use a hex editor instead of MixMaster for voice files. I Have generated some example voice files using MixMaster and will test them on the Genos tonight. I will give an update about this later.

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

voodoo

Joe,

I verified that Voice files do not work after they have been edited with MixMaster.

* After loading and saving them they do not send program changes any more.
* After removing events, they give the message "cannot be loaded properly".

So it is necessary to edit voice files with a hex editor like "Hex-Editor MX" for windows or "iHex" for Mac. I will post some generic voice files for different banks later.

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

voodoo

Hi Joe and others,

here I post some generic voice files for several banks:

* Bank-00-00: GM - Use this to call the GM voices of the Genos

* Bank-36-02: This is for Joe and his AN plug-in card

* Bank-63-00: Use this for example for Motif Rack XS Preset Bank 1
* Bank-63-01: Use this for example for Motif Rack XS Preset Bank 2
* Bank-63-02: Use this for example for Motif Rack XS Preset Bank 3
* Bank-63-03: Use this for example for Motif Rack XS Preset Bank 4
* Bank-63-04: Use this for example for Motif Rack XS Preset Bank 5
* Bank-63-05: Use this for example for Motif Rack XS Preset Bank 6
* Bank-63-06: Use this for example for Motif Rack XS Preset Bank 7
* Bank-63-07: Use this for example for Motif Rack XS Preset Bank 8

* Bank-64-00: Use this for sound modules which need only PC. Bank number 64 is just dummy.
* Bank-64-01: Use this for sound modules which react to LSB=01, for example M1 EX Presets
* Bank-64-02: Use this for sound modules which react to LSB=02, for example M1 Memory
* Bank-64-03: Use this for sound modules which react to LSB=03, for example M1 Synth 1

If these voice files work for you, you can rename them as you like.

Joe, can you test these voice files on the S970?

Uli

P.S.: I used a hex editor to generate the PC numbers of one bank. Then I used grepWin to change the bank numbers of all files of a bank by one click.
P.P.S.: The program change numbers are zero-based. Add one, if you want to start counting from one. ;)


[attachment deleted by admin]
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

Joe H

I have created a dummy Motif Voice User Bank 1 which is written 063 008.  And I have also created a User Multi bank written 063 068. This was done in YEM.

These both work fine.  I have them installed on my S970 and have written the names of the Voices and Multis in YEM so I can see them on my S970 screen. .  They work flawlessly.  I'll test your .vce files and get back to you.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Joe H

Uli,

I've tested your files.  All the Motif banks work and call up the Voices but the numbers are off by 1. 

Example: I select Voice 2 and it calls up Voice 3.  I select Voice 7 and it call up Voice 8.

The bank 64 works for the MU128 sound module but there aren't many Voices on that bank.

so... next I tried to open a Voice Set file and got the sam message as befor when I edited one in MixMaster... This file cannot be edited.

The dummy Voice banks I created in YEM I CAN open in Voice Set and edited the files if I want.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Joe H

I did another test with the installed dummy Voice pack I creating YEM.  The Motif responds to all XG / GM2 sound controllers.  When I open Voice Set and adjust the Reverb, Chorus, Attack, Release, Filter or Resonance the Motif responds.  But when I save the Voice Set file and load the that same Voice using the User Voice (modified Voice set file) the setting are not applied to the Motif Voice.

My guess is that the Voice on the Motif loads too slowly and the Voice Set file is sending these modifications too early for the changes to be applied to the Motif Voice.   The one exception is the Arpeggio Type save in the .vce file.  When I press the Harmony/Arp button the correct arp plays for the Motif Voice.  If I open Voice set after the Motif Voice is loaded then any parameter in Voice Set is applied to that Motif Voice.

Example:  If I adjust the reverb, Chorus, Attack or Release Rate, these are applied to the Motif Voice.  It's just that we cannot save these settings and expect them to be applied when we load the Voice Set file.

Whether this is the case with the Yammex sound module we need to find out. If we cannot modify a Yammex Voice with Voice Set and save those custom settings it may or may not worth buying the module depending on your individual needs.  I can assume the Yammex Voices are very high quality because of the large wave memory.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

voodoo

Quote from: Joe H on May 08, 2018, 05:23:40 PM
so... next I tried to open a Voice Set file and got the sam message as befor when I edited one in MixMaster... This file cannot be edited.
The dummy Voice banks I created in YEM I CAN open in Voice Set and edited the files if I want.

Hi Joe,

I have tested the voices files on the Genos, and here they can be edited. So I think, they cannot be edited on the S970, because they are in Genos format containing more parameters (for example the switch for mono legato).

So if you need other banks than 062/063, you could use a S970 voice file and patch it to another bank number.

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

Joe H

Quote from: voodoo on May 09, 2018, 12:01:45 PM
. So I think, they cannot be edited on the S970, because they are in Genos format containing more parameters (for example the switch for mono legato).
Uli

So lets test your theory. Can you post a Genos Preset Voice we know is in  the S970 that you opened, (edited the Volume) and then saved in Genos Voice Set?  Maybe the Grand Piano.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

voodoo

Quote from: Joe H on May 09, 2018, 04:43:18 PM
So lets test your theory. Can you post a Genos Preset Voice we know is in  the S970 that you opened, (edited the Volume) and then saved in Genos Voice Set?  Maybe the Grand Piano.

Joe H

I will do as you say.

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

Joe H

Uli,

I did another test. I loaded the Legacy Concert Grand and edited the Chorus Send in MixMaster and saved.  It loaded in Voice Set on my S970 and I was able to open the file in Voice Set and look at the change I made in MixMaster.  So... We still don't know what is the issue is here.

???

Joe
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Joe H

Next test... I loaded the same Legacy Grand Piano back into MixMaster and deleted all the sy***.  It opened on the S970 Voice Set and I could see the parameters.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

Marty

Hi,

Using one of Uli's vce files I edited with MixMaster and have generated a minimum vce voice file configuration which loads on my 770 without error.
For testing I am using the IOS Sunrizer synth with the midiflow app. for remapping the MSB bank select. Works a charm!

Voice file in attachment.

[attachment deleted by admin]

voodoo

Marty,

thank you very much. Perfect.

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

voodoo

Marty,

here is a screen shot of your voice file opened in MixMaster. You have left in there

* NRPN 001/100 = EG DECAY TIME
* NRPN 001/102 = EG RELEASE TIME

(according to this XG documentation: http://www.studio4all.de/htmle/main91.html#xgprgsystem03 )

Are these messages important?

Uli

[attachment deleted by admin]
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

Marty

Hi Uli,

Yes they seem to be.  The voice file will not load on my 770 without these NPRN events

Marty


voodoo

Marty,

perfect, great work. I will try to use your template for my projects.

Have you tried to open the voice editor on the S770? Does this work without all the other messages?

Uli
Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

Marty

Hi Uli,

Voice cannot be edited with 'voice set'. Your original voice files are also unable to be edited with 'voice set' on my 770.

Marty

Bachus

Very interesting topic...

I could use this to call patches in mainstage..
Mainstage is currently the host for both my VST's
As well as for my racks (motif XS, Integra7, Gemini)
Its currently controller by my Kronos..

When i decide on a Genos, i will replace Kronos with a kawai VPC1
Having both instruments directly on top of eachother..

I will be follwing this topic closely, any more information is appreciated ...

Joe H

Bachus, 

FYI... If you should decided buy another Yamaha arranger in the future, I will be posting my custom Motif XS (synth) User Voice bank and the dummy expansion pack created in YEM with matching voice names that you can load into the arranger to call up the Motif Voices.  I'm still tweaking the voices to make sure all the volumes are approximately equal, and adjusting some of the DSPs a bit.

I am quite pleased at how the Yamaha arranger and Motif integrate so well. It's like having a hybrid arranger / synth instrument. I will start writing a User Guide soon for how to do this because I know a few of us here have both instruments.

:)

Joe H 
Music is the Universal Language!

My Article: Using Multi Pads in registrations. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html

voodoo

Joe,

I investigated  in editing dummy voices in Genos. My result: You cannot edit user voice set files, unless there is a real voice with same number in preset or expansion area. So you can make dummy voices bank for MSB 062/063 with YEM and make user voices from them which are editable. But this is not possible for arbitrary bank numbers.

And voices files can only be edited, if they origin from the same keyboard. So I cannot edit user voices from S770 or S970 on the Genos.

ULi

Yamaha Genos
Yamaha MODX7
Yamaha P-125 Digital Piano
Nord Electro 5D

vlbrgt

QuoteYou cannot edit user voice set files, unless there is a real voice with same number in preset or expansion area
After som tests I come to the same conclusion as you Uli.

QuoteI have seen, that MixMaster changes the structure of the midi file.
Looking with an Hex editor into the code of the voices shows that they have a PPQN of 96.
Also looking more specific into the midi event codes, these little midi files (voice files) do not use Running Status.
This also counts for the OTS chunk in a style file.

Loading a voice file into MixMaster will set PPQN to 1920 and when saving the file the Running Status is activated.

What is running status :
For example you have a lot of controller events in a midi, voice or style file for the same channel :

B0 00 00 00 B0 20 74 00  C0 15 00 B0 48 5E 00 B0 63 01 00 B0 62 66 00 B0 06 54 00 B0 26 00 00 ...

When running status is activated then the status byte will not be repeated :

B0 00 00 00 20 74 00  C0 15 00 B0 48 5E 00 63 01 00 62 66 00 06 54 00 26 00 00 ...

So you gain some bytes that do not need to be send to the midi receiver.

I have tried a few voice files and also a style file that where changed in MixMaster, and there was no problem loading the files into Genos and playing the style...
I don't know why running status is not used in voice files and OTS chunk.
Perhaps Yamaha has a good reason to do so ...
 
Regards
Etienne

If plan A doesn't work, don't forget that the alphabet has 25 more letters.
Volbragte@telenet.be
https://voetsoft.be
Genos