Animation File Format

The animation files are YAML format and can be edited with any text editor (Notepad, Notepad++, Sublime Text, Visual Studio Code, etc.)

version: 1
my_id: [network_id_t]
duration: [uint]
duration_unit: [time_unit_t]
cooldown: [uint]
cooldown_unit: [time_unit_t]

Keyframes

keyframes:
  [ordered list of keyframes]

Keyframe

Close Relay

- action: close_relay
  output_id: [uint]
  time: [uint]
  time_unit: [time_unit_t]
  duration: [uint]
  duration_unit: [time_unit_t]

Send Network Trigger

- action: network_trigger
  time: [uint]
  time_unit: [time_unit_t]
  trigger_id: [uint]
  other_id: [network_id_t]

Custom Types

time_unit_t

Text representation of a supported time unit. Support time units include:

Valid Text Values Canonical Value
'ms', 'milliseconds' milliseconds
's', 'sec', 'second', 'seconds' seconds
's', 'sec', 'second', 'seconds' seconds
'm', 'min', 'minute', 'minutes' minutes
'h', 'hr', 'hour', 'hours' hours
'd', 'day', and 'days' days

network_id_t

uint value uniquely representing the controller on the network. These are burned into each controller during manufacturing and cannot be changed. You can usually find these in the controller's log file or its own animation files.

Cautions

Because the controller has limited resources it does not implement a full YAML parser. Most advanced YAML features are not available and it makes assumptions about how things are formatted. Do not modify the structure of the file even if it is syntactically the same according to the YAML standard.