shows (example config files)

Machine config examples

Here are some example machine-wide config files that show real-world examples of how these configs are used.

Note that there are multiple machine config examples here. They’re just included to show different options. You wouldn’t actually use more than one.

#config_version=5
lights:
  light:
    number: 1
  led_01:
    number:
  led_02:
    number:
  light_01:
    number:
  light_02:
    number:
  gi_01:
    number:
  gi_02:
    number:


shows:
  my_show1:
    - duration: -1
      lights:
        light: red
  my_show2:
    - duration: -1
      lights:
        light: blue

show_player:
  play_show_sync_ms1:
    my_show1:
      key: sync_show
      sync_ms: 250
  play_show_sync_ms2:
    my_show2:
      key: sync_show
      sync_ms: 250
  stop_show:
    sync_show: stop
#config_version=5

modes:
  - mode1
  - mode2
  - mode3
  - mode4

lights:
    led_01:
        number: 0
        tags: tag1, row0
    led_02:
        number: 1
        tags: tag1, row0
    led_03:
        number: 2
    led_04:
        number: 3
    light_01:
        number: 0
        label: Test 0
        tags: tag1
        subtype: matrix
        debug: True
    light_02:
        number: 1
        label: Test 1
        tags: tag1
        subtype: matrix
        debug: True
    light_03:
        number: 2
        label: Test 1
        fade_ms: 1s
        subtype: matrix
        debug: True
    gi_01:
        number: 0
        subtype: gi
    flasher_01:
        platform: drivers
        number: flasher_01

coils:
    coil_01:
        number: 1
        default_pulse_ms: 30
    flasher_01:
        number: 2
        label: Test flasher
        default_pulse_ms: 40
        max_hold_power: 1.0

shows:
  leds_name_token:
    - time: 0
      lights:
        (leds): red
  leds_color_token:
    - time: 0
      lights:
        led_01: (color1)
    - time: +1
      lights:
        led_02: (color2)
    - time: +1
  leds_extended:
    - time: 0
      lights:
        (leds):
          color: red
          fade: 1s
  lights_basic:
    - time: 0
      lights:
        (lights): ff
  multiple_tokens:
    - time: 0
      lights:
        (leds): blue
        (lights): ff
  show_assoc_tokens:
    - time: 0
      lights:
        (line1num): (line1Color)
  show_with_time_and_duration:
    - time: +1s
    - time: 5s
    - time: +1s
      duration: 1s
    - lights:
        led_02: red
    - time: 10s
      duration: 3s
  leds_color_token_and_fade:
    - time: 0
      lights:
        led_01: (color1)
    - time: +1
      lights:
        led_02: (color2)-f900ms
    - time: +1
  manual_advance:
    - duration: -1
      lights:
        (leds): red
    - duration: -1
      lights:
        (leds): lime
    - duration: -1
      lights:
        (leds): blue
  event_show:
    - duration: 1
      events:
        - step1
    - duration: 1
      events:
        - step2
    - duration: 1
      events:
        - step3

show_player:
  play_on_led1:
    on:
      key: on_led_01
      show_tokens:
        lights: led_01
  play_on_led2:
    on:
      key: on_led2
      show_tokens:
        lights: led_02
  stop_on_led1:
    on_led_01: stop
  stop_on_led2:
    on_led2: stop
  play_test_show1: test_show1
  play_with_priority:
    test_show1:
      priority: 15
  play_with_speed:
    test_show1:
      speed: 2
  play_with_start_step:
    test_show1:
      start_step: 2
  play_with_neg_start_step:
    test_show1:
      start_step: -2
  play_with_loops:
    test_show1:
      loops: 2
  play_with_sync_ms_1000:
    test_show1:
      sync_ms: 1000
  play_with_sync_ms_500:
    test_show1:
      sync_ms: 500
  play_with_manual_advance:
    test_show1:
      manual_advance: True
  pause_test_show1:
    test_show1:
      action: pause
  resume_test_show1:
    test_show1:
      action: resume
  stop_test_show1:
    test_show1: stop
  play_show_assoc_tokens:
    show_assoc_tokens:
      speed: 1
      show_tokens:
         line1num: tag1
         line1color: red
  stop_show_assoc_tokens:
    show_assoc_tokens:
      action: stop
  test_mode_started:
    8linesweep:
      loops: 0
      speed: 1
      show_tokens:
         line1num: row0
         line1color: red
         line2num: row1
         line2color: orange
         line3num: row2
         line3color: yellow
         line4num: row3
         line4color: green
         line5num: row4
         line5color: blue
         line6num: row5
         line6color: indigo
         line7num: row6
         line7color: violet
         line8num: row7
         line8color: midnightblue
  test_mode_stopped:
    8linesweep:
      action: stop
  play_manual_advance:
    manual_advance:
      show_tokens:
        leds: led_01
  advance_manual_advance:
    manual_advance: advance
  advance_manual_step_back:
    manual_advance: step_back
  queue_play:
    event_show:
      block_queue: True
      action: play
      loops: 0
  play_with_emitted_events:
    test_show1:
      events_when_played: test_show1_played, test_show1_played2
      events_when_stopped: test_show1_stopped
      events_when_looped: test_show1_looped
      events_when_paused: test_show1_paused
      events_when_resumed: test_show1_resumed
      events_when_advanced: test_show1_advanced
      events_when_stepped_back: test_show1_stepped_back
      events_when_completed: test_show1_completed
  stop_emitted_events_show:
    test_show1: stop
  pause_emitted_events_show:
    test_show1: pause
  resume_emitted_events_show:
    test_show1: resume
  advance_emitted_events_show:
    test_show1: advance
  step_back_emitted_events_show:
    test_show1: step_back
  play_with_completed_event:
    test_show1:
      events_when_completed: test_show1_completed
      events_when_stopped: test_show1_stopped
      loops: 0
  play_show_with_token_in_key:
    test_show_key_token:
      show_tokens:
        num: "01"
        color: red

