# ESC configuration APP (AMC Manager v1.0.0)

{% hint style="info" %}
AMC Manager is an application for setting up, managing and testing the ESC. The application is built on the Qt platform, and communication with the ESC takes place via a serial port. AMC Manager runs on the host PC (Win/Linux).
{% endhint %}

#### Download and run the application

* [Download](https://github.com/airvolute/DroneCore.Suite/tree/main/DroneCore.Suite/DroneCore.Power/Applications/AMC_manager) the up-to-date application version according to your host PC operating system
* Unpack archive
* Run application
  * For Linux Host, open the terminal in the unpacked folder and execute `./AMC_Manager`
  * For Windows PC, open the unpacked folder and run AMC\_Manager.exe

## Application manual

***

## Control Panel

<details>

<summary><strong>Status area</strong></summary>

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-46c87f1b441d02d0ff049b28a9620823588dc090%2Fimage%20(12).png?alt=media" alt=""></div>

**Connection status**

* *Disconnected* - device is not connected to the app
* *Connected* - device is in service mode (motor identification is possible)
* *Running* - device is in operating mode
* *Flashing* - device is being updated

**COM port status**

* *Select port* - no connection to COM port
  * Manual selector
  * Auto select with AE Converter
* *Connecting* - establishing communication with the COM port
* *COM***x** - connected to COM port (with number '**x**')

<div align="left"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-4b447a4f6f2a4d15862583775f3d13bebc65c66c%2Fimage%20(1)%20(1)%20(1).png?alt=media" alt=""></div>

**Device status**

* *No device* - no device is connected
* *Device* **x** - connected device with address '**x**'
* *Non-init device* - unconnected device in bootloader mode
* FW version
  * **x**.**y**.**z** - '**x**' - major version, '**y**' - mid version, '**z**' - minor version
  * *Boot* - bootloader mode

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-fb5b740f8657b7871e111461d02f054621a3f8c3%2Fimage%20(2)%20(1).png?alt=media" alt=""></div>

</details>

<details>

<summary><strong>Setting area</strong></summary>

Tabs with settings, control and update are located in this area.

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-9cff7361ee9762adcb0eb94f4ef06b2d8bf2051a%2Fimage%20(3)%20(1).png?alt=media" alt=""></div>

**ESC Params**

* Setting ESC params

**Motor Params**

* Setting motor parameters and motor identification

**Control**

* Verification of ESC control via the application

**Firmware**

* ESC firmware update

</details>

<details>

<summary><strong>Sharing area</strong></summary>

This area is used to import and export the overall ESC settings from/to the motor. This area is disabled when the device is disconnected.

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-b61e7b16381ba8d88463856bbe6871c8c9d1350b%2Fimage%20(4)%20(1).png?alt=media" alt=""></div>

**Import params**

* Saving the image of the params of the ESC and the motor to a file

**Export params**

* Upload the settings image (motor included) to the ESC

</details>

## Operational Panel

### ESC Params

<details>

<summary><strong>PWM Input</strong></summary>

Setting the signal control ranges for ESC.

<div align="left"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-09cd59c4847a8182e19c59a7af0ba5706ee60dc5%2Fimage%20(5)%20(1).png?alt=media" alt=""></div>

**Pwm Type**

* One-way or two-way control
* Value: Unipolar or bipolar
* Predefined value = **Unipolar**

**Low Level**

* The lower limit of the PWM control range
* Value = <800; 1200> us, Step = 10 us
* Predefined value = **1000**

**Center Level**

* With bipolar PWM, the value changes direction
* Value = <1200; 1800>, Step = 10 us
* Predefined value = **1500**

**High Level**

* The upper limit of the PWM control range
* Value = <1800; 2200>, Step = 10 us
* Predefined value = **2000**

**Dead Zone**

* Just above the lower limit, where the motor still does not run
* Value = <50; 150>, Step = 10 us
* Predefined value = **50**

**Control Type**

* Desired quantity for control
* Value = Voltage or Speed (*not supported*)
* Predefined value = **Voltage**

**Speed Norm** (*not supported*)

* Number of motor revolutions at the upper PWM limit
* Value = Auto (0) or RPM (<0), Step = 10 RPM

**Scale** (*not supported*)

* ~~Adjust the voltage range to the PWM range~~
* ~~Value = Auto (0.0) or (0.0; 1.0>, Step = 0.01~~
  * ~~Auto - set according to bus voltage~~
  * ~~Manual - example~~
    * ~~Motor: KV = 800, MAx\_V = 4S = 4.2\_4 = 16.8V, Max\_RPM = 800\_16.8 = 13440 RPM~~
    * ~~Power supply: V = 6S = 4.2\_6 = 25.2V; Max\_RPM = 800\_25.2 = 20160 RPM => motor destruction~~
    * ~~Scale: 16.8/25.2 = 0.67 - Power supply range = 0.67\*25.2 = 16.8V~~
* Predefined value = **1.0**

**Analog Control**

* Measurement of duty in a signal with a frequency of 50Hz
* Communication method for using the **App Control**
* Predefined value = **False**

**Digital control**

* Duty in the form of proprietary communication protocol ADB Simple
* Communication method for using the **CAN bus**
* Predefined value = **True**
* Graph
  * Displays the power according to the current PWM setting

</details>

<details>

<summary><strong>Motion Parameters</strong></summary>

Setting parameters for adjusting the movement and dynamics of ESC

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-c5042555eab244fb27d58301571716f51740e868%2Fimage%20(6)%20(1).png?alt=media" alt=""></div>

**Acceleration** (*not supported*)

* Motor acceleration level
* Value = Min, Mid or Max

**Break** (*not supported*)

* Level of active braking of the motor generated by the control
* `Break Enable` must be activated
* Value = Min, Mid or Max

**Break Enable** (*not supported*)

* Active breaking is allowed

**Reverse Direction**

* Changing the direction of motor movement
* Predefined value = **False**

**Device Address**

* Address of the ESC device
* Value = <0;3> or fixed (Determined by HW configuration)

**Time to leave**

* The time during which, in the event of a signal failure, it holds the last setpoint
* Value = <150; 2000>, Step = 50 ms
* Predefined value = **150**

**Controller Kp**

* Setting the proportional component of controller
* Value = <0.0; 65.353>, Step = 0.001
* Predefined value = **0.7**

**Controller Ki**

* Setting the integral component of controller
* Value = <0.0; 65.353>, Step = 0.001
* Predefined value = **0.43**

</details>

<details>

<summary><strong>Data and errors</strong></summary>

Basic information from the ESC and handling errors of the ESC

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-b4cd2cbc0b2b8542ce9fed7172f4e4cf25606b41%2Fimage%20(7)%20(1).png?alt=media" alt=""></div>

**Get Errors**

* Read structure of errors and warnings from device
  * **All errors**
    * Every error and warning since the last cleaning, regardless of the power cycle
    * Contains:
      * Errors with the hexadecimal code
      * List of individual errors
      * Warnings with the hexadecimal code
      * List of individual warnings
  * **Previous Errors**
    * Every error and warning from the previous power cycle
    * Contains:
      * Errors with the hexadecimal code
      * List of individual errors
      * Warnings with the hexadecimal code
      * List of individual warnings
  * **Last Errors**
    * Every error and warning in the current power cycle
    * Contains:
      * Errors with the hexadecimal code
      * List of individual errors
      * Warnings with the hexadecimal code
      * List of individual warnings

**Clear Errors**

* Clear only the category All Errors from the device

**Get Data**

* Information about currents and temperatures from the last run
  * Max Temp ESC - maximum temperature of the ESC
  * Max Temp Motor - maximum temperature of the motor
  * Avg current - average current during the run
  * Max current - maximum current during the run

**Get Resist**

* Information about total resistance and phase resistance
  * Phase A - phase A resistance
  * Phase B - phase B resistance
  * Phase C - phase A resistance
  * Global - total resistance

</details>

***

### Motor Params

<details>

<summary><strong>Motor selection</strong></summary>

* Motor control on the ESC is conditioned by motor identification
* Identification **must be** performed for each **motor type**
* Identified params can be applied to all motors of the same type
* Identification **must be** performed when **changing motor params** (e.g., change of operating voltage)

**Motor selection**

* **New** motor
  * New **type** of motor
    * Motor must be identified - Add motor
  * New **piece** of motor
    * Unknown motor type (*new type of motor*)
      * Motor must be identified - Add motor
    * Known motor type (*motor type has already been identified*)
      * Individual motors of the same type may have minimal differences in parameters
        * Normal use - Neglecting minimal params differences
          * Select from motor list - Motor list
        * Special use - Elimination of minimal params differences
          * Motor identification - Add motor
* **Used** motor
  * Used locally (*this computer*)
    * Select from motor list - Motor list
  * Get from another place or restore
    * Load from file to motor list - Import motors
  * Share to another place or backup
    * Save to file from motor list - Export motors

</details>

<details>

<summary><strong>Identified motor list</strong></summary>

Contains a list of user-identified motors and the management of this list.

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-8738088b9904c01c6e287b3214f683f00efc1cac%2Fimage%20(8)%20(1).png?alt=media" alt=""></div>

**Actual motor type**

* Selected name from the list
  * Sets the selected motor from the list to the ESC as the actual motor
  * Non-existent motor is named `Unknown motor xx`

**Motor hours**

* Number of operating hours since the last motor change

**Motor list**

* List of identified and imported motors with creation time
* Motor name is local and user-defined
* Click on the header to sort the list

**Set motor**

* Setting a new actual engine from the list

**Rename motor**

* Rename the selected motor in the list

**Remove motor**

* Remove the selected motor from the list

**Info Motor**

* Information on motor identification parameters

**Import Motors**

* Imports motors from the file into the local database
* Merging options
  * *Overwrite* - Delete all motors in the list and use the new ones
  * *Append* - Add new ones to the list and use new ones in case of a name conflict
* File extension `.ms` (motor specification)

**Export Motors**

* Exporting motor from the local database to a file
* Options
  * *All* - Exports all motors from the list
  * *Selected* - Exports only a single selected motor (No selection = Disabled option)
* Contains: Motor Name, Creation Time and Motor Parameters
* File extension `.ms` (motor specification)

</details>

<details>

<summary><strong>Add motor</strong></summary>

Setting motor parameters to identify and enable this process

<div align="center"><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-85a5cb9b089e1c2f82d62c682b4c315706469658%2Fimage%20(9)%20(1).png?alt=media" alt=""></div>

**Max current**

* Maximum continuous current in A according to the motor datasheet

**Kv**

* Motor velocity constant in rpm/V according to the motor datasheet

**LiPo cells**

* Motor operating voltage expressed in LiPo cells (Full cell voltage = 4.2V)
* If the voltage is above the recommended range from the motor datasheet, it is necessary to use `Scale` in the PWM Input
* Example - Battery type: **6S** => LiPo cells: **6**

**Pole pairs**

* The number of pole pairs in the permanent magnet in the motor
* Example - **12P14N** => (use N number)/2 => Pole pairs: **7**
* Example - **10 poles** => poles/2 => Pole pairs: **5**
* Example - **11 pole pairs** => Pole pairs: **11**

**Identify motor**

* `Start of the motor identification process` with the parameters defined above

</details>

***

### Identification process

{% stepper %}
{% step %}
**Prepare identification**

* Fill motor params
* Identify motor

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-c793943d645129d224cc3a01cc062830aa052483%2Fimage%20\(10\)%20\(1\).png?alt=media)
{% endstep %}

{% step %}
**Warning - Attention**

The identification process must be under constant surveillance during its entire process.

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-1441f287d213d2a564d9fbf656add58ad8b0430e%2Fimage%20\(11\)%20\(1\).png?alt=media)
{% endstep %}

