/*
Useless Machine
AnonEngineering Oct 24
Flipping the slide switch powers up the project.
The servo flips the switch back, the relay maintains
power until the servo returns and the relay de-energizes.
*/
#include <Servo.h>
const int RELAY_PIN = 13;
const int SERVO_PIN = 3;
const unsigned long SPEED = 50;
unsigned long pause = 0;
unsigned long prevTime = 0;
int pos = 0;
int increment = 10;
Servo servo;
void setup() {
Serial.begin(115200);
pinMode(RELAY_PIN, OUTPUT);
servo.write(0);
servo.attach(SERVO_PIN);
digitalWrite(RELAY_PIN, HIGH);
Serial.println("Power up!");
randomSeed(analogRead(A0));
long wait = random(1000, 5000);
Serial.print("Waiting for ");
Serial.println(wait);
delay(wait);
}
void loop() {
if (millis() - prevTime >= SPEED) {
prevTime = millis();
pos = pos + increment;
if (pos >= 180) increment = -10;
if (pos < 0) {
pos = 0;
Serial.println("Bye!\n");
digitalWrite(RELAY_PIN, LOW);
while (true);
}
servo.write(pos);
}
}