embeint.htf
Open HTF
Station runtime

Multiple lanes

Run independent programmers on one jig and coordinate shared DUT steps.

A station can define multiple lanes when a jig has more than one programmer. Each lane has a named programmer and its own stage plan. HTF can show progress for each lane while keeping the work attached to the same DUT run.

The station repository's two simulated programmer sample uses this shape:

programmers:
  - name: ble_programmer
    kind: simulated
  - name: cellular_programmer
    kind: simulated

lanes:
  - name: ble
    programmer: ble_programmer
  - name: cellular
    programmer: cellular_programmer

plans:
  - lane: ble
    stages:
      - name: Flash BLE application
        kind: simulated_programmer
        message: flashing BLE application
  - lane: cellular
    stages:
      - name: Flash modem firmware
        kind: simulated_programmer
        message: flashing modem firmware

Each lane must use a different programmer. Where one action depends on another lane, declare the prerequisite on the dependent stage:

- name: Flash validation firmware
  kind: simulated_programmer
  message: flashing validation firmware
  after:
    - lane: ble
      stage: Flash BLE application
      outcome: passed

The dependent stage waits for the named BLE stage to pass. Test the complete plan with simulated programmers before connecting real hardware, especially where stages share power, serial ports, or a DUT state.