Core Architecture

Math on the Laptop. Execution on the Node.

Commercial systems force hardware to do real-time math over Bluetooth, which causes drift and lag. OpenMotionFX separates the thinking from the doing. We compile the exact motor steps on your computer first, then send them to the hardware to simply execute.

The Sync Protocol

Wi-Fi carries plans, never motion.

Wi-Fi is inherently unstable. If your router stutters while streaming live telemetry, your camera crashes into the talent. To fix this, OpenMotionFX uses a Local-First Broadcast Architecture.

1. The Handshake

You design a move in the Conductor app. The app slices that move into thousands of precise motor steps and sends a JSON payload over Wi-Fi to every node (Pan, Tilt, Slider, Lights).

2. Local Storage

Every node receives its specific payload and stores it in its local flash memory. The nodes then report back to the Conductor app: "Payload received and verified. Standing by."

3. Arming & Homing

When you click "Arm," the modules travel to their start positions, calibrate against their hard-stops, and lock their motors. They are now completely independent of network traffic.

4. The GO Beacon

The Conductor broadcasts a tiny, single UDP packet: "GO." Because the moves are already loaded in memory, every node starts ticking its own internal hardware timer simultaneously. Even if the router dies mid-take, the move finishes perfectly.

VFX Pipeline

The `.omfx` Move File

OpenMotionFX doesn't just execute moves; it records them. Every take generates a standardized package containing the exact spatial transforms of the camera, lens data, and active lighting cues.

This bridges the physical and virtual sets. No more guessing sensor sizes or focal lengths in post-production. You drag the `.omfx` file directly into Blender or Unreal Engine, and a virtual camera is generated that identically mimics the physical rig.