TTL Triggered State ChangeΒΆ

Switches states when a TTL pulse arrives on TTL input 1.

../../_images/bnc_triggered_state_change__light.svg ../../_images/bnc_triggered_state_change__dark.svg
 1from bpod_core.fsm import StateMachine
 2
 3fsm = StateMachine()
 4
 5fsm.add_state(
 6    name='Port1Light',
 7    timer=1,
 8    transitions={'TTLIn1_High': 'Port2Light'},
 9    actions={'PWM1': 255},
10)
11fsm.add_state(
12    name='Port2Light',
13    timer=1,
14    transitions={'Tup': '>exit'},
15    actions={'PWM2': 255},
16)
 1{
 2  "states": {
 3    "Port1Light": {
 4      "timer": 1.0,
 5      "transitions": {
 6        "TTLIn1_High": "Port2Light"
 7      },
 8      "actions": {
 9        "PWM1": 255
10      }
11    },
12    "Port2Light": {
13      "timer": 1.0,
14      "transitions": {
15        "Tup": ">exit"
16      },
17      "actions": {
18        "PWM2": 255
19      }
20    }
21  }
22}
 1states:
 2  Port1Light:
 3    timer: 1.0
 4    transitions:
 5      TTLIn1_High: Port2Light
 6    actions:
 7      PWM1: 255
 8  Port2Light:
 9    timer: 1.0
10    transitions:
11      Tup: '>exit'
12    actions:
13      PWM2: 255