{% step %}
**Warning - No load motor**

The motor must be unloaded during process identification. Remove propellers, shaft, ...

<figure><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-2d2dc142b2de4445a0414ccb50500e0c4a38e50f%2Fimage%20(12)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Warning - Steps of identification**

* Details of individual identification steps

<figure><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-fba2809d465068e1cfc40114d8b845eb1448f7b0%2Fimage%20(13).png?alt=media" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Confirmation of readiness**

* Confirm previous warnings
  * Motor without load
  * Full concentration
  * Knowledge of all identification steps
* Start identification

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-003c2a8fd85cf4268d079d1188a7f87a9d7f3727%2Fimage%20\(14\).png?alt=media)
{% endstep %}

{% step %}
**Identification interface**

* Current step - Name of current identification step
* Help - Identification interruption in case of an error
* Warning label (*default hidden*) - Detection of a possible problem during identification - Please interrupt identification
* Progress bar - Progress in the current step
* Right behaviour - Expected action in the current step
* Errors - Errors that may occur in the current step
* Next step - Information about the next step
* Cancel - Identification interruption

<figure><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-56feca7c7a6a2211de0ec5c2574b641be6a9d0ad%2Fimage%20(15).png?alt=media" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**No movement step**

* Accelerates the motor from zero to constant speed
* Behavior
  * **Stopped** motor
  * Production of high-frequency noise
