Are there any Midi geniuses out there?

Joined
Oct 20, 2021
Messages
14
Reaction score
4
Hi all,

I have a digital piano and remotely change the inbuilt sounds/patches via Mainstage. However, I frequently use my keyboard as a midi controller to control other keyboards or VSTs; therefore I frequently have to manually set the local control on my piano to off (or turn the volume down!). I would like to automate this process and know the hex commands to achieve this are definitely:

B1 7A 00 = Local Control off - Midi channel 2
B1 7A 7F = Local Control on - Midi channel 2

As far as I know (and I know very little about Midi) it is not possible to send this type of command from Mainstage. Therefore, I have tried using a third party app (Keyboard Maestro) to generate and send the above commands, to no avail. I have verified the message is being sent using MidiView. The message in Midiview reads as follows:

Message: Controller Local Keyboard (on/off)
Channel: 2
Value: 0
Hex: B1 7A 00

However the piano does not respond, even though I know it is capable of accepting these messages.

I suspect, even though the message is definitely being generated on the correct midi channel, the piano needs something else, in order to receive or action the command, but I may be totally wrong. If anyone has any idea why I cannot get this to work, I'd be extremely grateful for your input. Thanks in advance.

Mark.
 
Joined
Jun 25, 2010
Messages
1,646
Reaction score
581
It's MIDI CC 122, I'd be surprised if Mainstage can't send that.

I know you said you definitely know all that stuff is right, but just to double-check, how do you know it's MIDI channel 2? Did you yourself set the piano to channel 2 for some reason? (Default is usually 1.)

Info in case it helps, deciphering B1 7A 00 or 7F:

B1 means send a CC on channel 2
7A is the particular CC to send (7A hex is 122 decimal)
00 or 7F is the value to send for that CC (00 hex is 0 decimal, 7F hex is 127 decimal)
 
Joined
Oct 20, 2021
Messages
14
Reaction score
4
Hey Scott,

Thanks for your reply.

I purposely set my piano to midi channel 2 as I have another keyboard on channel 1. I also change my piano patches using Mainstage, set to channel 2, and it work perfectly.

I definitely cannot find a way of telling Mainstage to send a CC 122 command. If anyone reading this knows if it is possible, please give me a shout. I believe Logic Pro, Apple's other software, has this function built in, but I don't really want to spend £199.00 in order to send the occasional midi command.

I also tried firing CC122 from another piece of Midi-manager software that I downloaded straight after my first post and once again, the piano ignored the command.
 
Joined
Jun 25, 2010
Messages
1,646
Reaction score
581
what model is the piano? Have you confirmed in its MIDI implementation chart that it recognizes Local Off over MIDI?
 
Joined
Oct 20, 2021
Messages
14
Reaction score
4
My computer just died [see message above] Anyway, I was saying:

Update: I have found an app called MidiFriend, which sucessfully managed to turn the Local Control off on my piano. This is not an ideal solution, but it's a start!
 

SeaGtGruff

I meant to play that note!
Moderator
Joined
Jun 6, 2014
Messages
4,114
Reaction score
1,737
Some keyboards don't support turning Local Control on and off for a specific MIDI channel. I don't know whether the Kawai model you have supports it, so I'm just making a general comment.

As far as wanting to turn it off for one keyboard but not for any others at the same time, the only time you would need to worry about the channel number for that reason is if you've daisychained your keyboards together with MIDI cables and are using MIDI THRU on them, because if each keyboard is connected separately to your MIDI router or computer then each keyboard should be sending and receiving over its own MIDI port and the channels of one port should not conflict with the channels of other ports.
 
Joined
Sep 19, 2023
Messages
21
Reaction score
4
Hi all,

I have a digital piano and remotely change the inbuilt sounds/patches via Mainstage. However, I frequently use my keyboard as a midi controller to control other keyboards or VSTs; therefore I frequently have to manually set the local control on my piano to off (or turn the volume down!). I would like to automate this process and know the hex commands to achieve this are definitely:

B1 7A 00 = Local Control off - Midi channel 2
B1 7A 7F = Local Control on - Midi channel 2

As far as I know (and I know very little about Midi) it is not possible to send this type of command from Mainstage. Therefore, I have tried using a third party app (Keyboard Maestro) to generate and send the above commands, to no avail. I have verified the message is being sent using MidiView. The message in Midiview reads as follows:

Message: Controller Local Keyboard (on/off)
Channel: 2
Value: 0
Hex: B1 7A 00

However the piano does not respond, even though I know it is capable of accepting these messages.

I suspect, even though the message is definitely being generated on the correct midi channel, the piano needs something else, in order to receive or action the command, but I may be totally wrong. If anyone has any idea why I cannot get this to work, I'd be extremely grateful for your input. Thanks in advance.

