Difference between revisions of "Avid Diamond Platform"

From musings of k8
Jump to navigation Jump to search
Line 1: Line 1:
Settings that can be controlled directly:
+
Supported Avid devices include: [[Avid E3 Engine]], [[Avid Stage 16]]
 +
 
 +
## Overview
 +
 
 +
carbonio is a Linux module that directly controls the audio I/O devices.
 +
 
 +
Audio settings that can be controlled:
 
- Gain
 
- Gain
 
- Pad
 
- Pad
 +
- Phase
 +
- Mute
 
- Phantom
 
- Phantom
- Stage 16 LEDs
+
 
 +
Non-audio settings that can be controlled:
 +
- LEDs on the [[Avid Stage 16]]
 +
- The opamp (operational amplifier) for each channel.
 +
 
  
 
## Devices
 
## Devices
  
- The following devices are located in `/sys/bus/devices`.
+
### /sys/bus/i2c/devices
 +
 
 +
Device numbers:
 +
; 1 : bus 1 / generic
 +
; 4 : bus 4 / carbonui
 +
 
 +
 
 +
The `i2c*` commands don't seem to work on the carbonui devices.
 +
 
 +
### /sys/bus/spi/devices
 +
 
 +
Device overview:
 +
; spi1.[0-8] : channel gain and pad
 +
; spi2.[0-3] : unknown
 +
; spi3.[0-2] : unknown
 +
; spi4.0 : power, mute, phantom, and status LEDs
 +
 
 
- The `_en` extension represents "enable".
 
- The `_en` extension represents "enable".
- Supported Avid devices include: [[Avid E3 Engine]], [[Avid Stage 16]]
 
  
 
| Directory  | File            | modalias        | Description |
 
| Directory  | File            | modalias        | Description |
Line 69: Line 96:
 
...
 
...
 
```
 
```
 
**/sys/bus/i2c/devices**
 
; 1 : bus 1 / generic
 
; 4 : bus 4 / carbonui
 
 
 
The i2c* commands don't seem to work on the carbonui devices.
 
 
**/sys/bus/spi/devices**
 
; spi1.[0-8] : channel gain and pad
 
; spi2.[0-3] : unknown
 
; spi3.[0-2] : unknown
 
; spi4.0 : power, mute, and status LEDs, and phantom control
 
  
 
```
 
```

Revision as of 21:31, 14 December 2020

Supported Avid devices include: Avid E3 Engine, Avid Stage 16

    1. Overview

carbonio is a Linux module that directly controls the audio I/O devices.

Audio settings that can be controlled: - Gain - Pad - Phase - Mute - Phantom

Non-audio settings that can be controlled: - LEDs on the Avid Stage 16 - The opamp (operational amplifier) for each channel.


    1. Devices
      1. /sys/bus/i2c/devices

Device numbers:

1
bus 1 / generic
4
bus 4 / carbonui


The `i2c*` commands don't seem to work on the carbonui devices.

      1. /sys/bus/spi/devices

Device overview:

spi1.[0-8]
channel gain and pad
spi2.[0-3]
unknown
spi3.[0-2]
unknown
spi4.0
power, mute, phantom, and status LEDs

- The `_en` extension represents "enable".