* Error
  * Stopped motor
    {% endstep %}

{% step %}
**Acceleration step**

* Accelerates the motor from zero to constant speed
* Behavior
  * **Spinning** motor
  * Motor speed **increase**
    {% endstep %}

{% step %}
**Variable speed step**

* Performs measurements while the motor is running, causing speed fluctuations
* Behavior
  * **Spinning** motor
  * Change in motor speed (increase and decrease), but not zero
* Error
  * Stopped motor
    {% endstep %}

{% step %}
**Deceleration step**

* Decelerates the motor from constant speed to zero
* Behavior
  * **Spinning** motor
  * Motor speed **decrease**
  * Too short a stage
  * May not display
* Errors
  * Stopped the motor on start
  * Spinning motor on end
    {% endstep %}

{% step %}
**Finish step**

* Identification is complete
* Process
  * **Stopped** the motor
  * Completed identification
* Error
  * Spinning motor
    {% endstep %}

{% step %}
**Save motor**

* Fill motor name
* Save the motor list and set as the actual motor type
  {% endstep %}

{% step %}
**Error (in case of error)**

**Interrupt identification - no warning label**

* Interruption without cause
  * Cancel and update params
  * Repeat identification with the same params
* Step Acceleration - without increasing speed
  * Probably bad params: Pole pairs or Kv
  * Cancel and update params
