> For the complete documentation index, see [llms.txt](https://docs.auterion.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.auterion.com/hardware-integration/airframe-integration/esc-calibration.md).

# ESC Calibration

{% hint style="info" %}
Usually ESCs do not need calibration, in particular when the all digital DSHOT protocol is used. Only perform an ESC calibration if motors did not spool up smoothly during bench testing.
{% endhint %}

{% hint style="info" %}
Ensure that the ESCs support calibration: some ESCs, such as the **T-Motor Alpha**, don't support calibration and they need specific setup for minimum and maximum PWM.
{% endhint %}

{% hint style="info" %}
The procedure below assumes that the Dynamic Control Allocation is enabled in PX4.
{% endhint %}

## Wiring for ESC calibration

ESC calibration is typically done by sending the highest signal to the ESCs in the moment they are powered on, followed by the lowest signal. This method therefore requires that Skynode and the ESCs can be powered separately, as Skynode needs to be already running when the ESCs are powered on.

## ESC calibration procedure with Dynamic Control Allocation

{% hint style="danger" %}
**Warning**: always remove propellers before starting an ESC calibration.
{% endhint %}

1. Connect the first power module to power input 1 (PWR1) of Skynode. Make sure the ESCs are not connected to the power module.
2. Provide power to the power input 1 through the power module. The ESC remain unpowered
3. Connect AMC
4. Enable [AMC Advanced Mode](/hardware-integration/flight-controller-customization/amcs-advanced-mode.md)
5. Navigate to **Vehicle Setup - Actuators**
6. Set the **Disarmed** value of the channels you need to calibrate to the minimum PWM value (usually **1000 us**)
7. **Enable the Sliders**
8. **Set the proper slider (or all of them) to the max value**
9. Connect the **ESCs** to the power module.
10. Wait a couple of seconds
11. **Set the proper slider (or all of them) back to the initial position.**
12. Wait until the **ESCs** finish beeping.
13. Set the **Disarmed** value of the channels back to the previous value (usually **900 us**)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.auterion.com/hardware-integration/airframe-integration/esc-calibration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
