Ora che sai qual'è il tempo massimo, prova a inserirlo in questa variabile
//***********************************************************************************************
byte pulseThreshold = 250; //EDIT THIS VALUE TO CHANGE DELAY BETWEEN DETECTING BANK OF PULSES
//***********************************************************************************************
Metti un valore più alto di quello che ottieni con la banconota più grossa e dovrebbe andare
Certo che 15 secondi per leggere una banconota da 50 euro sono tantini
Edit:
Cambia il tipo di variabile, da byte a int