#include const int SERVOA_PIN = 10; const int SERVOB_PIN = 11; Servo servoA; Servo servoB; bool servoA_run; bool servoB_run; void setup() { // put your setup code here, to run once: pinMode(8, INPUT); // Switch A pinMode(9, INPUT); // Switch B servoA.attach(SERVOA_PIN); servoB.attach(SERVOB_PIN); // initialize servo_run to false servoA_run = false; servoB_run = false; // initialize servo postion servoA.write(10); servoB.write(30); // debug serial stream Serial.begin(9600); } void servoA_push() { servoA.write(90); delay(500); } void servoA_retrieve() { servoA.write(10); delay(500); } void servoB_push() { servoB.write(130); delay(500); } void servoB_retrieve() { servoB.write(30); delay(500); } void move_servo() { if (servoA_run) { servoA_push(); } else { servoA_retrieve(); } if (servoB_run) { servoB_push(); } else { servoB_retrieve(); } } void loop() { // put your main code here, to run repeatedly: int switchValA = digitalRead(8); int switchValB = digitalRead(9); if (switchValA == 1) { // Servo2 start Serial.println("servo B start"); servoB_run = true; } else { servoB_run = false; } if (switchValB == 1) { // Servo1 start Serial.println("servo A start"); servoA_run = true; } else { servoA_run = false; } move_servo(); delay(500); }