The to pins that controls the motors in this diagram are pin number 16(GPIO 23) and pin number 18(GPIO 24). Pin number 18 controls the direction of the motor and pin number 16 the speed. With 1K ohm resistors connected to the ground for each of these pins we connect them to the Easy driver.
Depending on the stepper motor you have, you will need to check the bipolar stepper motor wiring diagram for your motor. The motors I used had the following diagram where A(black) and C(green) connects to the A pins and B(red) and D(blue) connects to B pins.
Install pi-gpio and go ahead with this script to control the stepper motors:
var gpio=require(“pi-gpio”);stopMotors = false;
function sleep(milliseconds) {
var start = new Date().getTime();
for (var i = 0; i < 1e7; i++) {
if ((new Date().getTime() – start) > milliseconds){ break; } }}
gpio.open(16,“output”,function(err){
console.log(“Pin 16 open”); // Opens pin 16 as output });
gpio.open(18,“output”,function(err){ console.log(“Pin 18 open”); // Opens pin 18 as output });// Runs motor in the set direction
function move() {
gpio.write(16, 1, function() { sleep(1000); gpio.write(16, 0, function() { sleep(1000); if(!stopMotors)move(); });}); }
function stopMotor() {
stopMotors = true;}// Changing direction of motorfunction left() { stopMotors = false;
gpio.write(18, 1, function() { move(); }); }// Changing direction of motorfunction right() {
stopMotors = false; gpio.write(18, 0, function() { move(); }); }