October 2024: Fractal Audio's VP4 Virtual Pedalboard has been added to the wiki.
USB
Contents
Processors and USB
Axe-Fx III
The Axe-Fx III has a dedicated 16-core, 500 MHz USB microcontroller. USB 2.0 is used to connect the unit to a computer, to run software editors and Fractal-Bot. USB Audio is supported.
Windows – Requires installing a USB driver. Requires Windows 7 SP1 or newer.
Mac – No driver required (class compliant). Requires OS X 10.6.8 for MIDI over USB, 10.9 for USB Audio.
"Still USB-over-MIDI but at least 10x faster." source
"The Axe-Fx III has a new driver . I just tested it under Reaper and was able to set the buffer size to 8 with no problems. I typically have it at 256 because I monitor directly from the output but it seems to be working fine on the lowest setting." source
"I can only get 8 to work on my fastest machine with nothing else running. 16 works on all my machines except my Macbook which I have to use 64." source
"The USB buffer size on the Axe-Fx III itself goes all the way down to 8. 256 is the highest setting and is the (conservative) default value." source
Note: the quotes above apply to the Windows driver. Macs typically require a higher buffer setting to prevent audio distortion. From the Axe-Fx III Owner's Manual:
“Set this to lower values for less latency with USB Audio, set to higher values if you are experiencing distorted audio. Stop USB audio streaming when changing this value so as to allow the buffer to reset properly. Streaming can be stopped by closing the application sending data to the Axe-Fx III or by disconnecting the USB cable."
The USB subsystem boots instantly on power on, it doesn't depend on the DSP. The USB subsystem does need some time to settle down though. It's recommended to wait a minute or so, before launching the editor.
Axe-Fx III and iOS devices
The Axe-Fx III supports a direct connection to iOS devices, using Apple's Lightning-to-USB Camera Adapter. This means that you can use apps such as SetListMaker and BandHelper on an iPad without requiring an additional MIDI-to-USB interface (which the Axe-Fx II does require). The connection also supports USB Audio between the III and the iOS device.
Axe-Fx II
To connect the Axe-Fx II through USB a driver must be downloaded to the device first from a computer. USB Download drivers for Mac and Windows. If the USB driver is not installed, utilities such as Axe-Edit, Fractal-Bot and Cab-Lab won't recognize the Axe-Fx II. Also, tablets such as an iPad do not connect to the Axe-Fx II, until the driver has been downloaded to the unit first (without power cycling).
"The driver that we supply for OS-X computers is NOT an audio driver. It is a firmware installer. The Axe-Fx II uses a "soft" USB controller. It gets its code from the host computer. When you turn the Axe-Fx II on it requests firmware from the host. This is superior to a hard-coded controller in that updates merely require a new host image rather than reflashing the controller."
The USB connection supports USB-to-MIDI, so there's no need to use a MIDI interface in most cases. An external audio interface is required when connecting the analog Axe-Fx II outputs to a computer.
USB Audio is supported.
AX8 and FX8
The AX8 and FX8 have an USB 2.0 type B port (host). It's fully class-compliant. USB is used to connect the unit to a computer, to run software editors and Fractal-Bot. No driver required.
USB Audio is not supported.
USB-B to USB-C
The Axe-Fx II, AX8 and FX8 have USB-B ports. Directly connecting these to a computer with a USB-C port, like a MacBook, can cause issues when using a straight USB-B to USB-C cable. To start, always connect the cable to the computer first. Sometimes an adapter (multiport) has to be placed inbetween to make things work.
The Axe-Fx III doesn't have this issue.
USB-B to USB-C cables are hard to find. Here's one from Belkin.
USB and CPU usage
Read this: CPU load.
USB Adapter Mode
The Axe-Fx II can be used as an USB-to-MIDI interface, for example to update the firmware on the MFC-101 using Fractal-Bot. This is explained in the Fractal-Bot manual.
"The USB Adapter feature was added for simple USB-to-MIDI functionality, specifically firmware updates for the MFC-101. It is a low priority task since audio processing is the Axe-Fx's primary usage. Latency is not guaranteed. It is not intended as anything more than a no-frills, simple MIDI adapter for non-critical tasks." source
USB Adapter Mode has not been implemented in the Axe-Fx III.
USB Audio
Read this: USB Audio, AES and SPDIF.
Troubleshooting USB
Length of USB cables
"The Axe-Fx III moves a LOT more data over USB than the II. The audio is 8x8 vs. 4x2 and the MIDI-Over-USB interface runs 10-100x faster. Therefore it is important that the cable adhere to specifications (5m max). [1]
USB ground loop
High-pitched noise may be caused by a ground loop.
"The USB spec calls for grounding the cable at both ends (mistake). This can create an USB ground loop. Make sure everything is plugged into the same outlet strip." source
Screen flicker caused by USB
(Axe-Fx II) "An occasional flicker when hooked up to USB is not unusual. This is due to the screen redraw being interrupted by the USB thread." source
USB connection problem? Check the cable
When experiencing problems such as dropped connections or worse, always replace the USB cable first. Even if the cable works with other devices, it may be faulty.
Also, use cables which are as short as possible. Cable length is a frequent cause of intermittent failures.
Distorted audio playback
When audio playback through the Axe-Fx results in distorted audio, increase the USB buffer size.
USB performance can be monitored in Utilities.
Solving audio problems on Macs
If you have issues using USB with a Mac, try cleaning all audio preferences as explained here.
Linux
The Axe-Fx II can work as an audio and MIDI interface just as it does on Windows or OS X, although Linux is not supported officially.
Procedure:
- Before firmware is loaded the device will be reported as a USB device with Vendor ID 2466 and Product ID 0003.
- After the USB controller gets loaded with its firmware the Axe-Fx II will be recognized as a USB soundcard device with Vendor ID 2466 and Product ID 8003.
- For a named output when using lsusb, adequate entries for Fractal Audio Systems and the Axe-Fx II must be added to "usb.ids" (typically under /usr/share/misc/usb.ids). See source
Loading the USB firmware:
- Ubuntu 16.04 and above users can use AlbertA's PPA and install the axefx2-usb-firmware package (sudo add-apt-repository ppa:albaguirre/axe-fx2 && sudo apt update && sudo apt install axefx2-usb-firmware)
- For others, volt created an install script package that is available for download here.
Since the Axe-Fx II is an Audio Class 2.0 compliant device no additional drivers are needed. The Linux kernel already supports such devices. However, depending on your kernel version, there can be some issues:
- For systems with a kernel older than 3.10, you will need to patch clock.c in the ALSA's usb-audio kernel module (<linux>/sound/usb/clock.c). See more here.
- For systems with a kernel older than 4.10, the ALSA usb-audio driver may cause overflows or underflows at the device since there is no proper sync applied. A patch is available here. See more here.
- Ubuntu 16.04/16.10 users can use AlbertA's PPA and install the snd-usb-audio-dkms package which installs the patched kernel module (DKMS actually builds it for your running kernel and rebuilds any time there's a kernel update).
- To verify check the “USB” bar graph in Utility->Status which displays the amount of data in the USB FIFO buffer. Ideally the bar should be at around 50%. The number of buffer errors that have occurred since the last buffer reset is indicated above the bar graph - this should be zero when the driver is functioning correctly.
Threads about using Axe-Fx II with Linux: