Difference between revisions of "Control Chain"

From MOD Wiki
Jump to navigation Jump to search
(fix image caption)
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
== About ==
 
== About ==
  
Control Chain is an open hardware assignment protocol developed to reflect the LV2 controls properties. In other words the Control Chain enables you to control LV2 plugins control ports using a hardware device like Arduino.
+
Control Chain is an open standard developed by MOD Devices that defines communication protocol, electrical specification, cables and connectors. It's used to interconnect external controllers (a.k.a peripheral devices) as expression pedals and foot-switches extension to MOD devices, for example the [https://moddevices.com/pages/mod-duo MOD Duo].  
  
Although the Control Chain has been created focused on MOD, it isn't a must to have it working with LV2 plugins. This can be done using, for example, an Arduino, connected via USB to your PC.
+
Comparing to MIDI, Control Chain is way more powerful. For example, instead of using hard-coded values as MIDI does, Control Chain has what is called device descriptor and its assignment (or mapping) message contains the full information about the parameter being assigned, such as parameter name, absolute value, range and any other data. Having all that information on the device's side allows developers to create powerful peripherals that can, for example, show the absolute parameter value on a display, use different LED colors to indicate a specific state, etc.  
  
This page concentrates technical information of Control Chain. If you are looking for a startup guide to create new controllers, please refer to [[MOD Arduino Shield]] article, there you will find a tutorial and Arduino cases that will help you.
+
The Control Chain devices are connected to the MOD using a regular Ethernet patch cable and they have two connectors, what allows a next external controller to be connected, creating then a chain. The MOD will provide power supply to the controller via the patch cable.
 +
 
 +
{{note|Control Chain support is available only from version 1.4}}
 +
 
 +
== How to use Control Chain devices ==
 +
 
 +
The external controllers are connected using an Ethernet patch cable coming from the MOD Control Chain port to the Main port of the controller. To connect the next controller the cable should connect the Next port of the previous controller to the Main port of the next controller.
 +
 
 +
[[File:footswitch-rear.jpg|border|680px]]
 +
 
 +
Once the controller is connected it will be automatically detected and ready to use. The actuators of each Control Chain device will show up as option to be mapped in the plugin configuration screen. See [[Chapter 2: Web interface#Accessing plugin configuration screen|accessing plugin configuration screen]] for details.
 +
 
 +
[[File:footex-assignment.gif|thumb|none|680px|Assigning a control to a Control Chain actuator]]
 +
 
 +
To see a list with all connected Control Chain devices click on the Control Chain icon on the bottom-right of the screen.
 +
 
 +
[[File:web-interface-cc-list.gif|thumb|none|680px|Control Chain devices list]]
 +
 
 +
== How to upgrade Control Chain devices ==
 +
 
 +
Once a new firmware of a Control Chain device be available the Web interface will warn you. To proceed with the upgrading click on Download button to download the latest firmware and then follow the instructions on the screen that is also replicated here.
 +
 
 +
[[File:cc-device-upgrade-available.jpg|border|510px]] [[File:cc-device-download.jpg|border|510px]]
 +
 
 +
=== Upgrading the MOD Footswitch ===
 +
 
 +
# Disconnect the MOD Footswitch from the Control Chain port
 +
# Hold down the footswitch #1 on the device
 +
# While the footswitch is pressed, connect the MOD Footswitch to the MOD via USB cable
 +
# Wait for the "update completed" message
 +
# Disconnect the MOD Footswitch from the USB port
 +
# Connect it to the Control Chain port once again
 +
 
 +
Note: The upgrade should only take a few seconds.
 +
 
 +
=== Upgrading Arduino based devices ===
 +
 
 +
The Arduino based devices have to be updated manually, via Arduino IDE. Please check the [https://github.com/moddevices/cc-arduino-lib cc-arduino-lib] documentation to see how to proceed with the upgrade.
 +
 
 +
=== Troubleshooting ===
 +
 
 +
If you are having problems trying to upgrade the device via Web GUI for example, the GUI doesn't recognize the device connection, please follow the below instructions in order to manually upgrade the firmware of your device.
 +
 
 +
==== MOD Footswitch ====
 +
 
 +
# Disconnect the MOD Footswitch device from the Control Chain port
 +
# Hold down the footswitch #1 on the device
 +
# While the footswitch is pressed, connect the MOD Footswitch to the MOD via USB cable
 +
# Open a terminal and execute the command below
 +
 
 +
    curl http://download.moddevices.com/releases/cc-firmware/v1/file/mod-footswitch-latest.bin | ssh root@192.168.51.1 "cat > /tmp/mod-footswitch-latest.bin && nxp-usb-isp /tmp/mod-footswitch-latest.bin"
 +
 
 +
If you see the message ''"Firmware update complete!"'' your device was successfully updated to the latest version.

Revision as of 15:16, 12 August 2018

About

Control Chain is an open standard developed by MOD Devices that defines communication protocol, electrical specification, cables and connectors. It's used to interconnect external controllers (a.k.a peripheral devices) as expression pedals and foot-switches extension to MOD devices, for example the MOD Duo.

Comparing to MIDI, Control Chain is way more powerful. For example, instead of using hard-coded values as MIDI does, Control Chain has what is called device descriptor and its assignment (or mapping) message contains the full information about the parameter being assigned, such as parameter name, absolute value, range and any other data. Having all that information on the device's side allows developers to create powerful peripherals that can, for example, show the absolute parameter value on a display, use different LED colors to indicate a specific state, etc.

The Control Chain devices are connected to the MOD using a regular Ethernet patch cable and they have two connectors, what allows a next external controller to be connected, creating then a chain. The MOD will provide power supply to the controller via the patch cable.

Control Chain support is available only from version 1.4

How to use Control Chain devices

The external controllers are connected using an Ethernet patch cable coming from the MOD Control Chain port to the Main port of the controller. To connect the next controller the cable should connect the Next port of the previous controller to the Main port of the next controller.

Footswitch-rear.jpg

Once the controller is connected it will be automatically detected and ready to use. The actuators of each Control Chain device will show up as option to be mapped in the plugin configuration screen. See accessing plugin configuration screen for details.

Assigning a control to a Control Chain actuator

To see a list with all connected Control Chain devices click on the Control Chain icon on the bottom-right of the screen.

Control Chain devices list

How to upgrade Control Chain devices

Once a new firmware of a Control Chain device be available the Web interface will warn you. To proceed with the upgrading click on Download button to download the latest firmware and then follow the instructions on the screen that is also replicated here.

Cc-device-upgrade-available.jpg Cc-device-download.jpg

Upgrading the MOD Footswitch

  1. Disconnect the MOD Footswitch from the Control Chain port
  2. Hold down the footswitch #1 on the device
  3. While the footswitch is pressed, connect the MOD Footswitch to the MOD via USB cable
  4. Wait for the "update completed" message
  5. Disconnect the MOD Footswitch from the USB port
  6. Connect it to the Control Chain port once again

Note: The upgrade should only take a few seconds.

Upgrading Arduino based devices

The Arduino based devices have to be updated manually, via Arduino IDE. Please check the cc-arduino-lib documentation to see how to proceed with the upgrade.

Troubleshooting

If you are having problems trying to upgrade the device via Web GUI for example, the GUI doesn't recognize the device connection, please follow the below instructions in order to manually upgrade the firmware of your device.

MOD Footswitch

  1. Disconnect the MOD Footswitch device from the Control Chain port
  2. Hold down the footswitch #1 on the device
  3. While the footswitch is pressed, connect the MOD Footswitch to the MOD via USB cable
  4. Open a terminal and execute the command below
   curl http://download.moddevices.com/releases/cc-firmware/v1/file/mod-footswitch-latest.bin | ssh root@192.168.51.1 "cat > /tmp/mod-footswitch-latest.bin && nxp-usb-isp /tmp/mod-footswitch-latest.bin"

If you see the message "Firmware update complete!" your device was successfully updated to the latest version.