// attiny44 on motor side receiving data via serial (TX->RX) from esp8266-2 and sends // stepper motor control signals to the motor driver board based on received 0 or 1 // --based on code by Tom Igoe #include #include #define txPin 1 #define rxPin 0 SoftwareSerial mySerial(rxPin, txPin); const int stepsPerRevolution = 200; int Steps2Take = 0; Stepper small_stepper(stepsPerRevolution, 10, 9, 8, 7); byte ch[3] = {0,0,0}; void setup() { // Open serial communications mySerial.begin(9600); delay(50); pinMode(txPin, OUTPUT); pinMode(rxPin, INPUT); small_stepper.setSpeed(150); } void loop() { if(mySerial.available() > 0) { ch[0] = mySerial.read(); if (ch[0] == 48){ Steps2Take = 500; //2400 small_stepper.step(Steps2Take); delay(2500); mySerial.println("close!"); } if (ch[0] == 49){ Steps2Take = -500; //2400 small_stepper.step(Steps2Take); delay(2500); mySerial.println("open!"); } } }