External Drive Usage Tutorial
Precautions
- This tutorial is based on Klipper firmware configuration.
- The module supports both common cathode and common anode wiring methods. Please choose according to your actual situation.
- After selecting the wiring method, ensure the hardware connection matches the chosen method.
Module Selection
- Standard Module
- 5V Module
- This module is suitable for SUPER series, GEMINI series, E3 series.
- Reason: The driver pins on these motherboards output a 5V signal, which is directly compatible with the driver.
- This module is suitable for D series, C series.
- Reason: The driver pins on these motherboards output a 3.3V signal. Some drivers cannot be used directly and require a boost module.
Select Wiring Method
Please select the corresponding wiring method based on your hardware configuration:
- If unsure which method to use, please refer to the driver module's manual.
- Common Cathode Wiring
- Common Anode Wiring
Driver Microstepping Setting
- No driver jumper configuration is required. Microstepping is set directly by the driver DIP switches.
Driver DIP Switch Setting
It is recommended to set the driver's onboard DIP switches to 3200.
Microstepping Setting Explanation
Pulses per motor revolution = rotation_distance / step_distance
A more fundamental derivation is:
Pulses per motor revolution = full_steps_per_rotation × microsteps
Step-by-step configuration logic:
- Determine motor intrinsic parameters: Common motors have
full_steps_per_rotation: 200(200 full steps per revolution, i.e., 1.8°/step). - Set Klipper microsteps
microsteps: Set in the configuration file, e.g.,microsteps: 16. - Match driver physical microstepping: Calculate and set the driver DIP switches based on the above settings and required precision.
- Recommended value in this tutorial:
200 (full steps) × 16 (Klipper microsteps) = 3200 pulses/revolution. - At this point, the driver DIP switches need to be set to the corresponding
3200(32 microsteps), meaning the driver subdivides each received "step pulse" into 32 parts to drive the motor.
- Recommended value in this tutorial:
| Configuration Level | Configuration Item | Setting Value | Description |
|---|---|---|---|
| Motor Parameter | Full Steps per Revolution full_steps_per_rotation | 200 | Motor intrinsic property, typically 200 (1.8°) |
| Klipper Config | Microsteps microsteps | 16 | Set in printer.cfg |
| Driver Hardware | DIP Switch Microstep Value | 3200 (32 microsteps) | Set by physical DIP switches |
| Final Effect | Pulses per motor revolution | 200 × 16 = 3200 | Klipper needs to send 3200 pulses to rotate the motor one full revolution |
If other microstepping effects are needed:
Please follow the above logic to ensure coordination between Klipper configured microsteps (microsteps) and driver DIP switch microstep setting. For example, if set to microsteps: 32 in Klipper, the driver DIP switches should be set to 1600 (16 microsteps) to achieve a total precision of 200 × 32 = 6400 pulses/revolution.
Klipper Configuration Reference
| Configuration Item | Description | Configuration Example |
|---|---|---|
| Driver Type | No configuration needed, physically set by driver DIP switches | — |
Microsteps (microsteps:) | Set to 16 | Loading... |
Step Pulse Duration (step_pulse_duration:) | This parameter must be added and set to 0.000004 | Loading... |
Enable Pin (enable_pin:) | Adjust according to driver logic: 1. Usually remove the ! symbol (active-high enable)2. Some drivers require adding ! (active-low enable)3. In some cases, you can delete this line (always enabled) | Active-high enable: Loading... Active-low enable: Loading... Disable enable: Delete this line |
Configuration reference illustration:
Driver Pulse Anomaly Handling
If the following phenomena occur, try adjusting the step pulse duration:
- Printed model offset, layer misalignment
- Motor vibration, abnormal noise, or irregular operation
Adjustment Method:
Gradually increase the value of step_pulse_duration, for example:
- Try
0.000009 - Or
0.00001 - Or
0.00002
Test the effect after each adjustment.