fbpx
Skip to main content

MIDI Forum

Assign Midi CC to c...
 
Notifications
Clear all

Assign Midi CC to controller via Midi commands from external device.

8 Posts
2 Users
0 Reactions
13.5 K Views
Dale
 Dale
Posts: 5
Active Member
Topic starter
 

I have recently transplanted the electronics from an M-Audio Sono 88 with a bad keybed to a Midiplus Origin62 keyboard, giving me the various inputs, outputs and preamps of the Sono 88 for use when carrying the Origin62 about. The 7 premium voices and other GM sounds of the Sono can also be triggered from the midiplus interface using midi.

However, because the mainboard of the Sono 88 is different to the Origin62 and the connectors are different, I cannot plug the Origin62 connectors coming out of the keybed into the Sono 88 mainboard, so the Sono 88 board is not receiving any physical key presses. I can only trigger sounds via midi sent from the Origin62 to the Sono 88 (or from another controller attached to the Sono 88 interface), not via a direct connection from the Origin62 keybed to the Sono 8 mainboard. So, I have lost the ability to assign CC to the controllers on the Sono 88, as this required pressing the edit key (which I can still press) but then pressing the keyboard keys to configure the controllers. For example, I'd like to assign sostenuto Midi CC #66 to the Sustain jack.

I'm wondering if this can be done via midi messages or USB. No such messages are mentioned in the manual, however, I have found I can do stuff via midi not mentioned in the manual (the interface responds to universal sysex and Channel Mode commands, etc).

I have contacted M-Audio support and they don't have a full midi implementation chart/manual for this keyboard or for any keyboard. At any rate the fella who answered claimed his knowledge of sysex and this kind of stuff was limited to 'a paragraph' of information. Also apparently they don't have much documentation on keyboards built before the company was acquired from Avid.

Any suggestions?

 
Posted : 20/07/2020 5:55 am
Geoff
Posts: 1047
Noble Member
 

Hello,

Just to check that I understand your situation, may I reword your query.

You now have a Origin62 which also includes the electronics of a Sonus88?

Both are connected to the midi connectors (DIN ?), so both receive incoming midi data?

