Learn
An easy way to have everything interactive.
Simply connect your device and use the Learn function to automatically connect a parameter to a button or else:
Learn is available when you right click on almost any parameter.
Learning - Links to external Devices
First of all, we need to define which input control device will interact with Smode. To do this, open the Preferences in the EDIT > Preferences (F11) menu in the main toolbar. In the Engine tab, select the “Control Devices” row, and press Add:
This will create a new Control Input device. You should select Device Identifier with the corresponding combo box. This Combo Box is filled with Identifier of Control Devices actually plugged physically with your computer. This Combo Box also contains Identifier creation menu for network based protocol device, such as ArtNet or Osc:
You can rename the device for convenience. The name of the device is recorded in the Smode document. This allows for different users to use a same document with the same device alias, connected to a different underlying hardware.
For this example we will use the Keyboard control device. Once the setting is done, you should click on the Apply Change button and close the Preferences panel.
The Devices Panel allows you to observe their activity. You can read the last received messages, and their count and rate.
Now that your Control Device setting is created, you can create a Link with the Device with the Learn command. You can find the Learn menu by right clicking on any parameter. You can also right click on an Element and use the Learn menu, to select one of its learnable parameters.
Let’s learn the activation of an Uniform layer:
The Learn dialog box is split in two parts:
-
The top part is the control events list received during the dialog box life time.
-
The optional bottom part is the Action to be performed depending on the learned parameter type.
The control event list is updated each time a message is received. You should type on the keyboard to see the message list updated.
The control event identifier is displayed in newer to older order. Each control event identifier is followed by its current value with the “=” sign in between.
For the Keyboard control device, each key has its controller identifier with an associated Boolean value. True means key is down, False means key is up.
First, we select the wanted Controller identifier: “Keyboard key A” for instance, then we will try to use a “Convert To” Boolean Action to inspect the generated Rule.
Then press OK to close the Learn dialog Box.
We can now see that a Single Precision Device Rule Source has been created with a Target on the Layer activation.
The “Convert To” Action is the default Action done by Rule. In this case Smode tries to convert the Boolean Control Event Value to the Layer Activation State.
In result, when the A key is down the Layer is active, when the A key is up the Layer becomes inactive.
Here click on “Replace all” (remember that multiple Target can automate the same parameter):
Here click on the “Keyboard key A” Control Event, let the Toggle Boolean Action and press OK.
Here click on “Replace all” (remember that a Rule can have multiple Target). You can now see that the Lead dialog replaces the previous Rule by a more complex one:
When the A Keyboard key is up, the Layer Activation State is now Toggled. The main difference from the previous Rule is that we do not need to let the key pressed to see the Layer activated. This is performed by new Actions Element in the Rule: the “Toggle” Action and the “If Equals” Condition. The “If Equals” is a Condition. Condition is a kind of Action which allows to filter the value to be able to reach target parameters. The “If Equals” allows the Rule to send output if the Control Event Value is equal to its Value parameter. Here the Value is False, so the Rule matches only if the A key is Up. The Value is set to the Value of the Control Event at the Rule creation. We can switch the “If Equals” Value to True just to make the Layer activation toggling to be performed when the A key is Down. The Toggle Action is a special Action usable on Target of Boolean or Activation State type. The output value depends on the output one and toggle it.
Popular protocols
Smode handles popular control and communication protocols like MIDI or OSC , providing a versatile platform for integrating and controlling external devices and systems.