Jump to content

Recommended Posts

Posted

I am a newbee to Sonar , this said, having a long history in using sequencers (until i came around this nice program which is allowed to be used for free for non comercial use , which is great to experiment and check if the application can do what i want to do ...

The 1st issue i am having is when insert a bank/patch change .. I noticed that (at least on midi tracks as this is where i can easily monitor the traffic), that after the selected patch/ program change value is send, another program change is send with value 0 ... I cant figurer out where it is coming from.

I tried different instruments, even created a new one , but all behave the same.. 

Also when i on my keyboard do a program change, this change is forwared to the midi interface , but also directly after that a program change value 0 is send.

This prevents me to select the appropiate sound .....

i am convinced it is something within cakewalk as when i do the same using Pocket Midi, this strange behaviour isnt there...

Hopefully some one can point me to the right direction which parameter to change or just confirm it is an undocumented feature (a Bug)...

 

regards

 

Eddy

Posted

Where are you entering the patch changes? 
 

The way Sonar works is that the track header is where you can enter channels, banks and patches. 
Entering them in the instrument user interface will be over ruled by the data in the track header. 
Downloaded midi files might have a patch change that is not on zero. 
Open the event list and look for them there. 
Any events showing on the list like CC7 will override changes you make. Delete all unnecessary CC events. 
 

Sometime the patch changes don’t show up on the event list. This has always been a mystery to me. But they should show up in the track header. But sometimes there is another patch changes later in the song. 
 

There’s a free app called Midi Sequencer that I like to use sometimes because it is very easy to see all the midi data that is often elusive in Sonar. 

 

 

Posted (edited)

i tried multiple options ....
Option 1:
My keyboard is connected to the Midi-In interface of my pc , and the midi-out is connected to a midi analyzer.

On my  keyboard  i  Select Sound nr3.
The Program change is send to the pc, and as i selected the midi track it is forwarded out to the midi-out interface.
The same Program change is send out , but directly after that, the cakewalk sends also a program change with value 0.

Option 2: 
i selected the midi track, opened the even viewer and added an entry (Program change nr 3.
This is again send out , and also the program change 0..

Option 3 , is as you mentioned using the insert bank/patch.

As Bank Select select method , selected Control 0 (which is correct), entered a bank nr and selected a sound.
gain same ebhaviour , On controller 0 the bank nr is send correctly , but on the program change the sound nr is send and an other program change with value of 0 .

I used a simple program (Pocket Midi)to test the used midi interfacec ( i tried 2 different models/types without any differen behaviour. 
I choose the menu option Program change, there you give the Midi Channel ,Bank MSB value(Controller 0) and the program nr.
When i then hit Send, all the correct values are send , the correct sound in the correct bank is selected.
This rules out that it could be an issue with the midi (interface) drivers...

I am using version 2025.11 Build 068


I Hope this explains all what i tried during the troubleshooting and why i suspect an issue with Cakewalk Sonar.
 

regards

 

Eddy

Edited by Eddy Mulder
Posted

 

 

2 hours ago, Eddy Mulder said:

after the selected patch/ program change value is send, another program change is send with value 0

Since it's always possible there's been a regression and I haven't used this capcability recently, I did a quick test sending a patch change to MIDI OUT and recording it to another track via hardware loopback. I got two patch changes recorded on the same timestamp which isn't right, but they both have the same non-zero value. When I did the same with the patch change at 2:01 instead of 1:01, I didn't get the dupe message.

Do you have an Instrument Definition assigned to the OUT port?

Posted (edited)

Yes i have, tried several options from default , general midi , to any of the available options , even created a new instrument definition.

Selecting different definition, doesnt change the output i get when doing a program change... in my opinion it is just the definition of the available selectable sounds,so it is easy for the user to select the correct soundbank and the sounds available on that bank , but has nothing to do which traffic i send or how it is send
In that screen what i find annoying you can only define the name of the instrument, but cant add bank information (which you see for some of the other defined instruments). None of the options gave me positive result, except that the startup behaviour is a bit different when reopening the saved project that other midi data is already send out at time of loading the project... Where these control changes are defined, i dont have a clue opened the instrument definition files and couldnt find any of them.

explanation program change issue.pdf

Edited by Eddy Mulder
Added screen shots to explain difference
Posted (edited)
  • IIRC I used to use 3 commands to do Bank Switching:
    • Bank switch MSB command
    • Bank switch LSB command
    • Program change command
  • IIRC some gear only uses one of the two Bank switch commands
    • Not sure what was sent
  • IIRC the Instrument Definition tells Cakewalk Software which Bank switching method to use.

Assuming my memory is correct, does this help solve the issue?

image.png.c5f8165016bdd163865452ebe4076ac3.png

Edited by user905133
added image
Posted (edited)
1 hour ago, Eddy Mulder said:

In that screen what i find annoying you can only define the name of the instrument, but cant add bank information (which you see for some of the other defined instruments).

I did my Instrument Definitions in Notepad.  When they added the wizard I couldn't use it because it took me way more time to use than just typing a basic text document and I could just cut and past patch / preset lists. So I had no idea you can't add bank names with the wizard. [See ADDENDUM below.]

Have you tried editing the Instrument Definition in a basic text editor (such as Notepad)?

ADDENDUM: I might have misunderstood what you meant by " . . . can't add bank information . . . ."  What bank information can't you add with the wizard? I ask because I just did a test by importing a bank from a hand-edited *.ins file.

image.png.9a10bdf24a280ba1628eccd74ed04339.png

image.png.5b99ee0c7dab0bf6e0bb570caf163a69.png

image.png.eb31ff6cca4af091ae7fe05aa7a5b08e.png

 

 

Edited by user905133
Posted

The problem is not the Bank Select, my midi device uses ControlChange 0 for that , that works perfectly.

The problem i have is with the program change that cakewalk adds for no reason after every defined program change (or initiated from the attached keyboard when forwarding the input to the desired output port / channel) a program change 0. This means that i can only selected bank 0 sound 0 , bank 1, sound 0 , etcc.. what ever patch select i choose ... this is perfectly shown in the midi analyzer tool that cakewalk does this , Using a different software application , it doesnt happen.

 

Posted

And regards the instrument definition file , it doesnt have any relation to how cakewalk sends your bank select / control change.
Before i invest time to make it in notepad, what also was thinking of, i need to fix the issue / find the root cause why a ProgramChange 0 is send after i send a program change..

Posted (edited)

Thanks for the clarifications.  Sorry I couldn't help.  I can't recall ever having had Cakewalk echo out an extra Program Change 0 Command when it received an incoming Program Change of any value. But I haven't tried echoing out incoming MIDI data to hardware through Cakewalk Sonar. I have  played some files with note and CC data though.

I do have a sound module that includes a sequencer section.  If it still works, I'll see if it records an extra program change command going through Sonar.  

Edited by user905133
fixed typo

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...