* Step Variable speed - motor stops spinning

  * Probably bad params: Low value of Max current
  * Cancel and update params

  ![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-eb3b8f1d520c303e2f944ef9ac0c521e30804814%2Fimage%20\(16\).png?alt=media)

**Interrupt identification - with a warning label**

* Perform adjustment of internal params by self-diagnostics
  * Correction of identification
* Step Acceleration - without increasing speed
  * Probably bad params: Pole pairs or Kv
  * Cancel and update params
* Step Variable speed - motor stops spinning

  * Probably bad params: Low value of Max current
  * Cancel and update params

  ![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-677ad157116e98cef7f025fb44e9893d1fa94807%2Fimage%20\(17\).png?alt=media)
  {% endstep %}
  {% endstepper %}

***

### Control

Control is used to verify ESC control with the motor through the application.

* Permitting conditions
  * PWM Input in `Analog control`
  * Allow the device to switch to status `Running`

<details>

<summary><strong>Telemetry</strong></summary>

Displays telemetry data from the device.

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-aec93c6807c8aead6bf984964a1ed1169ed340a9%2Fimage%20\(18\).png?alt=media)

**Telemetry quantities**

* Speed - Mechanical motor speed
* Vs - Motor voltage
* Vdc - Supply ESC voltage
* Power - Motor power
* Torque - Motor torque
* Is - Motor current
* Pwm - Pwm duty of control signal
* Rs - Global resistance
* Flux - Motor magnetic flux
* Temp - ESC temperature

