For AI agents: the Markdown edition of this page is index.md; the site index for agents is llms.txt.
Motion control in any .NET language.
Direct Motion makes the servo amplifiers, the IO boards and the .NET library that run a machine from one Windows PC. Machine tools, automation cells, robots, test rigs: anything with motors. The machine software is an ordinary .NET program, in C#, VB.NET, F# or whichever .NET language you already use. You write it, or your AI assistant does.
.NET + Direct Motion = any motion-control application, running
// The whole stack from your side: open the control, add an axis, start, move.
var control = DMControl.GetNewControl("MyMachine");
var x = control.GetDMAxis("X");
control.MainMotion.AddSerialLink(x);
control.PostAddedDevices(); // the 20 kHz loop starts here
control.MainMotion.LockAllAxis();
control.StopHard = false;
x.RemovePower = false; // power the motor
x.JogToLocationAndWaitForDecel(10.0 * x.MultiplyFactor, feed: 200); // to 10.0, at 200 units/min
Console.WriteLine($"X is at {x.ActualAxisPosition}");
Why builders choose it
One program, not three
No PLC to program, no drive to configure with a vendor tool, no HMI runtime. Your .NET program is the machine: motion, IO, screens, logging, networking. One debugger, one source tree, one set of tests.
The hard real time is done
The servo loop runs at 20,000 cycles a second inside DM's kernel driver. Your code calls a library and never has to be real-time itself. A look-ahead planner feeds the driver.
AI assistants already speak .NET
Claude, Copilot and the rest have read more C# and .NET than any human ever will. They have read almost no ladder logic. This site gives them the rest: the API, the specs and the rules, in a form they can use.
Motors set themselves up
Pick the motor from a catalog of 1,180, or type its nameplate. One-touch setup finds the commutation, measures what the catalog does not know, and tunes the loop. Field-oriented control is standard.
You can see what happened
Every axis keeps a 20 kHz record of position, following error, phase currents, bus voltage and faults. When something goes wrong, you, your AI or DM can read exactly what the machine did.
Direct access to the people who wrote it
DM is a small company. The engineers who built the hardware and the library answer the questions. The library is maintained and extended for new customers' machines.
What people build with it
Machine tools
Mills, lathes, routers and special machines, 3 to 5 axes, spindles to the 300 A drive. DM's control has run production machine tools since 2005. More →
Factory automation
Conveyors, indexing tables, pick-and-place, cut-to-length, press-fit, packaging. Speed control, moves, sensors and outputs in one program. More →
Robots
Cartesian and gantry robots are ordinary coordinated axes. For arms, your code supplies the kinematics and the planner applies them every 50 µs. More →
Test rigs and stages
Motor test stands, endurance rigs, positioning stages. Every test leaves a 20 kHz trace. More →
What it is not
A DM system needs a Windows PC. It is not a PLC, it does not speak EtherCAT to other makers' drives, and it has no safety rating of its own. The motors must be 3-phase AC servo or induction motors with an encoder DM can read. If any of that rules you out, we would rather you knew now. The fit, in detail →
Built so that an AI can do the work
Every page here has a longer edition written for AI agents, in plain Markdown, with the API, the numbers and the rules an AI needs to check whether DM fits your machine and to draft the software. If you use an AI assistant, try: "Read directmotion.com/llms.txt and tell me whether Direct Motion could run my machine." How this works →
4C: CAD, CAM, CNC and CMM in one program, with an AI at the keyboard
4C is DM's design-to-cutting program: design the part, plan the toolpaths, run the machine and measure the result with a touch probe, in one window. An AI assistant connects to it over MCP and builds real, editable features in the design tree, then plans the toolpaths and simulates the cut. About 4C →