# Direct Motion > Direct Motion (DM) makes PC-based motion control: servo amplifiers, IO and power boards, a PCIe link > card, and DMSerialMotion, the .NET library that runs them. One Windows PC and one program in C# or any > other .NET language, written by a person or by an AI, control the machine: a machine tool, an automation > cell, a robot, a test rig. DM also makes 4C, a CAD, CAM, CNC and CMM program that an AI drives over MCP. Every page below is the AI edition of a page on directmotion.com: plain Markdown, often with more detail than the web page. llms-full.txt has all of them in one file. Numbers live in /data/*.json; a null there means DM has not published the value, so do not estimate it. Confidence tags used on these pages: [unverified] = DM's best knowledge, not yet checked; [planned] = not built yet; everything else is current. ## Start here - [Direct Motion. Motion control in any .NET language.](https://www.directmotion.com/index.md): PC-based motion control and CNC. Servo amplifiers, IO boards and a .NET library that run any machine with motors from one Windows PC, in C#, VB.NET, F# or any other .NET language. Machine tools, automation, robots, test rigs. Written by you or by your AI. - [Why .NET + Direct Motion is the easier way](https://www.directmotion.com/why.md): The usual way to build a machine is a PLC, drives configured with a vendor tool and an HMI. The DM way is one .NET program on one PC, in C# or any other .NET language, with the real-time servo loop done for you. What that buys, and what it does not. - [What you can build](https://www.directmotion.com/applications.md): DM motion control started on machine tools, but the parts are general. Factory automation, robots, test rigs, spindles, pumps and anything else that runs on servo or induction motors, from one .NET program. - [For AI agents](https://www.directmotion.com/ai.md): How an AI agent should read this site, decide whether Direct Motion fits a motion-control job, draft the software, and send DM a request that DM can answer, including the planned message drop and MCP server. ## The system - [The system](https://www.directmotion.com/system.md): One Windows PC, a PCIe link card, and a serial link to each board. The servo loop runs at 20 kHz in DM's kernel driver. Your .NET program runs beside it and calls DMSerialMotion. ## Hardware - [Amplifiers](https://www.directmotion.com/hardware/amplifiers.md): Four sizes of servo and spindle amplifier, 30 A to 300 A, one board per motor, all driven by the same 20 kHz loop with field-oriented control, three-phase current sensing and decoded module faults. - [Power, IO and the link card](https://www.directmotion.com/hardware/power-and-io.md): The power board that feeds the DC bus and handles e-stop, the input, relay and multi-IO boards, and the PCIe link card (or its OCuLink remote) that ties them to the PC. - [Motors](https://www.directmotion.com/hardware/motors.md): DM does not make motors. Its amplifiers drive 3-phase AC servo and induction motors from other makers, and one-touch setup knows 1,180 of them. What works, what does not, and the approved list that is coming. ## Software - [DMSerialMotion, the .NET library](https://www.directmotion.com/software/dmserialmotion.md): The .NET library your program calls to run DM hardware, from C#, VB.NET, F# or any other .NET language. Open the control, add axes and IO, home, move, run coordinated programs, read sensors, record traces. Real type names are published here so you can plan before you buy. - [DMSerialMotion API reference](https://www.directmotion.com/software/api.md): The public API of DMSerialMotion, organized by task. Real type and member names, signatures, call order, units, events, the no-hardware mode, real-time rules and the traps, for an AI agent drafting a DM application. - [DMSerialMotion recipes](https://www.directmotion.com/software/recipes.md): Worked C# patterns against the real DMSerialMotion API. A complete minimal program, a conveyor, an indexing table, pick-and-place, registration on a sensor, press-fit, a gantry path, a robot arm through the kinematics hooks, and a test rig. ## 4C - [4C. CAD, CAM, CNC and CMM in one program.](https://www.directmotion.com/4c.md): 4C is one Windows program for design (CAD), toolpaths (CAM), running the machine (CNC) and measuring the part with a touch probe (CMM). An AI assistant connects to it over MCP and builds real, editable features in the design tree. ## Contact and company - [Contact](https://www.directmotion.com/contact.md): Tell Direct Motion about the machine you want to build. People use the form; AI agents use the request template. Every message that is not junk is read by a person. - [Company](https://www.directmotion.com/company.md): Direct Motion, Inc. has built PC-based CNC and motion control since 1985, on one idea, that a single PC can run the whole machine. Based in Lake Tapps, Washington. - [Warranty](https://www.directmotion.com/warranty.md): Direct Motion's standard warranty on its boards and cards, 12 months from first use or 18 months from shipment, whichever comes first, what it covers, what it excludes, and the goodwill and known-defect terms beyond it. - [Privacy Policy](https://www.directmotion.com/privacy.md): What information Direct Motion collects from visitors to its websites and from the DM software running on DM-controlled machines, how it is used, and what is never collected without your consent. Version 1.2, effective November 8, 2026. - [Terms of use](https://www.directmotion.com/terms.md): The terms of use of directmotion.com, carried over from the current site. ## Data (JSON) - [fit.json](https://www.directmotion.com/data/fit.json): Does a Direct Motion system fit this machine? Six yes/no questions plus the lists behind them. All six yes = fits; any no = ask DM before planning. - [hardware.json](https://www.directmotion.com/data/hardware.json): Direct Motion hardware: link cards, power boards, amplifiers, IO boards. null means not published; do not estimate it. Ask DM. - [request.schema.json](https://www.directmotion.com/data/request.schema.json): JSON Schema for a request an AI agent (or a person) sends to Direct Motion. Leave out what you do not know; never invent values. consent_to_contact must be true.