I try to change the preset of pulsar synths from Cubase sx2 program change... Sometimes work, sometimes don't ! Do I have tweek in the Cubase Midi devices manager ??? or do something stupid!!!
Thanks for your ansers
CB)
Program change
- Mr Arkadin
- Posts: 3283
- Joined: Thu May 24, 2001 4:00 pm
this might help too on the scope side.
Valid for all devices, (spacef or not) : Program changes work only when the Banks and the presets are indexed (see animation below). The banks/presets must not have a "-1" number or Program changes will not be received (because "-1" is not referenced as a "program" and therefore, cannot be changed).
- Also, you must select and open the bank you wish to use, so that you can "see" the preset list that you want to remote control.

Valid for all devices, (spacef or not) : Program changes work only when the Banks and the presets are indexed (see animation below). The banks/presets must not have a "-1" number or Program changes will not be received (because "-1" is not referenced as a "program" and therefore, cannot be changed).
- Also, you must select and open the bank you wish to use, so that you can "see" the preset list that you want to remote control.

Another neat gif, spacef!
It's been since 2.04 since I selected presets over MIDI eh. There were no banks yet, and only Program Change was enough.
Tried it in the beginning, but I have some problems using it daily. MrA, that's a good trick
I noticed that the only time tracks sent their events, was right after opening of the Cubase project. So to reset all preset selections in SFP I had to close/open the project in Cubase. There's only Program change to 'Chase', not BankSel, which is according to the MIDI Specs not necessary if the device stays in the same bank. Is that the case with SFP devices too?*
Then for a while I used to draw BankSel/PC messages in the Event List, but that's not intuitive to say the least. And I finally gave up using it...
* There is 2 ways to select MIDI programs:
1) one is as an MSB/LSB string, where the BankSel always preseeds a PC.
2) In the other BankSel is disgarded when it remains the same, this is the MIDI Standard. In Cubase's Chase this could cause inconsequent behaviour since a BankSel may have occurred during playback. Maybe I should stop trying to select Banks then eh.
*Also, 2 other MIDI approaches: (with n,m=0-F, the MIDI channel and preset number)
1) Here, BankSel is cc#0 and PC is cc#32.
PC = 0xBn 0x1F 0xmm.
2) is with the PC instead of CC# type:
PC = 0xCn 0xmm.
This origin of this: 2) saves MIDI bandwidth since the type (high nible 'C') and channel are transmitted in a single byte.
To make things even more easy, Cubase handles all of those, and differently from VST>SX. Would need to look that up again, on a lousy sunday afternoon. Or does someone know like that?
It's been since 2.04 since I selected presets over MIDI eh. There were no banks yet, and only Program Change was enough.
Tried it in the beginning, but I have some problems using it daily. MrA, that's a good trick

Then for a while I used to draw BankSel/PC messages in the Event List, but that's not intuitive to say the least. And I finally gave up using it...
* There is 2 ways to select MIDI programs:
1) one is as an MSB/LSB string, where the BankSel always preseeds a PC.
2) In the other BankSel is disgarded when it remains the same, this is the MIDI Standard. In Cubase's Chase this could cause inconsequent behaviour since a BankSel may have occurred during playback. Maybe I should stop trying to select Banks then eh.
*Also, 2 other MIDI approaches: (with n,m=0-F, the MIDI channel and preset number)
1) Here, BankSel is cc#0 and PC is cc#32.
PC = 0xBn 0x1F 0xmm.
2) is with the PC instead of CC# type:
PC = 0xCn 0xmm.
This origin of this: 2) saves MIDI bandwidth since the type (high nible 'C') and channel are transmitted in a single byte.
To make things even more easy, Cubase handles all of those, and differently from VST>SX. Would need to look that up again, on a lousy sunday afternoon. Or does someone know like that?