The Sono88 is connected to buttons (not sure how you've done that, but not important right now), but NOT to the keys. The Origins62 is connected normally?

I assume therefore that the Origin62 will operate normally?
The Sonus88 will operate normally for midi data received?

BUT other functions of the S88 need use of buttons AND keyboard keys and are not possible?

Well, we'll need to find the FULL midi implementation data for the S88, and try to work things out bit by bit. This data is a sort of 'memory map' for the system, and usually relates to what's in RAM as opposed to ROM. Many options would normally be taken care of via built-in operations, i.e. you may press a button which will change data at certain addresses. SYSEX commands may be provided for functions which might normally be initiated remotely, but may well NOT be indicated for functions that can be done from buttons. It just needs making sense of the'map', working out the addresses that need changing, and constructing a relevant SysEx command (prob based on details of commands that ARE provided). May need some experimentation.

Do you have the manual with the map printed? Can you see the bit you need to change? Usually, you CAN find such manuals via the web - I'll have a look and see what I can find, as I understand it, you're looking for the parameters of the Controllers.

Do I seem to be on the right wavelength???

Geoff

 
Posted : 20/07/2020 11:05 am
Dale
 Dale
Posts: 5
Active Member
Topic starter
 

Hi Geoff.

Hello,

You now have a Origin62 which also includes the electronics of a Sonus88?

The donor was an M-Audio Prokeys Sono 88. Yes I took the mainboard and the board with the input and output ports etc. and installed it into the Origin62.

Here is a photo of the case with the holes I made. I brought some of the buttons and knobs of the Sono 88 board out to the case of the Origin62. The other ports are the ones that the Origin62 normally has.



Both are connected to the midi connectors (DIN ?), so both receive incoming midi data?

No I'm not using DIN connectors at the moment. I connect the Origin62 interface by USB to a computer then connect the computer by USB to the Sono 88 interface and send midi to it that way, triggering the Sono 88's internal sounds.

The Sono88 is connected to buttons (not sure how you've done that, but not important right now), but NOT to the keys. The Origins62 is connected normally?

I took the buttons and knobs out of the Sono 88 and installed them in the Origin62. My goal is to send keypress signals directly into the Sono 88 mainboard after physically pressing the 'edit mode' button on the voices daughter board (or preferably by invoking edit mode via midi command) so it thinks they are physical keypresses in edit mode, allowing me to assign midi CC to the sustain port on the sono 88 interface, and other controllers applied to the sono 88. I imagined taking the output from the keybed of the Origin62, splitting it, sending to both the origin62 mainboard as normal, and then also translating and sending to the Sono 88. I guess I need a microcontroller for the keypress translation part, and it's complicated etc., so I'm wondering if I can do it via midi/usb instead.

I assume therefore that the Origin62 will operate normally?
The Sonus88 will operate normally for midi data received?

Yes they both work fine. But I cant assign Midi CCs to controllers on the the sono interface (eg. assign Midi CC #64 to the sustain pedal from the sono 88, which is on the ports board which was transplanted along with the mainboard) because it normally requires pressing keys on the Sono 88 keyboard/keybed. This sono 88 keybed wasn't working and was not transplanted (too big anyway).

For the S88 I only have the User manual. https://www.manualslib.com/manual/293112/M-Audio-Prokeys-Sono-88.html
It does contain probably most of the common midi commands it supports. Full midi implementation would be great, but I can't find it.

Do you have the manual with the map printed? Can you see the bit you need to change? Usually, you CAN find such manuals via the web - I'll have a look and see what I can find, as I understand it, you're looking for the parameters of the Controllers.

No, I don't have any memory maps for the device unfortunately.

 
Posted : 20/07/2020 2:21 pm
Geoff
Posts: 1047
Noble Member
 

Hello,

Thanks for the update.

Hm, regarding the question about the midi connectors (DIN?), I wonder if your answer should be Yes, but using the USB and not the DIN?? i.e. both systems receive incoming midi data.

Since my earlier message, I've found the User Manual for this device, which is quite unhelpful. No proper midi 'map' that would be needed to have any chance of doing what you want. No sign as yet of anything more.

You refer to using some SysEx messages. Do you have any examples of ones you have tried? If they're detailed in the user manual, please give a page number. I've had a quick look through bits of the manual and I didn't see anything, but I could easily have missed things.

The sort of messages required would have the usual headers for Mfg, device, function and then some memory address detail, then the actual data to be written to the address specified.

Geoff

 
Posted : 20/07/2020 2:48 pm
Dale
 Dale
Posts: 5
Active Member
Topic starter
 

Hm, regarding the question about the midi connectors (DIN?), I wonder if your answer should be Yes, but using the USB and not the DIN?? i.e. both systems receive incoming midi data.

Not sure which question you mean, about DIN connectors.. Both interfaces currently are currently able to receive midi via USB cables.

I have sent lots of midi messages that work. eg:

(all in hex)

-General MIDI 1 OFF (reset) system exclusive message (F0 7E 7F 09 00 F7). Also the equivalent on message (F0 7E 7F 09 01 F7).
-Reset : (FF)
-Note on and note off.
-Various Channel mode commands such as Sound Off (B0 78 00), Mono / poly mode (B0 7E 01), etc.

Yes I can confirm that specific details about how to send most of these are not in the manual.

It would be great if midi 1 spec included a sysex to receive midi capabilities.

 
Posted : 21/07/2020 3:56 am
Geoff
Posts: 1047
Noble Member
 

Hello,

I've been doing some further digging, and there doesn't seem to be anything to help.

I note from the manual that the Sono 88 keyboard does not have any facility to save any settings you might make, including the Controllers/Pedals that you ask about. The manual explicitly states that such settings that you have made will be lost when the keyboard is turned off. This is a bad sign. If this data COULD have been saved, then it could be reloaded, which would mean that the data for the settings might be something close to SysEx. But, it seems that there is NO way to save this data, so I'd guess that it is also not possible to force settings remotely (like SysEx). Doing things as per the manual (using buttons and keys for the numbers) seems to be the only way.

How did the Sonos get the numbers? I'd assume it is possible that pressing a key generates a key number, as per midi. For generating a midi note, the actual key number would be used for the midi data. But for the various functions, Channels etc, the key number could be modified, i.e. Key# - n1, to give the Channel number, or key# - n2 to give the data for the controllers etc. Maybe you can work out how this was done, and achieve some way to emulate this with the new setup?

Geoff

 
Posted : 21/07/2020 9:17 am
Dale
 Dale
Posts: 5
Active Member
Topic starter
 

Which numbers do you mean?

 
Posted : 21/07/2020 11:09 am
Dale
 Dale
Posts: 5
Active Member
Topic starter
 

For this kind of testing I send and receive the Midi to and from the Sono 88 from the PC using a program called Miditrace.

Yes quite right. There's no way to save controller configurations unfortunately.

But for the various functions, Channels etc, the key number could be modified, i.e. Key# - n1, to give the Channel number, or key# - n2 to give the data for the controllers etc. Maybe you can work out how this was done, and achieve some way to emulate this with the new setup?

If I understand right here, I know how this was done procedurally. Eg.

To assign a MIDI controller message to the Sustain Pedal jack:
1 Press the Edit Mode button
2 Press the black key above G5 (G#5), representing “Pedal Assign”
3 Use the Numerical Data Entry keys G5 – B6 to enter the number of the controller value you want to assign to the Sustain Pedal Jack
4 Press C7 for “ENTER”

 
Posted : 21/07/2020 11:15 am
Share: