Axe-Fx II and Linux (again)

Anyone familiar with Cadence? I was able to get Reaper to recognize my Axe FX by choosing Direct Sound under the audio device and then the Axe FX was listed as an I/O device in Reaper. It also shows up now in KMix, and when I click test, I get playback. The problem is that most of the included apps in KXStudio use Jack, which I think is the same thing as Cadence? and I don't know how to point the Jack settings to the AxeFX. Is it compatible with the ALSA driver? Because I don't see any way to oroute the Axe FX to Cadence/Jack.
 
Anyone familiar with Cadence? I was able to get Reaper to recognize my Axe FX by choosing Direct Sound under the audio device and then the Axe FX was listed as an I/O device in Reaper. It also shows up now in KMix, and when I click test, I get playback. The problem is that most of the included apps in KXStudio use Jack, which I think is the same thing as Cadence? and I don't know how to point the Jack settings to the AxeFX. Is it compatible with the ALSA driver? Because I don't see any way to oroute the Axe FX to Cadence/Jack.

I am not familiar with Cadence and KXStudio, but I guess you haven't configured JACK yet.

According to the KXStudio documentation the "System" tab of the Cadence main window contains a "Configure" button below the "JACK Status" section (http://kxstudio.linuxaudio.org/Documentation:Manual:cadence_introduction). Click this button to open the "JACK Settings" (http://kxstudio.linuxaudio.org/Documentation:Manual:jack_configuration). On the "Engine" tab make sure that the realtime option is checked, then head over to the "Driver" tab. Select the "ALSA" driver entry and check the "Device" settings.

Set "Device/Interface" to the entry representing your Axe-Fx. To find out the number and the label the Axe-Fx has as Linux soundcard you can use
Code:
cat /proc/asound/card
in a terminal.

Under "Properties" set "Input Channels" to 4 and "Output Channels" to 2 and the "Sample Rate" to 48000. I think a "Buffer Size" of 1024 and a value of 2 for "Periods/Buffer" should work for now. You may experiment later with these values to reduce latency. Activating the option "Soft Mode" should avoid that JACK stops if xruns occur. Make sure "Force 16-bit" is unchecked.

Maybe have an additional look here (http://wiki.linuxaudio.org/faq/start), too.
 
Last edited:
You are a wizard sir, that got me up and running! I don't suppose there is a way to not have to reboot the Axe FX every time at startup?
 
You are a wizard sir, that got me up and running! I don't suppose there is a way to not have to reboot the Axe FX every time at startup?

Glad it works! :)

I assume with "startup" you mean starting Linux.(?) If all works as intended the Axe-Fx should not have to be restarted. The script installs a udev rule which "recognizes" when the Axe-Fx appears on a USB port. This happens when Linux is starting up, when you plug in the USB cable from an already running Axe-Fx and also when you start or reboot the Axe-Fx which is already connected to your PC via USB. In each case the udev rule executes fxload which loads a hex file into the Axe-Fx. This file is necessary for the Axe-Fx to act and get registered as a USB audio and MIDI device.

[The following paragraph was edited to correct some erroneous explanations... sorry for any confusion these may have caused.]

As far as the readme file coming with the script states that you should reboot the Axe-Fx II this is just related to the situation after running the script, i.e. after installing the udev rule. If the Axe-Fx is already connected and running during the installation, the Axe-Fx would not be "recognized" without an event that triggers the newly installed udev rule. The reboot of the Axe-Fx leads to such an event (as well as un- and replugging the USB connection does).
 
Last edited:
Version 1.05 of the script is available. You can download it from AlGrenadine's AxeFX Archive. Once again, many thanks to AlGrenadine for hosting the package file.

If the Axe-Fx II has been powered up and connected via USB during the installation process, the script now takes care that the Axe-Fx II will immediately work as a USB audio and midi interface as soon as the script
finishes. So you will not have to reboot the Axe-Fx II or dis- and reconnect the USB cable after the installation process has finished.

As explained in post 104 the Axe-Fx specific udev rule will get triggered everytime the Axe-Fx II appears on one of the USB ports of your computer which happens

- when Linux is starting up (of course only if the Axe-Fx II is powered up conncected via USB...),
- when you plug in the USB cable connected to an already running Axe-Fx II and also
- when you start or reboot an Axe-Fx II connected via USB.

In the past the udev rule did not get triggered if the Axe-Fx II has already been running and connected to a USB port when the script was executed, because there was no triggering event (i.e. Axe-Fx II appearing at a USB port). That's the reason why the Axe-Fx II had to be rebooted (or alternatively the USB cable had to be unplugged and plugged in again) in that specific situation.

Now the script itself triggers the udev rule made for the Axe-Fx II if it detects an Axe-Fx II on one of the USB ports. Hence the Axe-Fx II gets loaded with the USB firmware hex file (enabling the Axe-Fx II to work as a USB audio and midi interface) without rebooting respectively dis-reconnecting the USB cable.

All this does not affect users who already have run the script successfully. It is not necessary to run the script again. Once the script has created the udev rule file for the Axe-Fx II you are done. :)
 
Hey Mr Volt! I just upgraded to Ubuntu 16.04 and after running the script (v104) this is what shows in the syslog:

Apr 23 23:40:01 arglebargle kernel: [ 3925.492899] usb 1-11: new high-speed USB device number 10 using xhci_hcd
Apr 23 23:40:02 arglebargle kernel: [ 3925.621057] usb 1-11: New USB device found, idVendor=2466, idProduct=0003
Apr 23 23:40:02 arglebargle kernel: [ 3925.621065] usb 1-11: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Apr 23 23:40:02 arglebargle mtp-probe: checking bus 1, device 10: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-11"
Apr 23 23:40:02 arglebargle mtp-probe: bus: 1, device: 10 was not an MTP device
Apr 23 23:40:02 arglebargle systemd-udevd[7180]: failed to execute '/home/quonsar/Desktop/Fractal/Axe-Fx_II_USB_Driver_Setup_Linux_104/axefx2load.hex' '/home/quonsar/Desktop/Fractal/Axe-Fx_II_USB_Driver_Setup_Linux_104/axefx2load.hex -t fx2lp -I /usr/share/usb/FractalAudio/axefx2/axefx2load.hex -D /dev/bus/usb/001/010': Permission denied
Apr 23 23:40:02 arglebargle systemd-udevd[7178]: Process '/home/quonsar/Desktop/Fractal/Axe-Fx_II_USB_Driver_Setup_Linux_104/axefx2load.hex -t fx2lp -I /usr/share/usb/FractalAudio/axefx2/axefx2load.hex -D /dev/bus/usb/001/010' failed with exit code 2.​

What do you make of that?
 
No worries, happens to the best of us :) ... but didn't the script show the message:
Code:
To upload the firmware to the USB chip of the Axe-FX II fxload
(http://sourceforge.net/projects/linux-hotplug/files/fxload/) is required.
fxload has not been found. Press [y] if you would like to enter the path
to fxload or press any other key to cancel.
?
 
Yeah, in the meantime I supposed that this must have gone wrong as all the pathes in the error message that should lead to fxload pointed to axefx2load.hex... ;) I was just too tired when I read your initial post and overlooked that, too, at first.
 
I have no access to an XL/XL+, so I cannot test this. But it should work, as the driver for all Axe-Fx II variants is the same which leads me to the conclusion that the XL/XL+ uses the same USB firmware file as the Axe-Fx II. The USB firmware is the essential part to get the Axe-Fx II working as a USB audio and MIDI interface. The script respectively the UDEV rule it creates just makes for loading the USB firmware file up to the Axe-Fx II.
 
I have no access to an XL/XL+, so I cannot test this. But it should work, as the driver for all Axe-Fx II variants is the same which leads me to the conclusion that the XL/XL+ uses the same USB firmware file as the Axe-Fx II. The USB firmware is the essential part to get the Axe-Fx II working as a USB audio and MIDI interface. The script respectively the UDEV rule it creates just makes for loading the USB firmware file up to the Axe-Fx II.
Pm'd you ;)
 
For future : XL and XL+ use the same USB VID_PID, so yes it should work equally on XL/XL+.
Now the question comes for AX8
 
Just to clarify: The AX8 (and FX8) don't need to (and can't) be loaded with USB firmware like it is necessary for the Axe-Fx II models. So the approach to get the Axe-Fx II working as a USB soundcard under Linux does not apply to the AX8 and FX8.
 
Just to clarify: The AX8 (and FX8) don't need to (and can't) be loaded with USB firmware like it is necessary for the Axe-Fx II models. So the approach to get the Axe-Fx II working as a USB soundcard under Linux does not apply to the AX8 and FX8.
Absolutely, directly recognized as Usb Audio Class compliant devices
 
"Inspired" by qonsar's mishap above, I modified the script a little. In case fxload has been found in multiple locations, the script now preselects the one found at first. The user just needs to acknowledge the preselection to proceed. This way the risk of entering a wrong path to fxload should be minimized. Of course it is still possible to modify the path to fxload manually, too, if needed/desired.

The changes do not affect users who already have run the script successfully. It is not necessary to run the script again.

The new revision 1.06 of the script is available for download from the unique AxeFx Archive. Merci beaucoup, AlGrenadine.
 
I just stumbled across this thread and I am wondering if there is still someone around, who can help me to get AxeEdit running with my AxeFx2 XL+. I followed all the instructions in this thread. After installing the latest version of the USB Driver v.106 the device seems to be connected properly. Audio is working and I can send Midi Data from Reaper via USB to my AxeFx.

But I get constantly communication time out errors when I try to connect with axe edit. There are a couple of things that are strange:
- When I start AxeEdit I get two messages saying "Can not create parent directory" and "Can not create block library path". I tried to set them manually but the paths are remaining empty. When the interface itself appears there is communication between the AxeFx and the computer because the preset with its blocks and preset number appears on the interface and there is the green "MIDI-In" LED flashing on the AxeFx. When I try to select an item on the AxeEdit- lets say a cab block - I get a timeout communication error message.

- When I checked the connection in AxeEdit, everything seems to be fine. Looking closer, the AxeFx has 2 Midi Inputs but no output. I already tried to uninstall and reinstalled the USB Driver. No success! I uninstalled and reinstalled Wine. No success!

Any Ideas? Thank you very much in advance.
Chris
 

Attachments

  • Devices.png
    Devices.png
    23.5 KB · Views: 6
  • Path2.png
    Path2.png
    13.3 KB · Views: 5
  • Path3.png
    Path3.png
    13.3 KB · Views: 5
  • Path-1.png
    Path-1.png
    28.6 KB · Views: 6
  • Ports1.png
    Ports1.png
    71.4 KB · Views: 6
  • Ports2.png
    Ports2.png
    71.7 KB · Views: 5
  • Prefs-1.png
    Prefs-1.png
    69.2 KB · Views: 4
  • Timeout.png
    Timeout.png
    14.2 KB · Views: 5
  • Workspace.png
    Workspace.png
    69.1 KB · Views: 5
Back
Top Bottom