Configure the Axiom keyboard controller to support the transport with MMC commands.


I posted this in the S6PE forum, but there might be some interested parties here as well. It was in response to someone having problems with and Axiom keyboard, and setting up the transport with MMC commands.

I was having the same problem with my Axiom 25, and I believe I have sorted it out. Er, at least it works now, whether it works tomorrow or not, we will see!

Here is what I did, along with some notes. The 'Eureka' moments are emphasized. (Note that the following will specifically deal with the transport buttons using the MMC commands. (cc 149)

  1. Close your application (sonar or P5, I got this working with p5)
  2. Cycle power on your Axiom 25 (the 49 and 61 differ slightly in the way the controls are marked, but are basically the same)
  3. Run your Enigma software (you can download it for free from if you don't have it)
  4. Click on the button on the lower right corner of the big display window, this will toggle the display to the controller definitions
  5. In the upper left corner, select 'Axiom 25' (you can also try MODBOD's file, but these instructions will load it from scratch, so you don't need it)
  6. Select file>save as> and save the file as 'Axiom 25 - xxx <whatever, SOnar, p5, etc>'
  7. Make sure the first preset bank is selected ('P01-> GM preset'). You will see a screen with B1-B8, Z1s, pad, and transport list in the middle display
  8. In the REW thru REC controls, perform the following on each: double click on the CC data field, and change the value to '149'. WHen you finish, all of those fields should say '149', and the 'Parameter' field should say 'MMC command'.
  9. In those same controls, also change the 'Ch.' field and the 'dt.1' field to '1', and the 'dt.3' field to '127'.
  10. Set the 'dt.2' fields to the following for each control (REW=>'5', FF=>'4'. STOP=>'1', PLAY=>'2', REC=>'6')
  11. Save this preset file down (Now, go to the fridge and buy yourself a cold one. Beer, coke, whatever.)
  12. Select from the dropdown menus, 'options>refresh midi devices'. This may not be necessary, but I have found it averts many potential Enigma programming frustrations. (Your mileage may vary)
  13. Refreshing devices usually causes the default preset to change back to another preset file. Highlight your preset file from the upper left display window, and verify the settings you just entered are still there.
  14. Press the button with the two arrows pointing to the right. It should send the data to the device. THIS IS IMPORTANT: if the midi graphic next to the button doesn't animate in a spinning motion, then you may not have programmed the device. Try refreshing the devices again. This usually bring it back, at least in my experience.
  15. Now your keyboard has been programmed with the right info. It's time to set up the keyboard. Take a sip of your cold beverage and turn to your keyboard.
  16. Set the keyboard to have group B active. (you may hear an angel chorus as a synapse engages here, I think this is the missing link) To do so is slightly different on the Axiom 25 verse the 49 and 61. The relevent section in the manual is: 3.2.1 On the 49 and 61 models: press the zone/group button and then the 'B' button. ON the 25 model, press the zone/group button and then the 'stop' button.
  17. You are now ready to recall the group 'B' information from the program that you just uploaded into the keyboard.
  18. Press 'recall', and then use the arrow keys to select the program that you have the preset loaded into. (Above, I suggested you use P01, which is the GM preset) THIS IS IMPORTANT: If you try to load the same program that is already selected when you start, it will not load. You must load another program, and then reload the desired program. For example, if when you press 'recall' and P01 is in the LCD, then you should set it to, say, p20, then press 'recall' again and load P01 back in.
  19. You should now be able to press the transport keys and see first the parameter for the key, and then the CC value, which is 149. (for example, hold the 'stop' button down, and you will see in the LCD first a '25' and a '1', and after a second or two, the '1' should change to '149'.

If you did not get the info on the LCD, then you have had too much beverage and need to start over. If you do get the correct codes on all buttons, then you haven't had enough beverage, so you should go to the fridge and have one on me.

Now it's time to get the keyboard working with the software.

  1. Your software (sonar, p5, etc) should not be running. If it is, then stop it and restart it. Not sure if this SHOULD make a difference, but.....
  2. Open up the controller surfaces menu and select 'options'. You need to have two COntroller surfaces defined in the options. One is a 'Cakewalk generic ACT control surface', and the other is 'MMC'. You may want to delete the ones you have and re-add them. I am not sure if you need to do this, but it was after I did it that everything started to work. Suddenly.

Like I said, this sets up the transport controls to use the MMC Commands. Programming the pads and buttons should be a heck of a lot easier, though keep in mind manual section 3.2.1 when loading the bank into the keyboard, and make sure that you have the correct group activated when you load. The table in 3.2.1 shows which groups have which controllers, and only the controllers in the active group will load.

Whew! That was a lot of work for something that should be real simple. If you got this far and everything is working, then you obviously need to go to the fridge and buy ME a cold beverage.


UPDATE: Section 3.2.1 does say that it is possible to enable more than one group at a time for loading by pressing more than one button simultaneously when selecting groups. I haven't tried this yet.

Original Source: duglmac's post on the Project5 Forum (

The content provided on this web site is public information which was originally posted in the Cakewalk User Forums and on the old Project5 Wiki. Project5™ and Cakewalk™ are registered trademarks of Cakewalk, Inc. Other product names or companies names may be trademarks of their respective companies whether marked as such or not. Portions of this web site are copyright © 2024 Robert J. Hammond ( A member of the Technetos family of web sites ).