**Graph**

* Displays two quantities simultaneously
* The quantity is plotted continuously, but it can be stopped

</details>

<details>

<summary><strong>Control</strong></summary>

Motor control over the control range <-100%, 100%>

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-20be5c456c8b8da0da83fc63ac323bbfb55118e2%2Fimage%20\(19\).png?alt=media)

Enable control

* Allows you to start motor control

Controller

* Start point 0%
* Boundary points - -100%, 100%
* Increment - 1%

Dead band

* Dead zone in the range around the starting point
* Very low speeds can make the motor standstill

</details>

***

## Firmware

Firmware update or upload via bootloader

Check this link for up-to-date firmware version for ESC: [Download link](https://github.com/airvolute/DroneCore.Suite/tree/main/DroneCore.Suite/DroneCore.Power/ESC_Firmware)

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-324c4203cc7d383c0fcabdd544d55c34ea6b31c7%2Fimage%20\(20\).png?alt=media)

***

### Update connected device

The firmware on the connected device is being updated

{% stepper %}
{% step %}
**Check device status**

**Connected**

* Suitable condition for continuing the update

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-0f63cfb9472529bbc312a1c863e5a36b73456f06%2Fimage%20\(21\).png?alt=media)

**Running**

* Perform a power cycle on the device
* Connect to the app

**Disconnected**

* With firmware
  * Power on the device
  * Connect to the app
* No firmware
  * Use Update via bootloader\\
    {% endstep %}

{% step %}
**Select the firmware file**

File with extension `.bin`
{% endstep %}

{% step %}
**Start update**

Press the `Update` button
{% endstep %}

{% step %}
**Updating**

Auto-connecting step

* The device is restarted
* Auto reconnect

Writing firmware step

* Write new Firmware to the ESC flash

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-b6460c2562ea8956e84169d13e69155b423d7753%2Fimage%20\(22\)%20\(1\)%20\(1\).png?alt=media)
{% endstep %}

{% step %}
**Successful update**

Start the device with the new firmware

<figure><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-d319f85f7f8a6721ee3f1604d51b62270075403e%2Fimage%20(27).png?alt=media" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

***

### Update via bootloader

The device in bootloader mode is used for updating

{% stepper %}
{% step %}
**Check the device state**

* Device must be powered off
* *Device controlled via esc\_configuration\_app in Jetson, the power off is achieved by the next (or first) step in the application*

<figure><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-1d8d1951fbdacce2688a80a518f8b8cd22f3e4ea%2Fimage%20(24).png?alt=media" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Connected to Alink**

Connect the device via Alink (Serial link)
{% endstep %}

{% step %}
**Select the firmware file**

File with extension `.bin`
{% endstep %}

{% step %}
**Start update**

Press the `Update` button
{% endstep %}

{% step %}
**Power on the device**

* Power on the device within 10 seconds
* *Device controlled via esc\_configuration\_app in Jetson, the power on is achieved by the next step in the application*
* Elapsed time is displayed by a progress bar

<figure><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-eedb9c4631741a1bd18a2f7d38036cf222ab46ca%2Fimage%20(25).png?alt=media" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Updating**

Writing firmware step

* Write new Firmware to the ESC flash

![](https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-b6460c2562ea8956e84169d13e69155b423d7753%2Fimage%20\(26\).png?alt=media)
{% endstep %}

{% step %}
**Successful update**

Start the device with the new firmware

<figure><img src="https://341257526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkuuT7PXOBpck5wDlb6XM%2Fuploads%2Fgit-blob-d319f85f7f8a6721ee3f1604d51b62270075403e%2Fimage%20(27)%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}


---

# Agent Instructions: 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:

```
GET https://docs.airvolute.com/autopilots/dronecore-1/getting-started/motor-connection/amc_manager.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
