Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

Electronics from M-audio Sono 88 to Origin62 keyboard.

Status
Not open for further replies.

Califauna

Member
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, preamps and audio interface of the Sono 88 available when using the Origin62. The 7 premium voices and other GM sounds of the Sono can also be triggered from the midiplus interface using midi. However there is one functionality I'd like to add (midi input), and one I'd like to recover (edit mode functions) for the Sono 88 interface.

1. Accessing edit mode functions.

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 can't receive any of it's old 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.

As a result, I have lost the ability to assign CC to the controllers on the Sono 88 and other edit mode functions, as this required pressing the edit mode key (which I can still press) but then pressing the keyboard keys to configure the controllers. For example, to assign Midi CC #66 to the Sustain jack you would press edit mode then varios keys on the keyboard to assign it.

What would it take to work around/fix this?

Pretty noobish with this stuff but I looked into whether this could be done via midi commands. No such commands are mentioned in the manual, however, I 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.

If it isnt possible through a connected device, I am guessing it would be complicated as I would need to find out what the Sono 88 board needs to recieve at its keyboard connectors then get a microprocessor of some kind to send signals that the Sono chip would understand as key presses, right?

2. Add DIN Midi input

The Sono 88 doesn't have a classic Midi input (only USB midi). If it had one I would no longer need a host between the Sono 88 interface and the Origin62 interface to route
midi from the Origin62 to the Sono 88 interface. So I'd like to add a Midi input if possible.

The chip on the Sono 88 mainboard is the SAM3308B. I will open the keyboard again and take a photo if it helps.

SAM3308B Datasheet - SAM3308B.pdf

In the data sheet it says it has a Mini input pin (pin 17, sharing pin 7). Could I use this pin to receive midi using a standard midi port? Is the chip likely to be already programmed to be able to process midi input to this pin?

Thanks in advance for any help with this.
 
The SAM3308B does not have any USB connectivity, so the USB device must be separate.

It could be as simple as a USB to serial converter IC, with the serial side linked directly to the MIDI In / MIDI Out pins on the SAM device.
I'd try to trace the connections from those [17 & 18] to see what they connect to?

Re. the edit function etc., the only simple way is add a bank of external buttons connected to the original key inputs.
Other than that, you would need a microcontroller programmed to receive the appropriate MIDI command and emulate the keypresses by passing the relevant signals through the key matrix.
 
The SAM3308B does not have any USB connectivity, so the USB device must be separate.

Yes on the Sono 88 the USB (port at least) is on different board to the SAM3308B. It's next to the the other ports on the back of the unit. Here's a photo of the ports board from the Sono 88 which I have installed now in the Origin62.

2020-07-20 at 20.52.51 (1).jpeg

The ports on the Origin62 are down the other end.

2020-07-20 at 20.52.51.jpeg

It could be as simple as a USB to serial converter IC, with the serial side linked directly to the MIDI In / MIDI Out pins on the SAM device.
I'd try to trace the connections from those [17 & 18] to see what they connect to?

I think I have given the wrong idea there. One of my two goals is to get midi coming into the Sono 88 interface via a DIN midi connection which I could install on the back of the unit. I don't need a solution for Midi into the Sono 88 interface via USB as I can already do this. I send the midi either from a host (pc , phone, etc.) to the USB input of the Sono 88 interface and it receives Midi that way. Or, using a host to just relay midi coming out of the Origin62. But those two setups require a host and I can avoid that if I install a midi input connector and get that going into the SAM3308B chip. That way I just need to power the units and connect a midi cable from the Origin62 DIN Midi output to an installed DIN midi input, which goes to the SAM3308b chip.

Here's the Sono 88 mainboard, which has the SAM chip on it but not the USB port:

https://cdn11.bigcommerce.com/s-pdo...audio-3__71699.1544687499.jpg?c=2&imbypass=on

Re. the edit function etc., the only simple way is add a bank of external buttons connected to the original key inputs.
Other than that, you would need a microcontroller programmed to receive the appropriate MIDI command and emulate the keypresses by passing the relevant signals through the key matrix.

Which midi commands and matrix do you mean here? The key matrix from the Sono 88 is not installed in the Origin62. I left it out becasue it stopped working properly (some key presses not being detected). So my goal there now is to get the Sono 88 mainboard thinking its receiving key presses, but not via midi messages, unless that's the only relatively simple way. Rather I was wondering if it would be possible to take the signals coming out of the cables from the keybed on the Origin62, 'translating' them into signal which the Sono 88 board recognises as key presses, and sending them into the Sono 88 board directly, into the board connectors on the SOno 88 that it's old keybed used to be plugged into. So, some kind of splitting thing going on there, where the signals from the output connectors from the Origin62's keybed go into the Origin62 mainboard as normal, AND the Sono 88 board, translated.

I'll open it and take pictures of all the boards. Apart from seeing whats hooked up to the Midi Input pins on the SAM chip, is there anything else I should take note of or take a photo of while its open?
 

Attachments

  • 2020-07-20 at 20.52.51 (1).jpeg
    2020-07-20 at 20.52.51 (1).jpeg
    87.6 KB · Views: 292
  • 2020-07-20 at 20.52.51.jpeg
    2020-07-20 at 20.52.51.jpeg
    80.1 KB · Views: 334
