CTAG Multichannel Board
Developed in collaboration with Henrik Langer and Robert Manzke of CTAG Audio, the CTAG system is a Bela-compatible multi-channel Linux audio system.
Table of contents
- CTAG multichannel audio board
- CTAG cape vs kit
- Get started with CTAG
- Programming notes
- Configuring jumpers
- Design files
CTAG multichannel audio board
CTAG comes in two types: FACE and BEAST.
CTAG FACE is a single cape with 4 audio input channels and 8 audio output channels.
CTAG BEAST is created by stacking two configured FACE capes on top of each other, doubling the amount of available audio I/O to 8 input channels and 16 output channels. Here is a summary of channel counts when stacking multiple boards of the Bela family:
CTAG Face | CTAG Beast | CTAG Face + Bela | CTAG Beast + Bela | (all) sampling rates | |
---|---|---|---|---|---|
audio inputs | 4 | 8 | 4 | 8 | 48kHz |
audio outputs | 8 | 16 | 8 | 16 | 48kHz |
analog inputs | 0 | 0 | 8 | 8 | 24kHz(when 8 used), 48kHz(when 4 used) |
analog outputs | 0 | 0 | 8 | 8 | 24kHz(when 8 used), 48kHz(when 4 used) |
digital IO | 16 | 16 | 16 | 16 | 48kHz |
CTAG cape vs kit
Both CTAG FACE and CTAG BEAST are available as standalone capes, and as starter kits.
The CTAG FACE and CTAG BEAST capes come with a molex breakout board to connect audio inputs, as well as audio adapters (6 for FACE, 12 for BEAST). You must supply your own BeagleBone Black, USB cable and SD card flashed with Bela software.
CTAG Starter Kits include the relevant capes and audio adapters, and also include a BeagleBone Black and USB cable. The BeagleBone Black comes pre-flashed with Bela software (flashed to the internal eMMC memory), so it’s ready to go straight out of the box.
Get started with CTAG
CTAG capes are fully compatible with the Bela software, and can take advantage of Bela’s sub-millisecond latency as well as Bela’s streamlined workflow and browser-based development tools. You can design and program your multichannel audio processing using the variety of programming languages supported by Bela, including C++, Pure Data, SuperCollider, FAUST and more.
Additionally, a Bela cape can be added to a CTAG system to gain access to Bela’s 8 DC coupled analog I/O, allowing you to add interactivity to a multichannel audio setup.
CTAG capes can also be used with ALSA drivers for compatibility with standard linux applications. For this use case, your CTAG system will require a different bootable image for the BeagleBone Black.
Getting started with CTAG and Bela
To start working with CTAG and Bela you will need your CTAG FACE or BEAST Starter Kit, or your FACE or BEAST capes along with a BeagleBone Black, a USB cable, and an SD card flashed with the latest Bela software.
CTAG FACE and BEAST are fully compatible with Bela software. This means that getting up and running requires the same steps as Bela, including plugging in your system and making sure your system recognises Bela as a network driver. Please see the Get Started Guide for details.
Getting started with CTAG and ALSA
The CTAG system can be used to build standard Linux applications using ALSA.
For details on CTAG and ALSA, we recommend the information provided the CTAG creators on their wiki page: https://github.com/ctag-fh-kiel/bela-ctag/wiki.
Please note: in order to develop ALSA applications, you will need a different image to the default Bela software. This image can be downloaded here.
Programming notes
Pure Data
Yes, you can program your multi-channel audio processing with Pure Data!
Use the adc~
and dac~
objects to access the audio input and output channels. For CTAG FACE (4 audio inputs, 8 audio outputs), access your inputs with adc~
channels 1, 2, 3 and 4, and access your audio outputs with dac~
channels 1, 2, 3, 4, 5, 6, 7, and 8.
Similarly, for CTAG BEAST (8 audio inputs, 16 audio outputs), access your audio inputs with adc~
channels 1, 2, 3, 4, 5, 6, 7, and 8, and access your audio outputs with dac~
channels 1-16.
Pure Data and interaction
If you are using a CTAG system with an added Bela cape, you also have access to Bela’s 8 analog inputs and 8 analog outputs. These are available through the adc~
and dac~
objects.
The analog inputs and outputs start at the number after your audio output channels. On CTAG FACE this means the analog inputs are on adc~
9-16, and the outputs are on dac~
9-16, and on CTAG BEAST the inputs are on adc~
17-24, and outputs are on dac~
17-24.
Because CTAG features more output channels than input channels, this means there are unused adc~
channels. These are not accessible.
Configuring jumpers
Both CTAG FACE and CTAG BEAST feature a set of pins that can be connected with jumpers in a variety of configurations, in order to change the behaviour of the system. Learn how to configure the jumpers here.
Design files
The schematics and PCB design files for the CTAG cape can be found here.