Looking for RFID sensore help

Well, I have gone down the RFID rabbit hole with a lot of work and not much to show for it. I switched gears today and used a QR code reader that has a USB interface that act like a keyboard when inserted into a laptop. This works great because I can print out QR codes that correspond to the keyboard commands that trigger my videos. All works great with the simple 'tachometer' code (below) and when the wheel has stopped turning I use a relay to set the trigger on the QR reader. this activates the read function on the device for 1/2 second. this works quite well and I tested it out today.

Now the PM's want me to play a different video loop when the wheel is spinning!!! So, I thought of using the other side of the SPDT relay to trigger an input pin on the Leonardo and use the Keyboard.print command to trigger my 'Wheel Spinning' video. I thought of using buttonState to check the state of the button and trigger the Keyboard command.

my problem is I get the Keyboard to print 'L' at startup, but it will not trigger again in the loop. My relay is going from High to low when engaged. High when wheel is stopped and Low when the wheel is turning.

What am I doing wrong?

#include <Keyboard.h>

int revolutions=0;
int rpm=0; // max value 32,767 16 bit
long  startTime=0;
long  elapsedTime;
int ledPin =12;                           //wheel turning indicator
int relayPin =11;                         //QR code reader trigger
const int relayPin_1 = 9;                //Keyboard trigger when wheel isn't turning                    
int previousButtonState = HIGH;          //to check state of relay_1
void setup() {
{
    pinMode(7, INPUT_PULLUP);           // set pin to input
    pinMode (ledPin,OUTPUT);            //LED is an output
    pinMode (relayPin, OUTPUT);         //Relay pin is output
    pinMode (relayPin_1, INPUT);        //Relay pin 1 in an input to trigger media player loop activated by buttonState
    Serial.begin(9600);
    Keyboard.begin();
}
}
 
void loop() {

int buttonState = digitalRead(relayPin_1); 
revolutions=0; rpm=0;
startTime=millis();         
attachInterrupt(digitalPinToInterrupt(7),interruptFunction,RISING);
delay(1000);
detachInterrupt(7);                

//How many counts we've had from the hall effect sensor and calc the RPM
elapsedTime=millis()-startTime;     //finds the time, should be very close to 1 sec

if(revolutions>0)
{
  rpm=(max(1, revolutions) * 60000) / elapsedTime;        //calculates rpm
}

String outMsg = String("RPM :") + rpm;
Serial.println(outMsg);


if ((rpm) == 0) 
 digitalWrite (ledPin, HIGH);
if ((rpm) == 0) 
 digitalWrite (relayPin, HIGH);
if ((rpm) > 0) 
 digitalWrite (ledPin, LOW); 
if ((rpm) > 0) 
 digitalWrite (relayPin, LOW);
 
if ((buttonState != previousButtonState)
     && (buttonState == LOW))
Keyboard.print ('L');

previousButtonState = buttonState;  

Keyboard.end();

}  

void interruptFunction() //interrupt service routine
{  
  revolutions++;
}