Last edited:
One of my two goals is to get midi coming into the Sono 88 interface via a DIN midi
Sorry, I meant that is how the existing circuit may work. If you trace those pin connections you could find a USB-Serial IC that could be disconnected, then connect a conventional (very simple) wired MIDI input in place of it.

You cannot generally just cross-connect two different matrix keyboard inputs to the same keyswitches, as both devices have "active" signals driving parts that would not work linked to other active signals.

External switches connected in the same way as the original matrix and wired to the board connectors is the simplest work-around.
By matrix, I mean the row-and-column electrical interconnection of the switches with a set of signals in and another set out, not the physical construction.
 
Sorry, I meant that is how the existing circuit may work. If you trace those pin connections you could find a USB-Serial IC that could be disconnected, then connect a conventional (very simple) wired MIDI input in place of it.

WOuldn't doing that disable the midi input over USB functionality that that the interface has though?
 
No I definiitely don't want to disable the functionality of having Midi come into the Sono 88 via it's USB cable. That's how I'm currently using that interface and it works fine. Midi comes into the keyboard via the USB cable and it triggers the internal voices (piano etc.). I send this midi from a host, like a PC, or from the Origin62 interface through the host, to the Sono 88 interface, and it plays the sounds.

I would like to be able to trigger the SOno 88 sounds wihtout depending on a host though. So I thought to install a midi input connector near where I have installed the Sono 88 interface in the Origin62 case, and send midi to the sono 88 interface thorugh that connector directly to the SAM chip (perhaps the 'Midi_In' pin), so I don't always need a host device (PC etc.). I could then just power up both interfaces (Origin62 and Sono) and connect a midi cable from the midi output port of the Origin62 to the (proposed) midi input to the Sono 88 interface, and trigger the sounds on the Sono 88, without a host inbetween.
 
OK, well you still need to trace what those pins connect to, as they are programmable functions according to the datasheet and could be MIDI or other types of data interconnect to different devices.

Or look at them with an oscilloscope while sending MIDI over USB and see if the MIDI data is present?

If it is a MIDI input, it should be possible to add a "diode OR gate" type circuit, so midi from either USB or a separate input is seen the same, just not both simultaneously.
 
7 and 17 are unused. There seems to be a trace out of 7 with a hole. Presumably that's good because it's easier to tap into, right?

But do chips like that usually have firmware which is made specifically according to which pins are used?
 

Attachments

  • 2020-07-22 at 16.30.01.jpeg
    2020-07-22 at 16.30.01.jpeg
    365 KB · Views: 167
It is a programmable device and some pins are programmable depending on what the system designer decides in most appropriate.

From that photo, pins 17,18,19 & 20 are all without obvious topside traces, but there could be VIAs or craces back under the IC body.

Interestingly there are two test points just across from those locations labelled UART IN and UART OUT; they could be connected to 17 & 18 for diagnostics or monitoring MIDI data in & out?
 
OK I have checked with the multimeter and 17 and 18 are indeed connected to those UART IN and OUT test points. Would I now need to test whether feeding Midi signals to UART IN produces anything?
 
Last edited:
You cannot do that without risk of damaging whatever is already feeding that pin, if it is in use!

See if there is any activity on either UART test point when nothing is being transferred, then see if one becomes active while transferring or playing something via the USB MIDI.
You may be able to see a voltage change with a multimeter when a signal is present, or see something appear with the meter on AC?
A scope is the best tool for that type of work, so you can see the exact signal.
 
I have set up a midi file to play through the Sono 88 to test as you say.

Where should I test between though? One probe on the UART IN, but the other probe? If it put it to any old ground perhaps it might pick up interference?
 
I just used a ground from a plug socket. There seem to be two states. 1. There is steady 2.97 volts DC at the UART in and out points. When playing a midi file this goes up to a steady 3.03 volts. 2. There is a stead 2.92 volts which goe sup to 2.98 volts. Sending individual midi notes to the interface does nothing.

Of course the Sono 88 has two midi inputs appear via USB connection - 'Sono 88 voices' midi input, which triggers internal voices, then the 'Sono 88 Out', which is like a thru input which just routes any midi it receives to the midi out DIN connector on the SOno. Same changes in voltage when sending to both of them, even though one only actually results in any sound being triggered of course.
 
Are you using a scope or a meter?
Just try with the circuit ground / 0V. The signals should be logic level, anything from 2 - 5V peak, so low level noise is pretty irrelevant.

If you are using a meter, try it on a low AC range.
 
3.25 Volts, using the black cable furthest on the right in the photo, on the connector, `(and a couple of others) which I think is one of the ground cables. Midi has no effect on the voltage.
 
Dejavu!

It may well be that some other device does the USB <> MIDI interfacing and general control, with the SAM3308 just as a tone generator etc.
 
Dejavu!

It may well be that some other device does the USB <> MIDI interfacing and general control, with the SAM3308 just as a tone generator etc.

Sorry scratch that last message I sent, which you responded to there. The Sono 88 interface is detected fine.
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top