Recording 64 Channnel Audio from Allen&Heath ACE with only Linux

I want to record digital multitrack audio from my Allen&Heath iDR-48, but I don’t have Dante or other special audio gear.

On Github I found an ACE Recorder: GitHub - h7075/ace_recorder: Records directly from the Allen Heath iLive ACE port to a .wav file · GitHub (it also needs this library to function: GitHub - mackron/dr_libs: Audio decoding libraries for C/C++, each in a single source file. · GitHub )

I connected my iDR to my PC using a cheap 100MBit USB2.0 ethernet dongle.

After compiling the ace_recorder and recording I got a *.wav file. But it was only 2 channel audio :-/ and empty.

In the source code there is a variable nchannels :thinking:

… just turn it up to 64!

And now I got a 64 channel *.wav file and we have a clean recording :rocket:

I did a quick test and let the AI generate some playback code:

But it doenst work that way, first we need to simluate an iLive Surface :-/

The following information could possibly be helpful:

Edit: Most of the information is already in the GitHub Repos linked above.

  • If you start the editor in offline mode, select idr10 as the stagebox without surface and set the IOs according to your iDR48 (A-F analog in, G-I analog out, Slot A M-ACE), you can flexibly route most of the the outputs. Then safe the show, restart the editor in online mode (connected to the iDR48), and load the show again. Doing that, you can even use the iDR as a stagebox for SQ. The only drawback: Preamp control through ACE/Slink isn’t working, so you have to use the editor/iPad/MixingStation App for controlling the iDR’s Gain/Pad/Phantom.
  • ACE is, allthough being a Layer 2 protocol, designed to be a point to point connection between Mixrack and Surface (or multiple MixRacks). There is a whitepaper that recomends certain media converters for running ACE over optical Fiber. You can, technically, run ACE through a VLAN, but the ACE has to have highest priority. Otherwise, the sync probably gets lost. Several artists/engineers/companys did that.
  • AFAIK, ACE uses layer 2 for audio transport that tunnels Layer 3 for control. It’s somehow also tunneling the network ports between MixRack and surface with a few 10Mbits bandwith. I used that a few times for running ArtNet from FoH to stage. You can also connect MixRack and surface via their network ports (not ACE), that enables control (Layer 3) but obviously no Audio.

I think, the most difficult part implementing playback will be the whole timing/sync/handshake/heartbeat stuff.

Unfortunately, I sold my surface last year, so I can’t provide wireshark dumps…

1 Like

Interesting! I didn’t know the SQ’s SLink port could interpret ACE (but maybe dsnake is also just ACE with a different control layer)

Maybe it would be possible to make the Mixrack compatible with dSnake and in doing that with the SQ and Avantis series of mixers.

SLink Recording should work as well with a small change in bit stuffing. The iLives Surface password is dsl5000. The Software running on the surface touchscreen is the same as the jar in the firmware, it can be easily decompiled and the code is very readable. The offline editor simulates a Mixrack, you can connect a surface to it.

4 posts were split to a new topic: ACE Protocol Reverse Engineering