Skip to content

Binds#

All created binds and settings for a specific app and controller are stored as YAML files. They are usually edited from within the graphical user interface that disallows creating illegal configurations.

All ids of the elements should match the ones specified in the controller's schema.

Built-in schemas are available in config_files/binds on GitHub.

midi_app_controller.models.binds.Binds #

User's binds for specific app and controller.

Attributes:

Name Type Description
name str

The name of the binds set. Cannot be empty. Must be unique among all binds sets.

app_name str

For which app are the binds intended. Cannot be empty.

controller_name str

For which controller are the binds intended. Cannot be empty.

button_binds list[ButtonBind]

A list of bound buttons.

knob_binds list[KnobBind]

A list of bound knobs.

midi_app_controller.models.binds.ButtonBind #

Information about an action bound to a button.

Attributes:

Name Type Description
button_id int

The id of the button. Should be in the range [0, 127].

action_id str

The id of an action to be executed when the button is pressed.

midi_app_controller.models.binds.KnobBind #

Information about actions bound to a knob.

Attributes:

Name Type Description
knob_id int

The id of the knob. Should be in the range [0, 127].

action_id_increase str

The id of an action to be executed when the knob's value increases.

action_id_decrease str

The id of an action to be executed when the knob's value decreases.

Example#

name: "MyBinds"
app_name: "MyApp"
controller_name: "MyController"
description: "Optional description"
button_binds:
  - button_id: 1
    action_id: "action_1"
  - button_id: 2
    action_id: "action_2"
knob_binds:
  - knob_id: 3
    action_id_increase: "action_3"
    action_id_decrease: "action_4"