more has been done with less
https://soundcloud.com/at0m-studio
https://soundcloud.com/at0m-studio
-
- Posts: 652
- Joined: Tue Dec 09, 2003 4:00 pm
- Location: Home By The Sea
I had so much trouble trying to get the program changes to work properly from Cubase, I actually put a MIDI filter in between the sequencer and device to REMOVE program change messages, and just left the devices alone. I have a different project file for each song I work on, so this approach may or may not be appropriate, depending on how you work. And I still found weird problems with devices not always getting restored to exactly where I left them. Just an opinion - one of the biggest weaknesses of the platform, there's so much potential to control all parameters from Cubase, but little bugs in both Cubase and SFP prevent you from doing this completely. It's still a great system overall.
I have quite an easy time with program changes, but may be because i never try "bank changes".
Generally I use Prog.change to browse into presets (i select banks manually, it is more easy)
I use Cubase SX and a small edirol pcr-30 keyboard (one of the cheapest on the market) and which has prog.change +/- buttons.
When I want to record program changes, I create a special bank where I put the presets that I need in the right order, then i use the pcr-30 to change the presets, and all is recorded inside cubase on the relevant midi track (ie i do it "live" , but grossly).
Then I quantize manually the program changes in the event editor.
Then I sample the whole track and work on the audio.
Generally, I do not keep "live" synths in a project. I prefer to record an audio track, save a preset, save the preset list and that's it. If i ever need to go back to that sound, i reload the synth, load the reset, and that's it.
I think it is much faster to bounce quickly and work on audio. old projects are more easy to reload too (because all is on audio track).
Generally I use Prog.change to browse into presets (i select banks manually, it is more easy)
I use Cubase SX and a small edirol pcr-30 keyboard (one of the cheapest on the market) and which has prog.change +/- buttons.
When I want to record program changes, I create a special bank where I put the presets that I need in the right order, then i use the pcr-30 to change the presets, and all is recorded inside cubase on the relevant midi track (ie i do it "live" , but grossly).
Then I quantize manually the program changes in the event editor.
Then I sample the whole track and work on the audio.
Generally, I do not keep "live" synths in a project. I prefer to record an audio track, save a preset, save the preset list and that's it. If i ever need to go back to that sound, i reload the synth, load the reset, and that's it.
I think it is much faster to bounce quickly and work on audio. old projects are more easy to reload too (because all is on audio track).
I've tried all methods I mentioned above, how MIDI monitor can make life easy. 
Here's some test results...
For SFP:
- > The MIDI message SFP changes preset for is 0xCn 0xmm.
-> Any Program Change message seems to be filtered, if a preceding BankSel message does not match the selected bank in the device's preset list. An SFP device does not switch to the bank because you send such a message.
For Cubase SX:
- > If bnk:off, no BankSel message is transmitted when selected a prg. MIDI message: '0xCn 0xmm'
- > If bnk is not off, a combined message is transmitted: cc#00, cc#32, '0xCn 0xmm'.
So, if bnk is not off, it has to be set in SX to match the selected bank in SFP. Leave bnk:off eh, and like spacef, make a bank for each song and store the presets together would work great, also for going live.
I'd make (and distribute if done properly) more SX MIDI Devices. For example there's some user preset lists for great synths which come in many banks, would be nice to explore presets in the sequencer like with VSTi, displaying proper names so you know what you're gonna get when you click, which is not the case when you're scrolling numbers. Wouldn't go for this on all synths, but to have a Prisma sitting in the project like that makes very intuitive jamming.
Enjoy the weekend,
at0m.

Here's some test results...
For SFP:
- > The MIDI message SFP changes preset for is 0xCn 0xmm.
-> Any Program Change message seems to be filtered, if a preceding BankSel message does not match the selected bank in the device's preset list. An SFP device does not switch to the bank because you send such a message.
For Cubase SX:
- > If bnk:off, no BankSel message is transmitted when selected a prg. MIDI message: '0xCn 0xmm'
- > If bnk is not off, a combined message is transmitted: cc#00, cc#32, '0xCn 0xmm'.
So, if bnk is not off, it has to be set in SX to match the selected bank in SFP. Leave bnk:off eh, and like spacef, make a bank for each song and store the presets together would work great, also for going live.
I'd make (and distribute if done properly) more SX MIDI Devices. For example there's some user preset lists for great synths which come in many banks, would be nice to explore presets in the sequencer like with VSTi, displaying proper names so you know what you're gonna get when you click, which is not the case when you're scrolling numbers. Wouldn't go for this on all synths, but to have a Prisma sitting in the project like that makes very intuitive jamming.
Enjoy the weekend,
at0m.
more has been done with less
https://soundcloud.com/at0m-studio
https://soundcloud.com/at0m-studio
- ChristianB
- Posts: 68
- Joined: Thu Feb 10, 2005 4:00 pm
- Location: Montréal