# STEPFOC Manual

![STEPFOC driver](https://docs.source-robotics.com/STEPFOC-docs/108/assets/STEPFOC.webp)

<div class="doc-meta" markdown>

**Document number:** SR-5001

**Firmware version:** 108

**Revision:** 2026.A

**Published:** 2026-11-03

**Applies to:** STEPFOC driver PCB v1, firmware 108

*Original instructions*

</div>

[Quick start](https://docs.source-robotics.com/STEPFOC-docs/108/quick-start/) [About this manual](https://docs.source-robotics.com/STEPFOC-docs/108/about/)

Source Robotics d.o.o. publishes this document for the STEPFOC stepper driver. It is revised as the product and
its firmware change; the document number, firmware version, revision and date above identify the version you are
reading, and the document history on the About page says what changed. Take care that the firmware version named
under *Applies to* matches what `#Info` reports on your driver: the version selector in the header switches
between firmware releases. The text and the images are licensed CC BY-SA 4.0, the code examples MIT.

<div class="gripper-viewer" data-base="assets/models/stepfoc/" markdown="0">
  <canvas class="gripper-viewer__canvas" aria-label="The STEPFOC driver in 3D: drag to turn, scroll to zoom"></canvas>
  <div class="gripper-viewer__controls">
    <button type="button" name="reset" class="md-button">Reset view</button>
  </div>
  <p class="gripper-viewer__hint">Drag to turn the board, scroll to zoom. The model is the board's STEP file from the <a href="https://github.com/Source-Robotics/STEPFOC-stepper-controller/tree/main/STEP%20files">repository</a>, the PCB and everything mounted on it.</p>
</div>

<div class="grid cards" markdown>

-   :material-rocket-launch: **Quick start**

    ---

    [One page](https://docs.source-robotics.com/STEPFOC-docs/108/quick-start/) from the box to a calibrated motor that follows commands, through Motor GUI or the
    terminal, with a link into the manual at every step.

-   :material-book-open-variant: **The manual**

    ---

    [Safety](https://docs.source-robotics.com/STEPFOC-docs/108/02-safety/), [Technical data](https://docs.source-robotics.com/STEPFOC-docs/108/03-technical-data/), [Mounting and wiring](https://docs.source-robotics.com/STEPFOC-docs/108/04-mounting/),
    [First setup](https://docs.source-robotics.com/STEPFOC-docs/108/05-setup/), [Operation](https://docs.source-robotics.com/STEPFOC-docs/108/06-operation/), [Firmware](https://docs.source-robotics.com/STEPFOC-docs/108/07-firmware/),
    [Troubleshooting](https://docs.source-robotics.com/STEPFOC-docs/108/08-troubleshooting/).

-   :material-monitor-dashboard: **Motor GUI**

    ---

    The usual way to set up and test: [the tool](https://docs.source-robotics.com/STEPFOC-docs/108/05-setup/motor-gui/) and [working in it](https://docs.source-robotics.com/STEPFOC-docs/108/06-operation/motor-gui/)
    — connect, calibrate, tune with live plots, record telemetry, update the firmware.

-   :material-code-braces: **API reference**

    ---

    Every [CAN message](https://docs.source-robotics.com/STEPFOC-docs/108/reference/can/) and [UART command](https://docs.source-robotics.com/STEPFOC-docs/108/reference/uart/), the
    [defaults](https://docs.source-robotics.com/STEPFOC-docs/108/reference/defaults/), the [errors](https://docs.source-robotics.com/STEPFOC-docs/108/reference/errors/) and the [Python library](https://docs.source-robotics.com/STEPFOC-docs/108/reference/python/),
    read from the firmware.

-   :material-school: **Learn**

    ---

    [Guides](https://docs.source-robotics.com/STEPFOC-docs/108/guides/) with code, the [bootloader](https://docs.source-robotics.com/STEPFOC-docs/108/07-firmware/the-bootloader/), and the
    [theory corner](https://docs.source-robotics.com/STEPFOC-docs/108/appendix/theory/) on FOC, the cascade and impedance control.

</div>
