Device Details

Device Overview

Name/Version: CF SYSEX Recorder 1.0
Author: chapelierfou  
Description: This device stores sysex data that can be sent automatically when the live set is loaded.


- drop in a MIDI track
- set up midi input and outputs connected to your synth
- hit record
- send the patch from the synth

- if you want the sysex to be sent back when you load the live set, switch AUTO RECALL to ON. You can additionally delay the sending (can be useful if you plan to send several patches, which can overload the synth).

- "open" lets you read the sysex messages.

Device Details

Downloads: 761
Tags utility
Live Version Used: 10.1.18
Max Version Used: 8.1.5
Date Added: Feb 19 2021 09:51:52
Date Last Updated: Not updated yet
Average Rating (6) 5
Rate this device: (must be logged in to rate devices login)
Device Type: midi_device
URL (optional):
License (more info): None

Device Files

Device File: CF_Sysex_Recorder.amxd


This is fantastic! ? Thank you so much!
Gonna try it out today.
Could you enhance the "open" field to also enable pasting sysex into it (so one doesn't have to record)?
Background: I use knobkraft as a librarian, and could then just copy/paste from there into your M4l device, without the need for recabling /rerouting

Welldone! I tested and used a lot!

I'm looking for a different solution, is ti possible to create a device that play in arrangement when a note or a cc trigger it's state?

I'm trying to create some MIDI tracks, with a clip that plays a SYSEX in order to transpose my Yamaha MODX. In fact I really know the bytes to be sent, but Ableton is not able to sent in a MIDI Track.

In my session I'm working with 8 scenes, which is, each row, a song, and each song has a transpose (sysex to be sent when I play that scene).

@markusschloesser :
actually you can copy, paste, edit the content. But it must respect this syntax :

"sysex" : [value, value, value.....]

The main problem might be that the device expects decimal values, but your sysex files are likely to be hexadecimal.

@Bortolato :
It should be easy to modify. I could simply make the "send" button automatable. It would trigger the sysex when the parameter goes from low to high.
Would it be ok for you ?

@chapelierfou great, will check!
I opened a feature request for knobkraft to be able to show the actual sysex , but good point
Also w re to automatable button: I think that would work.
What might be worth thinking about is triggerable event based lists of sysex to circumvent ableton missing sysex capability to handle real-time sysex automation (i have a Mks-80, no cc, only sysex).
Can you "record" sysex in a m4l device with song timestamps?
Thank you again for your work, much appreciated!!

@markusschlosser :
have you simply tried to open the sysex files with a text editor ?
I could make a device that hosts a list of messages with customizable ways to trigger them. But I'm thinking that maybe what you'd need would be a proper editor for you MKS-80, don't you ?
My device was made with in mind the goal to save patches within the live set.

@markusschlosser :
I just made a quick search and found this :
maybe worth the 6,90? don't you think ?

Thanks, I already have this, but it needs to exclusive access to the midi ports, meaning Live could not (there are work arounds but all ugly) . An "in-Live" M4l solution is a lot easier :-)

First - thank you for this. I was just about to dig in after seeing what was coming (if anything in this arena for live 11) and build exactly what you've done here. Excellent work.

"the device expects decimal values, but your sysex files are likely to be hexadecimal."

How much trouble would it be to alter the max4live device so it expects the sysex values in Hexidecimal and not decimal?

SysEx messages are natively transmitted and received in hexidecimal so this might help make this more usable that way unless I'm missing something.

It's more or less just how it's displayed, and how it's been copy/paste.
The aim of the device was to send a patch from the synth, record it, and play it back to the synth when the liveset is loaded.
Would you need to use sysex files that are already there on your computer ? In this case, I would load them to the synth, send them to the device, record them. To copy/paste them, you'd need to translate them into decimal first. Which is easily doable in Max by adding "0x" before a decimal number, so it's possible to add it to the patch somehow.

Thanks for the response - It's just how max is displaying the values - i get it. And by all means - yes i completely understand the aim of the device and the implementation is brilliant.

I was looking for ways to add to it so I could put in my own logic including a dump request message.. I'm a bit new to using max for live. (although I've used Max and things like PD and supercollider for some time)

you say "adding 0x before a decimal number" - i believe you mean hex, correct? So if I wanted to give it hex values I would just enter them like in C++... 0xF0, 0x2E, 0x11, 0x00, 0x00, 0x7F, 0xF7

Yes exactly. Check this out
Or message me ? (Oops, there is no private message system here in ?? it SHOULD be !)

Could this be used to transmit and receive patch dump info between Novation Peak and Omnisphere? Currently using the Hardware Integration feature but can't send patches to each other, even though they both have the ability via Sysex.

hi. i have a synth that i initiate a sysex dump from. before that, i click on Record. it immediately stops after a few seconds (Recording stops) and the byte data is 0.

i was hoping to use the .syx files created by sysex librarian to save them into a song and load them in, but am confused as to how to do this, or the other thing (manage the whole sysex dump from the synth and save to the song..)
any help would be appreciated..

Hi @esaruoho
Once you've hit Record, you've only got 3 seconds to send the sysex dump. It stops listening if it doesn't receive anything after 3 seconds (to prevent recording garbage stuff).

Maybe the time window is too short ?

Hi, this looks exactly like what I'm looking for, and it looks like the sysex record is working, i can open the sysex dump in the dictionary editor, but that is about it; no matter what I do I cannot get the device to send the sysex back to my midi device. The send button does not do anything when I click it. I have tried closing and reopening the live set but nothing happens. Can you think of anything else I need to do with the MIDI track to make the send work?

Is your Midi track output set to the port used by your synth?s midi in ?
You could check what?s sent by using a midi monitor ?
I only tested with a Nord Modular to be honest. Maybe different synths expect some specific messages or sequences of messages to work properly. What synth are you using ?

Thank you so much - this will save what remaining sanity i have.

Hey there @chapelierfou,

Thank you for this very helpful device. As @Bortolato mentioned above, having the ?Send? button be automatable would be fantastic.

It would also be helpful if there was a ?Retrieve? button which would allow the SysEx dump to be initiated from the Max device rather than from the synth itself. I?m using a Waldorf Streichfett which supports SysEx dump of the currrent individual patch, but it must be initiated by the receiving device rather than from the synth itself.

Thanks a lot !!!

Extremely useful form me!

I?m using it for auto-switching to the Custom Pads on Novation Launchkey once the Ableton Project loads.


sysex : [191, 3, 6]

where 6 is User Custom 2

This is what I was looking for.
I always want to save hardware presets within DAW projects. The record time was a bit short so I have changed that to 10 seconds. Sending a dump request and recording the dump is easy as pie now.

Thanks a lot!!!

Login to comment on this device.

[ browse device library ]