Description
STEPMOTOR is used for stepper motor control. It is perfect for any motion project as it can drive up to 3 Stepper motors with GRBL control.
It is built with MEGA328P has been flashed GRBL firmware. The module comunicates with M5Core via I2C(0x70)
Integrated 3 DRV8825, a simple but very powerful board that can control one bipolar stepper motor at the time and allows micro stepping up to 1/32 of a step.
Product Features
- 9-24V Power Input
- 3-way stepper motors (X, Y, Z)
Kit includes
- 1x Step Motor Module
- 12V Power (Optional)
- 1x 5V FAN Module for heat dissipation (Optional)
Applications
- DIY 3D Printer
- Simple Robot Arm
Documents
Learn
Example
1. Arduino IDE
The code below is incomplete. TO get complete code, please click here.
/*
If Button A was pressed,
stepmotor will rotate back and forth at a time
*/
#include <M5Stack.h>
#include <Wire.h>
#define STEPMOTOR_I2C_ADDR 0x70
// initialization
M5.begin();
Wire.begin();
// Controlling Protocol:
// G<n> X<distance>Y<distance>Z<distance> F<speed>
SendCommand(STEPMOTOR_I2C_ADDR, "G1 X20Y20Z20 F500");
SendCommand(STEPMOTOR_I2C_ADDR, "G1 X0Y0Z0 F400");
// Get Data from Module.
Wire.requestFrom(STEPMOTOR_I2C_ADDR, 1);
if (Wire.available() > 0) {
int u = Wire.read();
if (u != 0) Serial.write(u);
}
// Send Data to Module.
while (Serial.available() > 0) {
int inByte = Serial.read();
SendByte(STEPMOTOR_I2C_ADDR, inByte);
}
2. UIFlow
Wanna explore the easiest way of Servo programming?? Check out the Blockly Platform at UIFlow.
To get complete code, please click here.