Re:MIDI 2.0 Prototyping announced
by TheRealPomax on Saturday January 19, 2019 @12:06PM
(#18947917)
That's not Roland being genius, though. That's kind of literally one of the things sysex messages were added to the MIDI 1.0 spec. It's also why it's taking so effing long for webmidi to become a standard, because allowing sysex would mean your browser could in theory tell your midi device to brick itself.
In fairness, Roland founded the MMA and wrote most of the MIDI spec. The odds are fairly good that Roland did invent SysEx.
I thought Dave Smith was primarily responsible? Just to put another notch in Silicon Valley’s belt, I guess.
Dave Smith was the first to get on board with the project and made substantial contributions to the design of MIDI, but it was Ikutaro Kakehashi who started the whole endeavour. MIDI was heavily influenced by DCB, a proprietary interface developed by Roland in 1981.
Yep, when I did a little work for the Midifighter[1] controller, I used sysex to send configuration (but not firmware updates) to the device, to be stored in EEPROM. It was a nice and seamless mechanism.
[1] https://www.midifighter.com/ I made the first version of the configuration tool.
I also updated my TC Electronic Nova System via MIDI as well. It is a common feature across other MIDI devices.
I discovered something similar lately in the KORG Volca Sample - they use audio for data file transfer, like a modem. They even made their implementation free software (BSD-3): https://github.com/korginc/volcasample
Re:MIDI 2.0 Prototyping announced
by james-mcelwain on Saturday January 19, 2019 @02:13PM
(#18948629)
Émilie from Mutable Instruments (Eurorack) open sources all her modules and uses audio to update modules with new firmware. It's pretty cool! https://github.com/pichenettes/stm-audio-bootloader
Re:MIDI 2.0 Prototyping announced
by throwmeback on Monday January 21, 2019 @03:05AM
(#18958596)
The whole Volca line gets updates this way - it's kinda amazing in its simplicity.
This is also how all communication is handled between Fractal Audio Axe-FX units and PC/Mac software Axe-Edit. Everything is done over MIDI, and nearly everything within MIDI via SysEx messages. Parameters of FX blocks can be individually controlled with short specific SysEx messages targeted toward the FX block and then the specific parameter within combined with its new value to be set with a checksum to wrap it all up. MIDI's low bandwidth (3125 bytes/sec) explains why it's so slow to upgrade and also why there is such high latency in modifying parameters and syncing the Axe-Edit software with the Axe-FX hardware unit.
Re:MIDI 2.0 Prototyping announced
by beezischillin on Saturday January 19, 2019 @06:58PM
(#18950050)
Semi-semi-related, but I have a Xerox Printer-Scanner and I tried to update it using my Mac: the official instructions said to use the terminal to send the firmware update to the printer through the printer spooler, like you would print a document. I don't know if that's standard for printing hardware but I found it quite weird, also.
Re:MIDI 2.0 Prototyping announced
by tomphoolery on Saturday January 19, 2019 @02:03PM
(#18948571)
Speaking of this, I was trying to reverse-engineer the operating system for the DSI Tempest because you can send its binary data as firmware updates over SysEx messages. So you have the binary source of the OS, but not the source code. Unfortunately, I can't figure out what processor it uses without opening the thing...
There are people who are pretty good at guessing the CPU architecture just from a hex dump.
Though, CPU architecture is only part of the problem, identifying the actual SoC is easier when you open the device.
Open it! You never know what you will find inside..
likely a void warranty on a $2k glorified synth. just return it and buy one that publishes specs.
The MT-32 sound module(also a Roland creation) was the target device of a lot of PC games circa 1988-1992. The more sophisticated soundtracks would reprogram the built in patches, also using sysex for this operation. Not only that, they would put text messages on the MT-32's display!
A huge amount of vintage electronic music gear, from multiple manufacturers, receive firmware updates via MIDI. Keyboards, synths, even electronic drum systems. It is extremely common, though not so much anymore thanks to USB.
Similar, you can save and load synth presets using MIDI on microKORG.
Surprisingly, it doesn't work with cheaper MIDI cables.
Re:MIDI 2.0 Prototyping announced
by cyberferret on Saturday January 19, 2019 @07:16PM
(#18950114)
Fractal Audio does the same with their amazing Axe-FX guitar processor. All updates to firmware are supplied as MIDI file as a SYSEX data stream. I was amazed to see that they updated internal firmware the same way they uploaded patches, and even WAV form maps for Impulse Responses. Definitely a genius way to maximise the protocol.
The guys at Roland are genius. I have a somewhat old Roland RD-150 digital keyboard. While searching online for the user manual, I found a 'firmware update' on the official site.
I was curious. My keyboard is pretty old school, it doesn't have USB or anything like that. I downloaded the firmware update and opened the zip file.
It contained a readme... and a .midi file. It sort of blew my mind. They were sending firmware updates over MIDI! You had to press a certain key combination on the keyboard and play back the MIDI file into the MIDI in, and the firmware update would be complete.
True hackers.