Third-Party MIDI Spec

I finally got my Axe FX 3 and was greatly intimidated by using my MFC foot controller with midi as I have never programmed with it before.

After studying several diffferent threads I finally got it running perfectly and in the end realized if someone made a 5 minute step by step video doing it, it would save users much frustration. If anybody needs to know from an absolute newbie perspective on how to do this, I am your man for it. I programmed scenes, to wah/volume controllers to effects on/off. Now it is time to finally see what this thing can do!!

PS - There are already several good instructions posted already but as I said a video would make confusing written instructions into very simple steps. Why don't I make said video, you ask? To quote the great Ringo starr, I have too much to do! Peace and love. Peace and love!
This thread is about using the internal Axe Fx III midi protocol with 3rd party midi controllers... I don't think your post applies unless you are sending sysex directly from the MFC?
 
Sorry if this is the wrong spot as there are several different midi threads regarding the Axe FX 3. The title seemed appropriate as I am using the MFC successfully with the AXE FX 3 in midi mode only. I apologize if this just hijacked the thread.

As a newbie this was initially intimidating to me and I wanted to let future newbies know that the process is actually quite simple with clear instructions.
 
Maybe the question should be, can the MFC-101 MkIII use this midi spec to be able to receive and display current Patch Name and Midi Tuner Data after transmitting the custom midi/sysex messages?
I have crunched the numbers for current preset name and added them to a custom midi message to be displayed, confirmed with midi-ox the Axe FX III is sending a sysex out again, but have no idea how to have the MFC display the name... would this need to be a firmware update?
 
Maybe the question should be, can the MFC-101 MkIII use this midi spec to be able to receive and display current Patch Name and Midi Tuner Data after transmitting the custom midi/sysex messages?
I have crunched the numbers for current preset name and added them to a custom midi message to be displayed, confirmed with midi-ox the Axe FX III is sending a sysex out again, but have no idea how to have the MFC display the name... would this need to be a firmware update?
https://forum.fractalaudio.com/thre...to-use-the-mfc-101.134776/page-2#post-1594706
 
Are there some defined limits for things like the number of blocks in a preset etc? If so can these be defined?

Will there be a way to query the model type being used? (The current spec talks about effect id, but this is just “delay1” rather than “analog delay model” or “2290” for example)

Is there any intention to control multiple axefx IIIs via this interface? My Axon MK1 could have two on separate physical midi networks, but I’m thinking about multiple units on a single midi network, because Sysex is channel independent, this spec has no ability to address a “certain” axefx iii.

The spec doesn’t say (but I’m assuming from previous messaging) that 00 01 74 are the manufacturer bytes and 10 is the model number for axefxIII.

Is there a system setting to disable midi tempo streaming?

The first two items in the typedef for effect id have specific values assigned. Possibly compiler differences might give developers an issue? Can all values be specified?
Eg is ID_IRCAPTURE = 2 ? not that I particularly care about that one ;-) but it would conflict (or be the same) as ID_CONTROL also ID_REVERB4 = ID_TUNER?
 
Are there some defined limits for things like the number of blocks in a preset etc? If so can these be defined?

Will there be a way to query the model type being used? (The current spec talks about effect id, but this is just “delay1” rather than “analog delay model” or “2290” for example)

Is there any intention to control multiple axefx IIIs via this interface? My Axon MK1 could have two on separate physical midi networks, but I’m thinking about multiple units on a single midi network, because Sysex is channel independent, this spec has no ability to address a “certain” axefx iii.

The spec doesn’t say (but I’m assuming from previous messaging) that 00 01 74 are the manufacturer bytes and 10 is the model number for axefxIII.

Is there a system setting to disable midi tempo streaming?

The first two items in the typedef for effect id have specific values assigned. Possibly compiler differences might give developers an issue? Can all values be specified?
Eg is ID_IRCAPTURE = 2 ? not that I particularly care about that one ;-) but it would conflict (or be the same) as ID_CONTROL also ID_REVERB4 = ID_TUNER?
The hardware limits the number of blocks.
There is no way to query the model type via these simply sysex commands. You would need to use the client-server interface to do that.
To control multiple Axe-Fx's you would need multiple MIDI ports.
0x10 is the model ID, 00 01 74 are the manufacturer ID. Standard MIDI stuff.
Tempo streaming can be disabled from the Global menu.
The typedef is an enum. I'm unaware of any compiler that would give a different result. There is no need to specify all values as it's an enum.
 
The hardware limits the number of blocks.
...The typedef is an enum. I'm unaware of any compiler that would give a different result. There is no need to specify all values as it's an enum.
I just re-read the enum spec https://en.cppreference.com/w/cpp/language/enum for c++...

specifically this example...

enum Foo { a, b, c = 10, d, e = 1, f, g = f + c };
//a = 0, b = 1, c = 10, d = 11, e = 1, f = 2, g = 12

i believe ID_IRCAPTURE = 36 then?

and the value is important as it will be being stuffed into the sysex strings for Effect IDs... ( I agree that if both compilers at both ends encode the values the same way, it won't matter )
 
One of the features of my MFC firmware is an option to backtrack global tempo (so when toggling between the most recently used 2 patches, it also sets the last tap tempo used in those patches) - really useful in a live situation.

Does anyone know the SysEx to get and set global tempo on the Axe-FX III?
 
One of the features of my MFC firmware is an option to backtrack global tempo (so when toggling between the most recently used 2 patches, it also sets the last tap tempo used in those patches) - really useful in a live situation.

Does anyone know the SysEx to get and set global tempo on the Axe-FX III?
Tempo tap is in the document.
 
Pressing the tap button, and receiving tempo "beats" is in the document, but not how to get and set the global tempo bpm value.
what i meant is (even with the current spec of the third party doc...) a controller could monitor the midi tempo stream, and then use tempo tap to re-create that speed in the second preset... not ideal by any means... glad Cliff is looking at extending some features on the 3rd party interface.

on another question... @FractalAudio would it be possible to be notified when a patch has "been loaded"... currently with the 3rd party spec v1.2, a controller will have to assume the Program Change has completed, before asking for Patch Name, Scene Names etc...?
 
What is this brand?
Hi. I’ve been making custom controllers for a few years now and the Axon is the first model that I could really consider as a production item. So think much like a fledgling CAE type company... we are going to endeavour to have the same kind of proactive approach to our customers like FAS.
 
Reading the enumeration for EFFECT_ID and I can't see the AMP(s) in the list. I could be wrong, but shouldn't they be in this list?
 
Back
Top Bottom