6.1 KiB
BaseX
SKU:K037
Description
BaseX is a special base compatible with LEGO EV3 motor. The structure design is similar to base26, supporting multiple ways of fixation, and an additional LEGO connection base is provided. When building the LEGO structure, Basex can be easily embedded in the work. Basex can be connected to 4-way (RJ11) LEGO motor at the same time, supporting angle / speed reading and control, and perfectly compatible with the original motor functions. In addition, the base provides two servo interfaces, which can directly control the rotation angle of the servo.There is a motherboard PDM microphone for sound collection. In order to adapt to different use scenarios, a UART interface (16 / 17) and a GPIO interface (26 / 36) are provided to make access to various sensors more flexible. A 950mAh battery is built in the base, which can be charged through the usb-c interface of m5core to extend the endurance. In order to improve the driving ability of the interface, the base is equipped with a DC power socket, which can be powered by an external 9-12v power supply to provide a stable power supply for the motor.
Product Features
- 4-way RJ11 LEGO motor interface (total maximum output current 2A)
- 2-way servo interface (total maximum output current 2A)
- 1-way UART
- 1-way GPIO
- On board PDM microphone (GOIO 34)
- On board DC-DC conversion (9 ~ 12V,independent power supply for the motor only)
- Built in 950mAh battery
- Multiple fixing methods / LEGO hole connection support
Application
- Encoder motor / servo controller
- LEGO DIY intelligent control
Include
- 1x BaseX
- 1x LEGO base
- 2x M3 * 5mm 304 Stainless steel hexagon socket bolt
- 2x M3 * 32mm 304 Stainless steel hexagon socket bolt
- 1x M3 wrench
Specification
| Resources | Parameter |
| Net weight | 59g |
| Gross weight | 110g |
| Product Size | 54*54*26mm |
| Package Size | 150*65*40mm |
EasyLoader
- EasyLoader is a simple and fast program burner. Every product page in EasyLoader provides a product-related case program. This can be burned to the M5 device through simple steps, and a series of function verifications can be performed.
After downloading the software, double-click to run the application, connect the M5 device to the computer through the data cable, select the port parameters, click "Burn" to burn the program (For M5StickC, set the baud rate to 115200 or 750000)
?>3. Before installing and using the Easyloader for M5Core, you need to install CP210X driver (you do not need to install with M5StickC as controller)Click here to view the driver installation tutorial
I2C Control instructions
I2C Slave address: 0x22
| Function | Register address | Value |
| SERVO1_ANGLE_ADDR | 0X00 | 0~180 |
| SERVO2_ANGLE_ADDR | 0x01 | 0~180 |
| SERVO1_PULSE_ADDR | 0x10 | (uint16_t) 500~2500 |
| SERVO2_PULSE_ADDR | 0x12 | (uint16_t)500~2500 |
| MOTOR1_PWM_DUTY_ADDR | 0x20 | -127~127 |
| MOTOR2_PWM_DUTY_ADDR | 0x21 | -127~127 |
| MOTOR3_PWM_DUTY_ADDR | 0x22 | -127~127 |
| MOTOR4_PWM_DUTY_ADDR | 0x23 | -127~127 |
| MOTOR1_ENCODER_ADDR | 0x30 | int32_t |
| MOTOR2_ENCODER_ADDR | 0x34 | int32_t |
| MOTOR3_ENCODER_ADDR | 0x38 | int32_t |
| MOTOR4_ENCODER_ADDR | 0x3C | int32_t |
| MOTOR1_SPEED_ADDR | 0x40 | -127~127 |
| MOTOR2_SPEED_ADDR | 0x41 | -127~127 |
| MOTOR3_SPEED_ADDR | 0x42 | -127~127 |
| MOTOR4_SPEED_ADDR | 0x43 | -127~127 |
I2C Motor address:
| Motor number | Motor Address |
| MOTOR1 | 0x50 |
| MOTOR2 | 0x60 |
| MOTOR3 | 0x70 |
| MOTOR4 | 0x80 |
Mode config method: Motor address + nByte
| Byte | Value |
| 0 | Run mode |
| 1 | position-p(3) |
| 2 | position-i(1) |
| 3 | position-d(15) |
| 4|5|6|7 | position-point(Low effective) |
| 8 | position-max-speed |
| 9 | speed-p |
| 10 | speed-i |
| 11 | speed-d |
| 12 | speed-point |
| Motor run mode | Value |
| Normal | 0X00 |
| Position | 0x01 |
| Encoder | 0x02 |
Example
1. Arduino IDE
Click here to download Arduino code
2. UIFlow
Click here to download UIFlow code