| Directory | File | modalias | Description | | ---------- | --------------- | ---------------- | ----------- | | spi1.[0-3] | | carbonio_adc4 | mic inputs (\*1) | | | chX_pad_en | | pad -- 0=off, 1=on | | | chX_preamp_gain | | gain -- 1-51 (10.0-60.0 dB) (\*2) | | spi1.[4-5] | | carbonio_dac4 | line outputs (\*1) | | | chX_attenuation | | | | | chX_mute | | mute -- 0=off, 1=on | | | opamp_en | | | | | phase_invert | | | | spi1.6 | | carbonio_aes4x4 | aes outputs | | spi1.7 | | spidev | | | spi1.8 | | cs4272 | | | spi2.[0-3] | | spidev | | | spi3.[0-2] | | carbonui-s6-spi | | | spi4.0 | LED indicators | carbonreario_bosb | | | | adc0_phantom_en | | 0-15 (binary) / Ch 8 - Ch 5 Phantom | | | adc1_phantom_en | | 0-15 (binary) / Ch 4 - Ch 1 Phantom | | | adc2_phantom_en | | 0-15 (binary) / Ch 12 - Ch 9 Phantom | | | adc3_phantom_en | | 0-15 (binary) / Ch 16 - Ch 13 Phantom | | | mute_led_en | | 0,1 (off, on) / Mute LED | | | status_led_0_en | | 0-2 (off, orange, green) / Status LED | | | status_led_1_en | | 0-2 (off, orange, green) / Power LED |

    • (\*1)** Each directory controls a bank of 4 channels. The directory 0 or 4: Ch 8-5, 1 or 5: Ch 4-1, 2: Ch 12-9 3: Ch 16-13). E.g., `spi1` channel #1 == `spi1.1/ch3_*`. **NOTE:** Changing file values directly will not be reflected in the VENUE UI.
    • \(*2)** The `preamp_gain` values are set to 0 before the device is first initialized by the E3 Engine.
    • /usr/bin/carbonui-util.sh**

This command seems to control the LEDs on the Avid S3 console using the `/sys/kernel/carbonui/oled` interface.


    1. Discovery
    • /usr/bin/carbonio-dump.sh**

Dumps the values of the IO board devices in /sys/bus/spi/devices.

```

  1. carbonio-dump.sh

]]] slot spi1.0 ]]] board ID: 0x6 ]]] board rev: 0x0 ]]] ch0_overload: 0 ]]] ch0_pad_en: 0 ]]] ch0_preamp_gain: 1 ]]] ch1_overload: 0 ]]] ch1_pad_en: 0 ]]] ch1_preamp_gain: 1 ]]] ch2_overload: 0 ]]] ch2_pad_en: 0 ]]] ch2_preamp_gain: 1 ]]] ch3_overload: 0 ]]] ch3_pad_en: 0 ]]] ch3_preamp_gain: 1 ... ```

```

  1. ls -R spi1.0/

spi1.0/ spi1.0/uevent spi1.0/modalias spi1.0/subsystem spi1.0/power spi1.0/power/wakeup spi1.0/power/runtime_status spi1.0/power/control spi1.0/power/runtime_suspended_time spi1.0/power/runtime_active_time spi1.0/power/autosuspend_delay_ms spi1.0/driver spi1.0/board_id spi1.0/board_revision spi1.0/ch0_preamp_gain spi1.0/ch0_overload spi1.0/ch0_pad_en spi1.0/ch1_preamp_gain spi1.0/ch1_overload spi1.0/ch1_pad_en spi1.0/ch2_preamp_gain spi1.0/ch2_overload spi1.0/ch2_pad_en spi1.0/ch3_preamp_gain spi1.0/ch3_overload spi1.0/ch3_pad_en ```

```

  1. ls -R spi4.0/

spi4.0/ spi4.0/uevent spi4.0/modalias spi4.0/subsystem spi4.0/power spi4.0/power/wakeup spi4.0/power/runtime_status spi4.0/power/control spi4.0/power/runtime_suspended_time spi4.0/power/runtime_active_time spi4.0/power/autosuspend_delay_ms spi4.0/driver spi4.0/board_id spi4.0/board_revision spi4.0/ins_a_board_present spi4.0/ins_b_board_present spi4.0/mute_n spi4.0/mute_led_en spi4.0/status_led_0_en spi4.0/status_led_1_en spi4.0/dac0_mute_n spi4.0/dac1_mute_n spi4.0/adc0_phantom_en spi4.0/adc1_phantom_en spi4.0/adc2_phantom_en spi4.0/adc3_phantom_en ```