DIY Axe-Fx Foot Controller for $50 (Open Project)

How exactly does the sysex messages work?
How do you send and reveive messages this way?
The Sysex messages for the CPU usage, preset name and preset number need to be requested from the Axe FX, the tuner data is output from the Axe FX as soon as the tuner is enabled. I connect to the midi out socket on the back of the AxeFX then examine the data bytes as they arrive. For example they start with 0xF0 and end with 0xF7. The messages rx'd each have a unique ID. This is how I detect if its cpu usage, preset name etc etc..
 
In development you can monitor messages received from the Axe Fx by using an arduino function called serial print. This enables you to view data on your laptop / computer. This way you can see the data arrive or not as the case may be.
 
In development you can monitor messages received from the Axe Fx by using an arduino function called serial print. This enables you to view data on your laptop / computer. This way you can see the data arrive or not as the case may be.

What do you fill in after the Serial.println(???)

I dont know how to figure this out.
 
Here is an example :

Serial.print("Checksum "); Serial.println(w, HEX);

So text within " " would just be printed as text, the (w, HEX) will print the value of w which is a variable in HEXADECIMAL, I could of written w, BIN if I wanted to see the value of w as a BINARY number. Hope this helps.
 
Here is version 6.18 of the code, rewritten to use the great @tysonlt Library for the Axe-FX III

Dirty, but functional. Except refreshing the current Scene Name at the LCD when the Scene is changed. It is updated on PresetChange but not on SceneChange I am working on it.

Buttons function:
Axe-FX3-PEdal-Controller-A.jpg
 

Attachments

  • Axe3Controller_V6.18.zip
    5.2 KB · Views: 10
Last edited:
Oh, you got back to your project. Nice!

Reminds me that I need to show you guys mine... Hope I'll manage to do it soon!
 
Pending features: Display tuner on LCD and external pedals (I am having a hard time coding that)
Is your code currently for the II or the III?

I've written a tuner code for the Ultra. Was quite a challenge, but it's possible! Doesn't this library you use include stuff for the tuner?
 
Is your code currently for the II or the III?

I've written a tuner code for the Ultra. Was quite a challenge, but it's possible! Doesn't this library you use include stuff for the tuner?

My code is for the III. Right now I have succeeded displaying tuner data at the Serial Monitor :) I just have to translate it to the LCD
 
Last edited:
@axifist I have borrowed part of your code to present the Tuner on the LCD screen :rolleyes:

I attach V7.04 beta with the Tuner already implemented.
 

Attachments

  • Axe3Controller_V7.04beta.zip
    5.1 KB · Views: 15
Well I'm no expert, so definitely not a good coder, but you may use my code for this as well. Expression pedals were quite easy to implement. The most difficult part for me was the smoothing. Is that the right word? Well, to prevent the measured value from jumping around. Which it does!

PM me if you need more informations.
 
Back
Top Bottom