DAMIAO Host Computer User Manual
DAMIAO Integrated Motor Module Host Computer User Manual
Host Computer Download Link
1. Motor wiring diagram
1.1 Main wiring diagram

1.2 USB-to-CAN module wiring diagram

1.3 Power adapter board wiring diagram

2. Connecting devices
Connect the motor's serial port, CAN port, and power interface. Open the debugging assistant software on the computer, select the corresponding serial port device, and open the serial port.
When power is supplied to the motor at this time, the serial port will print the following information. Control Mode: Indicates the current drive mode. Different modes use different command formats.
3. Read firmware version
4. Calibration
4.1 Motor-side encoder
The calibration process primarily corrects sensor installation errors. During this process, the motor will rotate in both directions for one rotor cycle. Please ensure the motor can rotate freely, ideally running under no-load conditions; otherwise, calibration may fail.
Sensor Calibration: Click "Calibrate." The motor will rotate first, and after rotation, it will return the pole pair number to the debugging assistant. Simultaneously, the motor will rotate in both directions to calibrate the sensor data. Please ensure the motor is securely fixed to prevent accidents.
After parameter identification is completed, the motor will automatically perform sensor calibration and display the motor's sensor waveform diagram
- After calibration is complete, the calibration values will be automatically uploaded.
- Once calibration is complete, a screenshot showing the calibration results will automatically pop up.
- Special attention should be paid to the value of "Compensation Data," and it is recommended that it not exceed ยฑ300. If it exceeds 300, there may be several reasons:
- Error in identifying pole logarithms;
- Excessive motor resistance causes jamming;
- The sensor was not installed correctly;
[Note] The maximum value of the red curve should not significantly exceed that of the blue curve; otherwise, the test will fail, and you will need to recalibrating.
4.2 Output shaft encoder calibration
Dual-encoder motors require output shaft encoder calibration to improve output shaft encoder accuracy. During this process, the motor will rotate in the forward direction; please ensure the motor can rotate freely and is running under no-load conditions. Otherwise, excessive calibration errors may occur. The motor has already undergone output shaft encoder calibration at the factory, and this calibration is written into the motor. Under normal circumstances, it can be used directly without further output shaft encoder calibration. The following provides the operating steps for output shaft encoder calibration. In abnormal situations such as when the motor driver board is replaced or the output position changes, output shaft encoder calibration should be performed before operation.
Click the slider next to the calibration button until it displays "Output Shaft Encoder", then click calibrate.
The motor starts rotating and uploads the raw data waveform from the encoder.
After calibration is complete, the calibration values will be automatically uploaded and displayed.
5. Parameter calibration
Parameter identification mainly involves determining key parameters of the motor such as phase resistance, phase inductance, and magnetic flux linkage.
Click the "Parameter Settings" tab, then click the "Parameter Calibration" button to start the identification process. During this process, the motor will rotate. It is recommended to keep the motor unloaded and securely fixed.
Once the identification is complete, the results will be uploaded automatically.
The above parameters cannot contain negative values. If a negative value is found, please confirm the motor status before recalibrating.
6. Read/Write Parameters
6.1 Read Parameters
To read parameters, under the "Parameter Settings" tab, click the "Read Parameters" button. The driver will then upload the parameters it stores and uses to the debugging assistant.
6.1.1 Motor Parameters
The parameters in this section are automatically identified by the driver. (If the driver board is replaced, parameter calibration is required once, and these parameters will be automatically saved to the driver).
Parameter Name | Description |
Npp๏ผNumber of pole pairs๏ผ | The number of pole pairs of the motor, which can be automatically determined through calibration. |
Gr (Gear Ratio) | The Gear Ratio of a motor primarily affects the motor's output speed and position, indirectly influencing the motor's torque feedback information. It can be set as a floating-point number. |
Acc/Dec (Acceleration/Deceleration) | Used in non-MIT mode to limit the acceleration/deceleration of the driver. |
UV (Undervoltage) | If the power supply voltage falls below the set value, the driver will stop operating. The power supply voltage must not be lower than 15V. |
OV (Overvoltage) | Sets the upper voltage limit for the driver's operation. When the motor is powered on, the power supply voltage is sampled. If the sampled voltage exceeds this value, the driver will stop working and will only run once upon power-on. |
OT (Over-temperature) | The motor coil temperature protection value should be set according to usage requirements, but is recommended not to exceed 100โ. Upon over-temperature detection, the driver will deactivate, enter a disabled state, and report an error. |
OC (Overcurrent) | Used to limit the maximum phase current of the motor, as a percentage. |
Spd Limit (Speed Limit) | Used only in speed mode to limit the maximum operating speed of the motor before deceleration, measured in rad/d/s. |
fbw(Velocity Loop Filter Bandwidth) | Speed filter bandwidth (unit: Hz) |
Ki_speed(Velocity loop boost coefficient) | Velocity loop auxiliary control parameter, with recommended adjustable range of 200โ800. |
Ki_current(Current loop boost coefficient) | Current loop auxiliary control parameter, do not recommend modification. |
6.1.2 Communication Parameters
Parameter Name | Description |
CAN ID | The frame ID number (hexadecimal) of the CAN command received by the driver; |
Master ID | The frame ID number used for driver feedback information, in hexadecimal |
CAN Timeout | CAN communication timeout setting, 32-bit integer, indicating the number of count cycles after which no CAN command is detected before motor protection is initiated. One count cycle is 50ยตs. |
CAN baud rate | Configure the CAN baud rate, supporting 125Kbpsโ5Mbps. |
6.1.3 Control amplitude Parameters
Parameter Name | Description |
PMAX | In MIT mode, it serves as the mapping value for commands received by the motor; in other modes, it serves as the mapping value for feedback information from the motor. |
VMAX | Same as the PMAX parameter. |
TMAX | Same as the PMAX parameter. |
KT_OUT | The torque coefficient of the motor. If the motor parameter identification is accurate, set it to 0. |
Gear coefficient | Gear torque transmission coefficient, less than or equal to 1.0. |
Damping factor | Current loop to velocity loop control bandwidth ratio (not used). |
6.1.4 Control setting parameters
Parameter Name | Description |
Control Mode | The control modes include MIT mode, position-velocity mode, velocity mode, and force-position hybrid mode. |
Current bandwidth | Set the gain coefficient of the current loop; the default value is 1000. |
velocity KP/KI & position KP/KI | Parameters of the velocity loop and position loop. |
6.2 Write Parameters
Check drive parameters, control amplitude, control settings, and other parameters. Modify any parameters that need to be changed. Finally, click "Write Parameters" to save the modified parameters to the driver.
Clicking the "Write Parameters" button will automatically reset the chip. Therefore, when using "Write Parameters", please ensure that the motor is in the "disabled" state to prevent safety accidents.
Note๏ผ
- Do not modify the number of pole pairs or the reduction ratio parameters.
- After clicking "Write Parameters", the driver will automatically perform a software restart; no external power reset is required.
- The "Temporary Storage" button only takes effect for controller parameters and will be lost after power-off.
7. Debug
This function can only be operated when connected to the CAN interface. It can only debug a single motor. Before operation, connect the CAN cable to the driver board. Before debugging, confirm the wiring sequence and the current control mode, and select the corresponding sub-tab on the debugging page according to the different modes.
7.1 Selection and confirmation of the control mode
Click "Parameter Settings" in the debugging assistant, then click "Control Mode" in the control settings. You can select among four modes: MIT mode, position-velocity mode, velocity mode, and force-position hybrid mode. Then click "Write Parameters" to set the control mode.
- When modifying the control mode, a prompt window will pop up: "Write Parameters Successful!".
- Since the "Write Parameters" function automatically resets, there is no need to power cycle the driver for the changes to take effect.
7.2 MIT Mode
- Refer to "Selection and Confirmation of the Control Mode". Select the current mode as MIT mode, confirm the current control mode, and then select the corresponding MIT sub-tab on the debugging page.
- Ensure the CAN ID is correct (it can be obtained through serial port print information or the parameter settings page, and can also be read or set using the read/set buttons on the debug page).
7.2.1 Speed control
- Click the "Enable" button in the motor mode section. At this time, the green LED on the driver lights up, indicating that the motor is enabled.
- Apply a speed command to make the motor run at the given speed.
- When exiting debugging, click the "Stop" and "Disable" buttons in sequence. The red LED on the driver lights up, indicating that the motor mode has been exited.
For example: set the speed command to 5 rad/s, set KD to 0.2 Nยทs/rad, set all other parameters to 0, check the "Periodic Send" box, then click the "Update" button and the "Send" button in sequence. The parameter curve graph can be viewed on the debugging interface.
Note: Secure the motor.
According to debugging requirements, it is necessary to modify control parameters and observe the debugging changes. Modify the parameters directly in the original interface, keep the "Periodic Send" box checked, and click the "Update" button to perform debugging.
The debugging assistant interface displays the current motor and driver temperature as well as the motor operating status in real time. This information can also be viewed via the feedback frame. The feedback frame format and status types are as follows.
7.2.2 Position control
- Click the "Enable" button in the motor mode section. At this time, the green LED on the driver lights up, indicating that the motor is enabled.
- Apply a position command to make the motor rotate to the specified position.
- For example, set the parameters: position command to 3.14 rad, KP to 0.5N/rad, KD to 0.1Nยทs/rad, set all other parameters to 0, check the "Periodic Send" box, then click the "Update" button and the "Send" button in sequence. The parameter curve graph can be viewed on the debugging interface.
- When exiting debugging, click the "Stop" and "Disable" buttons in sequence. The red LED on the driver lights up, indicating that the motor mode has been exited.
At this time, pay attention to the initial position of the motor. When assigning a value to the "Position" parameter in the control parameters section, avoid a large deviation from the initial position to prevent motor impact.
You can click "Save Zero Position" in the control command bar to set the current motor position as the zero point, which facilitates the setting of the "Position" parameter.
Note: Secure the motor.
According to debugging requirements, it is necessary to modify control parameters and observe the debugging changes. Modify the parameters directly in the original interface, keep the "Periodic Send" box checked, and click the "Update" button to perform debugging.
The debugging assistant interface displays the current motor and driver temperature as well as the motor operating status in real time. This information can also be viewed via the feedback frame. The feedback frame format and status types are as follows.
7.2.3 MIT torque control
- Follow the same first step as in speed control and position control to enable the motor.
- Apply a torque command to debug the motor.
- When exiting debugging, click the "Stop" and "Disable" buttons in sequence. The red LED on the driver lights up, indicating that the motor mode has been exited.
For example, set the torque command to 1 Nยทm, set all other parameters to 0, check the "Periodic Send" box, then click the "Update" button and the "Send" button in sequence. The parameter curve graph can be viewed on the debugging interface.
7.3 Position-velocity mode
- To debug the position-velocity mode, you need to switch the motor mode to position-velocity mode on the parameter page, then click "Write Parameters" for the change to take effect. On the debugging page, select the corresponding "Position" sub-tab.
- Ensure the CAN ID is correct (it can be obtained through serial port print information or the parameter settings page, and can also be read or set using the read/set buttons on the debug page).
- Click the "Enable" button in the motor mode section. At this time, the green LED on the driver lights up, indicating that the motor is enabled.
- Set the parameters, and the motor will run to the specified position at the set speed.
- Set the parameters: position to 10 rad, velocity to 5 rad/s. Check the "Periodic Send" box, then click the "Update" button and the "Send" button in sequence. The parameter curve graph can be viewed on the debugging interface.
Before setting the parameters, pay attention to the initial position of the motor and use it as a reference to configure the parameters.
Note: Secure the motor.
When exiting debugging, click the "Stop" and "Disable" buttons in sequence. The red LED on the driver lights up, indicating that the motor mode has been exited.
7.4 Velocity mode
- Refer to "Selection and Confirmation of the Control Mode". Select the current mode as velocity mode, confirm the current control mode, and then select the corresponding "Velocity" sub-tab on the debugging page.
- Ensure the CAN ID is correct (it can be obtained through serial port print information or the parameter settings page, and can also be read or set using the read/set buttons on the debug page).
- Click the "Enable" button in the motor mode section. At this time, the green LED on the driver lights up, indicating that the motor is enabled.
- Set the parameters, and the motor will run at the set speed.
- When exiting debugging, click the "Stop" and "Disable" buttons in sequence. The red LED on the driver lights up, indicating that the motor mode has been exited.
For example, set the parameter: velocity to 20 rad/s. Check the "Periodic Send" box, then click the "Update" button and the "Send" button in sequence. The parameter curve graph can be viewed on the debugging interface.
Note: Secure the motor.
8. Firmware Version Check and Upgrade
8.1 View version
Connect the serial port, CAN port, and power interface of the motor. Choose the appropriate serial port device, open the port, and click 'Read Version' to check the driver's current software version.
When upgrading the firmware, please read the current version first. Unless otherwise specified, select the firmware whose version number starts with '72' (the first two digits) for upgrade; otherwise, unknown issues may occur, causing unnecessary trouble.
8.2 Serial Port Firmware Upgrade
When new firmware adds new features or an upgraded version fixes bugs, users can upgrade via the serial port to resolve issues and use new features. Before use, connect the serial port, then click "Firmware Selection" and select the corresponding firmware. After clicking "Open", the firmware name will be displayed in the firmware name field. Once confirmed, click the firmware upgrade button and wait for the upgrade progress bar to complete. You can also monitor whether the upgrade is completed via the serial port interface.
8.3 CAN firmware upgrade
Bootloader version 3.2.0.5 and above supports firmware upgrade via CAN, using the baud rate configured on the driver board. Currently, only USB-to-CAN adapters are supported for upgrades. Before use, connect the CAN interface and ensure normal CAN communication. Then, in the USB Mode section, switch from UART to CAN, and enter the motor ID to be upgraded in the left box. If the bus does not exist, a corresponding prompt will appear, as shown below:
If the connection is successful, no prompt will appear.ย
Then click "Firmware Selection" and select the corresponding firmware. After clicking "Open", the firmware name will be displayed in the firmware name field. Once confirmed, click the firmware upgrade button and wait for the upgrade progress bar to complete. You can also monitor whether the upgrade is completed via the serial port interface.
After the upgrade is completed, a corresponding prompt will appear on the serial port interface.
โ Previous
DAMIAO DocsOn this page
- DAMIAO Host Computer User Manual
- Host Computer Download Link
- 1. Motor wiring diagram
- 1.1 Main wiring diagram
- 1.2 USB-to-CAN module wiring diagram
- 1.3 Power adapter board wiring diagram
- 2. Connecting devices
- 3. Read firmware version
- 4. Calibration
- 4.1 Motor-side encoder
- 4.2 Output shaft encoder calibration
- 5. Parameter calibration
- 6. Read/Write Parameters
- 6.1 Read Parameters
- 6.1.1 Motor Parameters
- 6.1.2 Communication Parameters
- 6.1.3 Control amplitude Parameters
- 6.1.4 Control setting parameters
- 6.2 Write Parameters
- 7. Debug
- 7.1 Selection and confirmation of the control mode
- 7.2 MIT Mode
- 7.2.1 Speed control
- 7.2.2 Position control
- 7.2.3 MIT torque control
- 7.3 Position-velocity mode
- 7.4 Velocity mode
- 8. Firmware Version Check and Upgrade
- 8.1 View version
- 8.2 Serial Port Firmware Upgrade
- 8.3 CAN firmware upgrade