 // Arduino NANO pin A6
 static const uint8_t PIN_EN = A6;
 
+static const uint8_t PIN_PROGRAM_SWITCH_1 = 7;
+static const uint8_t PIN_PROGRAM_SWITCH_2 = 8;
+
 // On board LED
 static const uint8_t PIN_STATUS = 13;
 

    // but the SparkFun example Arduino code does nothing with the pin that is mapped/connected to it.
    pinMode(PIN_EN, INPUT);
    pinMode(PIN_CS, INPUT);

    motor1State = new MotorState();
    currentProgram = new Program();
    
    // on full back and forth (4 seconds total)
    currentProgram->addProgramStep(new ProgramStep(FORWARD, 1023, 2000));
    currentProgram->addProgramStep(new ProgramStep(REVERSE, 1023, 2000));
    // on lower power back and forth (6 seconds total)
    currentProgram->addProgramStep(new ProgramStep(FORWARD, 550, 3000));
    currentProgram->addProgramStep(new ProgramStep(REVERSE, 550, 3000));
    // off for a few seconds
    currentProgram->addProgramStep(new ProgramStep(BRAKEGND, 0, 2000));
    // back and forth 3 times quick
    currentProgram->addProgramStep(new ProgramStep(REVERSE, 550, 250));
    currentProgram->addProgramStep(new ProgramStep(FORWARD, 550, 250));
    currentProgram->addProgramStep(new ProgramStep(REVERSE, 550, 250));
    currentProgram->addProgramStep(new ProgramStep(FORWARD, 550, 250));
    currentProgram->addProgramStep(new ProgramStep(REVERSE, 550, 250));
    currentProgram->addProgramStep(new ProgramStep(FORWARD, 550, 250));
    currentProgram->addProgramStep(new ProgramStep(REVERSE, 550, 250));
    
    // Initialize stopped/braked
    stopMotor();

        // fast-blink the on-board LED
        digitalWrite(PIN_STATUS, HIGH);
        delay(50);
        digitalWrite(PIN_STATUS, LOW);
        delay(50);
    } else {
        // Check every loop to be sure the motor isn't stalled