Mode config examples

Here are some example mode config files that go along with the machine-wide config above.

Note that there are multiple mode config examples here. You might not necessarily use more than one in your machine.

#config_version=5
mode:
  priority: 100
  game_mode: False

show_player:
  test_token:
    test_show4:
      show_tokens:
        fade_time: 100

shows:
  test_show4:
    - lights:
        led_01:
          color: red
          fade: (fade_time)
#config_version=5
mode:
  start_events: start_mode1
  stop_events: stop_mode1
  priority: 200
  start_priority: 1
  game_mode: False
  stop_on_ball_end: false

show_player:
  mode_mode1_started:
    test_show1:
      loops: -1

  mode_mode1_stopped:
    test_show1:
      action: stop
  "{machine.test == 42}": show_from_mode

shows:
  show_from_mode:
    - time: 0
      lights:
        (leds): red
    - time: 1
#config_version=5
mode:
  start_events: start_mode2
  stop_events: stop_mode2
  priority: 300
  start_priority: 1
  stop_on_ball_end: false
  game_mode: False

show_player:
  mode_mode2_started: test_show2

  mode_mode2_stopped:
    test_show2:
      action: stop
#config_version=5
mode:
  start_events: start_mode3
  stop_events: stop_mode3
  priority: 100
  start_priority: 1
  stop_on_ball_end: false
  game_mode: False

show_player:
  mode_mode3_started: test_show3

  mode_mode3_stopped:
    test_show3:
      action: stop

Show file examples

Here are some example show files that go along with the above config(s).

Note that there are multiple shows here.

#show_version=5
- time: 0
  lights:
    (line1num): (line1color)
- time: +1s
  lights:
    (line1num): black
    (line2num): (line2color)
- time: +1s
  lights:
    (line2num): black
    (line3num): (line3color)
- time: +1s
  lights:
    (line3num): black
    (line4num): (line4color)
- time: +1s
  lights:
    (line4num): black
    (line5num): (line5color)
- time: +1s
  lights:
    (line5num): off
    (line6num): (line6color)
- time: +1s
  lights:
    (line6num): off
    (line7num): (line7color)
- time: +1s
  lights:
    (line7num): off
    (line8num): (line8color)
- time: +1s
  lights:
    (line8num): off
- time: +1s
#show_version=5
- time: 0
  flashers: flasher_01
- time: 1
  coils:
      coil_01: pulse
- time: 2
  coils:
      coil_01:
          pulse_power: .45
- time: 3
#show_version=5
- duration: -1
  shows:
    mychildshow:
      speed: 1
      loops: 0
#show_version=5
- time: 0
  events:
    test_event:
    test_event2:
    play_sound: {"sound": "test_1", "volume": 0.5, "loops": -1}
- time: 1
  events:
    play_sound: {"sound": "test_2"}
- time: 2
  events:
    play_sound: {"sound": "test_3", "volume": 0.35, "loops": 1}
- time: 3
#show_version=5
- duration: -1
  lights:
    led_(num): (color)
#show_version=5
- time: 0
  lights:
    led_01: 006400
    led_02: CCCCCC
    light_01: CC
    light_02: 78
    gi_01: FF
- time: 1
  lights:
    led_01: DarkGreen
    led_02: Black
- time: 2
  lights:
    led_01: DarkSlateGray
    led_02: Tomato
    light_01: FF
    light_02: 33
    gi_01: 99
- time: +1
  lights:
    led_01: MidnightBlue-f500 ms
    led_02: DarkOrange-f0.5 s
    gi_01: 33
- time: 4
  lights:
    led_01: Off-f800
    led_02: Off-f800
    light_01: 00-f800
    light_02: 00-f800
    gi_01: 00
- time: 6
#show_version=5
- time: 0
  events: test