

The MKS DUAL FOC (V3.3), manufactured by Makerbase, is a dual-channel field-oriented control (FOC) driver designed for brushless DC (BLDC) motors. It enables precise control and high efficiency, making it ideal for applications such as robotics, electric vehicles, drones, and industrial automation. By leveraging FOC technology, the MKS DUAL FOC ensures smooth motor operation, reduced noise, and optimized power consumption.








| Parameter | Specification |
|---|---|
| Manufacturer | Makerbase |
| Part ID | V3.3 |
| Input Voltage Range | 12V - 48V DC |
| Maximum Current per Channel | 15A |
| Control Method | Field-Oriented Control (FOC) |
| Communication Interfaces | UART, CAN, PWM |
| Supported Motors | Brushless DC (BLDC) motors |
| Dimensions | 60mm x 50mm x 15mm |
| Operating Temperature Range | -20°C to 85°C |
The MKS DUAL FOC features a set of connectors for power, motor outputs, and communication. Below is the pin configuration:
| Pin Name | Description |
|---|---|
| VIN+ | Positive input voltage (12V - 48V DC) |
| VIN- | Ground (GND) |
| M1_A, M1_B, M1_C | Motor 1 phase connections (A, B, C) |
| M2_A, M2_B, M2_C | Motor 2 phase connections (A, B, C) |
| Pin Name | Description |
|---|---|
| UART_TX | UART transmit pin |
| UART_RX | UART receive pin |
| CAN_H | CAN bus high signal |
| CAN_L | CAN bus low signal |
| PWM1 | PWM input for Motor 1 |
| PWM2 | PWM input for Motor 2 |
| GND | Ground for communication signals |
Below is an example of controlling a BLDC motor connected to the MKS DUAL FOC using PWM signals from an Arduino UNO.
// Example: Controlling MKS DUAL FOC with Arduino UNO
// This code generates a PWM signal to control Motor 1 speed and direction.
// Define PWM pin for Motor 1
const int pwmPin = 9; // Connect to PWM1 on MKS DUAL FOC
void setup() {
// Set the PWM pin as output
pinMode(pwmPin, OUTPUT);
}
void loop() {
// Generate a PWM signal to control motor speed
analogWrite(pwmPin, 128); // 50% duty cycle (range: 0-255)
// Delay for 2 seconds
delay(2000);
// Stop the motor
analogWrite(pwmPin, 0); // 0% duty cycle (motor off)
// Delay for 2 seconds
delay(2000);
}
analogWrite value to control motor speed (0 = off, 255 = full speed).Motor Not Spinning
Overheating
Communication Failure
Erratic Motor Behavior
Q: Can I use the MKS DUAL FOC with a single motor?
Q: What is the maximum supported motor speed?
Q: Is the MKS DUAL FOC compatible with sensorless BLDC motors?
Q: Can I use the MKS DUAL FOC with a Raspberry Pi?
This concludes the documentation for the MKS DUAL FOC (V3.3). For further assistance, refer to the Makerbase user manual or contact their support team.