Arduino Axe-Fx control library

Somewhere in this thread, is there detailed info on that enclosure, compatible displays, etc, the physical aspect of putting something like that together?

I'm a software guy, not Arduino, yet, but I'm sure I can get my head around that part, but I'd really appreciate info about actually building it into a footboard like that. Better yet maybe, do any of you have those for sale in small quantities, like 1?

I have an unfinished project using a Hammond 1456RL1BKBU enclosure. 20 switches, 15 color displays, and a LCD display. Basically a clone of @Axelman8 project. I think I am not going to finish it, because I have purchased a FM3 to use at the gigs instead of the FM III (I'm geeting too old to carry so many things), so I may sell it for just the cost of the components, like I did with my other project with a 4.3" touch screen.

https://forum.fractalaudio.com/thre...-for-axe-fx-iii-with-4-3-touch-screen.156838/


20220315_174247.jpg
 
Awesome, thank you.

Cutting the rectangular holes for the displays cleanly looks tough, but it seems there's no magic bullet, you just drilled a starter hole for each one, then jigsawed each of them out.

Right?
Yes, 1 hole and then jigsaw your way through is best. The hammond is 1.5mm aluminum and cuts like butter, its not tough at all to do
 
Hey there @tysonlt

Now that im using a teensy, there is more power and memory for functions. I was wondering if it would be possible to always draw the tuner, even when not engaged like the mini tuner on the display. This would help me also to practice the notes on the fretboard.

Cheers
 
Last edited:
Hey there @tysonlt

Now that im using a teensy, there is more power and memory for functions. I was wondering if it would be possible to always draw the tuner, even when not engaged like the mini tuner on the display. This would help me also to practice the notes on the fretboard.

Cheers
I don’t think the Axe sends tuner midi unless the tuner is engaged.
 
Hey there @tysonlt

Now that im using a teensy, there is more power and memory for functions. I was wondering if it would be possible to always draw the tuner, even when not engaged like the mini tuner on the display. This would help me also to practice the notes on the fretboard.

Cheers
I think you can set the tuner to not mute though…
 
I don’t think the Axe sends tuner midi unless the tuner is engaged.
Hey there,

I've been toying with the settings, but as far as ive manage to get Tuner data, the tuner must be engaged.
Thats too bad, would have liked it to show the tuner data on screen permanently. I like the mini tuner on the screen it works great.
Also I thought about just showing the note that's been played, like a practice tool for the fretboard.

Anyway, back to the drawingboard to figgure this one out

Cheers
 
Last edited:
Hey there,

I've been toying with the settings, but as far as ive manage to get Tuner data, the tuner must be engaged.
Thats too bad, would have liked it to show the tuner data on screen permanently. I like the mini tuner on the screen it works great.
Also I thought about just showing the note that's been played, like a practice tool for the fredboard.

Anyway, back to the drawingboard to figgure this one out

Cheers
I think you can set the tuner to not mute audio when it’s on. Then you can just turn it on and keep playing, and it will send the data.
 
I think you can set the tuner to not mute audio when it’s on. Then you can just turn it on and keep playing, and it will send the data.
Good one, though I wonder if the library will send data to the fractal and the fractal will respond while the tuner is enabled.

Will test this on Thursday
 
Hey there,
With the tuner engaged, the Fractal still responds to push-button commands and sends data back.
So now tuner can be on all the time, no problem

EDIT:
The Fractal toggles the tuner when selecting another preset and I cant find any setting on the unit that prevents this behavior, so I will need to handle it in my program if that's necessary. For now its okay like this.


Cheers
 
Last edited:
Hey there,
With the tuner engaged, the Fractal still responds to push-button commands and sends data back.
So now tuner can be on all the time, no problem

EDIT:
The Fractal toggles the tuner when selecting another preset and I cant find any setting on the unit that prevents this behavior, so I will need to handle it in my program if that's necessary. For now its okay like this.


Cheers
Nice. I guess we’re pushing the boundaries here but good that there’s a solution
 
Can you post your code? It shouldn't have changed any of the other callbacks...
This is essentially a collection of callbacks I use for debugging through Arduino's serial monitor.
Introducing the ControlChangeCallback essentially disables every other callback except PresetChanging.

Reverting to the pre-ControlChange library restored callback functionality.

C++:
#include <AxeFxControl.h>

AxeSystem Axe;

void setup() {
  Serial.begin(115200);
  Serial2.begin(9600);
  Axe.begin(Serial2);
  Axe.registerSceneNameCallback(onSceneName);
  Axe.registerPresetNameCallback(onPresetName);
  Axe.registerPresetChangingCallback(onPresetChanging);
  Axe.registerPresetChangeCallback(onPresetChange);
  Axe.registerTunerStatusCallback(onTuner);
  Axe.registerTapTempoCallback(onTempoChange);
  Axe.registerSystemChangeCallback(onSystemChange);
  Axe.registerEffectsReceivedCallback(onEffectsReceived);
  Axe.registerControlChangeCallback(onControlChange);
  Axe.registerEffectFilterCallback(onEffectFilter);

  Axe.fetchEffects(true);

  Axe.requestPresetDetails();
}

void loop() {
  Axe.update();
}

void onPresetName(PresetNumber number, const char *name, const byte length) {
  Serial.println("onPresetName");
}

void onSceneName(SceneNumber number, const char *name, const byte length) {
  Serial.println("onSceneName");
}

void onEffectsReceived(PresetNumber number, AxePreset preset) {
  Serial.println("onEffectsReceived");
}

void onPresetChanging(const PresetNumber number)
{
  Serial.println("onPresetChanging");
}

void onPresetChange(AxePreset preset)
{
  Serial.println("onPresetChange");
}

void onTempoChange()
{
  Serial.println("onTempoChange");
}

void onTuner(const bool engaged) {
  Serial.println("onTuner");
}

void onSystemChange() {
  Serial.println("onSystemChange");
}

bool onEffectFilter(const PresetNumber number, AxeEffect effect) {
  return true;
}

void onControlChange(const byte control, const byte value) {
  Serial.println("onControlChange");
}

Before your help, I attempted adding this functionality on my own (using similar methods as yours), and ran into similar problems.
I really appreciate your help with this!
 
It's tough because I still haven't found my arduino stuff after moving. I might just buy a new kit so that I can debug properly.

You can register a MIDI byte callback to see each byte as it comes in. Maybe that will give us some insight.
 
Back
Top Bottom