How to get Sysex into MaxforLive device & decode to NPRN data for Tetra editor?
I'm working on improving an editor that I built for the DSI Tetra synth, and the next improvement I'd like to make is to force the knobs/Sliders/etc., on the device to update to display the actual parameters of a selected patch on the hardware.
Basically I want to be able to hit a button, dump the edit buffer into the device and have the controls update to show the hardware parameters. I believe the Tetra has a global setting that will dump the edit buffer if it receives a specific NPRN command, so that part is sorted, however the edit buffer is dumped as Sysex data which Live seems to have issues with. I need to be able to pull the sysex data into my device and then decode into NPRN data (I *think* the sysex data dumped is just NPRN data anyway in hexidecimal format but I'm still not sure how to decode it...) Then I need to take that data and update the controls, though I think I know how to do that.
I am a total Max n00b- this editor is the first and only device I've ever built. The patching is crazy messy but it works! Since I built it a while back I've been slowly going through the tutorials but haven't come across anything specific to my needs. The closest I've found that may help me are the Leigh Hunt MIDI externals, but they don't seem to work on my system (and he posted on Ableton's Max for Live forum that he probably won't be updating them).
I'm using Max 6.1.3 on a Mac. Any help or hand-holding would be appreciated!
Oh- and this is my device: the insides are scary....
http://www.maxforlive.com/library/device/1360/tetra-master-controller
as a side note, I built this over the course of many patching sessions and that's why it's so messy- if anyone has a recommendation as to how to clean it up without re-doing all the connections I'm open to suggestion!
What you're trying to do is basically possible. You won't be able to get sysex as such into Live; however, you can run a Max patch in the background that will receive the buffer dump from the Tetra, unpack and format it, and send the parameter values to a Live device via udpsend/udpreceive.
You can check [imp.midiout.mxo] and/or [lh_midiout.mxo].
here is my device: http://www.maxforlive.com/library/device/4306/fp-dsitetr4