Orion — motorized winch

Orion is a DMX-controlled kinetic fixture: a TMC2209-driven winch (LED Lifter v5 board) with sensorless homing, an adaptive stall-detection calibration wizard, and optional LED outputs rendered alongside the motor. Status: alpha — running in a real installation on LED Lifter v5 hardware.

Safety first. Orion moves loads overhead. RavLight provides stall detection, soft limits and watchdogs, but rigging, load ratings and safeties are the operator's responsibility. Never stand under a moving load, and always use secondary suspension where people are below.

Motor stack

A TMC2209 driver, configured over single-wire UART, with step generation by FastAccelStepper. Homing is sensorless: StallGuard4 reads the motor's back-EMF load signal, so the winch finds its home position by gently driving into the mechanical stop — no endstop switch required. Mechanical calibration (drum diameter, steps per revolution, gear ratio) converts steps to real distance, with a cm/inch selector in the UI.

Setup wizard

A guided 7-step wizard in the fixture section walks a new rig from zero to calibrated:

  1. Mechanical — drum diameter, steps/rev, gear ratio.
  2. Motor electrical — run/hold currents and speed/acceleration limits.
  3. Homing direction — which way is "toward home" for your rig.
  4. Home position — manual-first: jog to the reference point and set it, before trusting sensorless homing.
  5. Travel limits — soft limits the motor will never cross.
  6. Profile sweep — automatic StallGuard characterization (below).
  7. Safety — watchdog and recovery behavior.

StallGuard profile sweep

StallGuard readings vary with speed and direction, so a fixed threshold either misses real stalls or trips on phantom ones. The sweep runs the motor through 8 speed bins × 2 directions, records the load signal profile, and auto-derives an operational stall threshold. A confidence selector sets how many standard deviations of margin you want — from Aggressive (2σ) for fast stall response to Very tolerant (5σ) for mechanically noisy rigs that would otherwise false-trigger.

Operating options

DMX control

Personalities of 4–6 channels: position in 8-bit or 16-bit (coarse + fine) flavors, plus speed, acceleration and a function channel (home, e-stop, clear fault and similar commands triggered from the console). Position maps between the calibrated travel limits.

DMX-loss watchdog

If the DMX source disappears (per-universe detection), Orion executes a configured action: e-stop, return home, or do nothing (hold position). Pick per installation — a hanging prop over a stage wants different behavior than a warehouse test bench.

Optional LED outputs

The LED Lifter v5 board exposes 4 optional pixel outputs (GPIO 4, 5, 15, 16) rendered Elyon-style alongside the motor — a lit element on the moving load, driven from the same universe pool. Board details on the boards page.