Mark.
Are you using USB port or MIDI cables?
 
Joined
Oct 20, 2021
Messages
14
Reaction score
4
Thanks for your replies SeaGT Gruff and Cosmos. I am using USB cables, as 5 pin dins would require extra 'audio boxes', and I am trying hard to keep things as simple as possible.

Switching the local off on the piano remotely, works perfectly when using an app on my Macbook, called MidiFriend, but I am unable to automate this process. I ideally want to switch it automatically - preferably from Mainstage or failing that, via another app I use frequently called Keyboard Maestro.

Mainstage has the ability to create a CC122 command but does not appear to have anywhere to add a 0 to tell the piano to switch it off ( 0=off 127=on)

Keyboard Maestro can send exactly the same command as MidiFriend (according to MidiView) but only the latter works.

Thanks.
 
Joined
Sep 19, 2023
Messages
21
Reaction score
4
Thanks for your replies SeaGT Gruff and Cosmos. I am using USB cables, as 5 pin dins would require extra 'audio boxes', and I am trying hard to keep things as simple as possible.

Switching the local off on the piano remotely, works perfectly when using an app on my Macbook, called MidiFriend, but I am unable to automate this process. I ideally want to switch it automatically - preferably from Mainstage or failing that, via another app I use frequently called Keyboard Maestro.

Mainstage has the ability to create a CC122 command but does not appear to have anywhere to add a 0 to tell the piano to switch it off ( 0=off 127=on)

Keyboard Maestro can send exactly the same command as MidiFriend (according to MidiView) but only the latter works.

Thanks.
Perhaps if you could show us a snapshot of the output data from a midi monitor of both KM and MF could help...
 
Joined
Oct 20, 2021
Messages
14
Reaction score
4
I took some screenshots and pasted them into a pdf, hope it helps. If you need any more info, just say the word.
 

Attachments

  • Keyboard Maestro Midi Problem.pdf
    147.6 KB · Views: 9
Joined
Sep 19, 2023
Messages
21
Reaction score
4
I took some screenshots and pasted them into a pdf, hope it helps. If you need any more info, just say the word.
Yes that's much better for one to understand. Although I'm afraid I'm new to both MF and KBM. However I now know the exact problem you're facing. I noted that with MF the destination is going through ES920 Bluetooth, what about the KBM? Is this using same?

Also, what are those 3 dots red, orange and green on MF they are on and on KBM they are off?
 
Last edited:
Joined
Oct 20, 2021
Messages
14
Reaction score
4
Yes that's much better for one to understand. Although I'm afraid I'm new to both MF and KBM. However I now know the exact problem you're facing. I noted that with MF the destination is going through ES920 Bluetooth, what about the KBM? Is this using same?
This was also my initial thought process. However, my piano is definitely on Midi channel 2 and both the raw packet (hex code) and the CC number I sent are routed to Midi channel 2. I also tried plugging a USB cable into the piano, instead of using midi-over-bluetooth - and again MidiFriend was successful while KB Maestro was not.
I suspect my piano may need some additional code when it controlled externally, which I assume the developer that programmed MidiFriend knows, and I dont!

There appears to be an option to send a midi file from Mainstage, so I may have to start learning how to create the relevant code.

Thanks Cosmos and everyone else for their help so far. I really appreciate it!
 
Joined
Oct 20, 2021
Messages
14
Reaction score
4
I have finally found a solution to my problem: Mainstage allows you to add a midi file to each individual patch, which is triggered every time the patch is loaded. However, creating a midi file with the relevant information (to either turn local control on or off) turned out to be a real challenge. Eventually, I asked for help in The Midi Forum and luckily, an incredibly helpful person gave me very detailed and precise instructions on how to create this type of file. It worked really well and so if anyone else has the same dilemma, a link to my post is as follows:

 
Last edited:
Joined
Sep 19, 2023
Messages
21
Reaction score
4
I have finally found a solution to my problem: Mainstage allows you to add a midi file to each individual patch, which is triggered every time the patch is loaded. However, creating a midi file with the relevant information (to either turn local control on or off) turned out to be a real challenge. Eventually, I asked for help in The Midi Forum and luckily, an incredibly helpful person gave me very detailed and precise instructions on how to create this type of file. It worked really well and so if anyone else has the same dilemma, a link to my post is as follows:

Good to know you have sorted it out. And thank you for letting us know about MIDI association. 👍
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Staff online

Members online

Forum statistics

Threads
14,071
Messages
86,882
Members
13,156
Latest member
Gianni65

Latest Threads

Top