Stirring not switching on without manual intervention?

Hi there,

The last couple of times I ran an experiment profile on my cluster, it seemed that the stirring protocol was not running as intended. For context, I am growing my cultures without stirring, with the intention of only switching on stirring every hour in order to mix the solution to allow OD readings and to equilibrate the temperature. (Unfortunately I am constrained to not stirring throughout the experiment as I’m trying to match other protocols in the lab)

I’m guessing that the stirring doesn’t start automatically because;

  • I observed that the ODs read as 0 (i.e. no mixing so sank to bottom) unless I manually start stirring and measuring OD when I’m sure the rpm is running, at which point the OD goes up immediately.
  • I also don’t see the temperature monitoring react the way I would expect if stirring was happening every hour (i.e. would expect it to drop down as the solution at the top mixes with the hotter solution near to the PCB at the bottom). Instead I see a flat line for most of the time.

I’m new to writing in YAML - so I’m wondering if it’s simply a problem with my experiment profile? I’ve included it below:

common:
  jobs:
    temperature_automation:
      actions:
        - type: start
          t: 0s
          options:
            automation_name: thermostat
            target_temperature: 38
        - type: repeat
          t: 900s
          every: 900s
          actions:
              - type: start
                t: 0s
                options:
                  automation_name: thermostat
                  target_temperature: 38
 
pioreactors:
  worker04:
    jobs:
      stirring:
        actions:
          - type: start
            t: 0s
            options:
              target_rpm: 500
          - type: stop
            t: 60s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 0s
                options:
                  target_rpm: 500
              - type: stop
                t: 60s
      od_reading:
        actions:
          - type: start
            t: 45s
          - type: stop
            t: 60s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 45s
              - type: stop
                t: 60s
 
  worker05:
    jobs:
      stirring:
        actions:
          - type: start
            t: 0s
            options:
              target_rpm: 250
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 0s
                options:
                  target_rpm: 250
              - type: stop
                t: 30s
      od_reading:
        actions:
          - type: start
            t: 15s
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 15s
              - type: stop
                t: 30s
 
  worker06:
    jobs:
      stirring:
        actions:
          - type: start
            t: 0s
            options:
              target_rpm: 250
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 0s
                options:
                  target_rpm: 250
              - type: stop
                t: 30s
      od_reading:
        actions:
          - type: start
            t: 15s
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 15s
              - type: stop
                t: 30s
 
  worker07:
    jobs:
      stirring:
        actions:
          - type: start
            t: 0s
            options:
              target_rpm: 500
          - type: stop
            t: 60s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 0s
                options:
                  target_rpm: 500
              - type: stop
                t: 60s
      od_reading:
        actions:
          - type: start
            t: 45s
          - type: stop
            t: 60s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 45s
              - type: stop
                t: 60s
 
  worker08:
    jobs:
      stirring:
        actions:
          - type: start
            t: 0s
            options:
              target_rpm: 250
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 0s
                options:
                  target_rpm: 250
              - type: stop
                t: 30s
      od_reading:
        actions:
          - type: start
            t: 15s
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 15s
              - type: stop
                t: 30s
 
  worker09:
    jobs:
      stirring:
        actions:
          - type: start
            t: 0s
            options:
              target_rpm: 250
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 0s
                options:
                  target_rpm: 250
              - type: stop
                t: 30s
      od_reading:
        actions:
          - type: start
            t: 15s
          - type: stop
            t: 30s
          - type: repeat
            t: 1h
            every: 1h
            actions:
              - type: start
                t: 15s
              - type: stop
                t: 30s