in teoria una volta beccato il codice corretto anche se arduino "preme" per duecentomila volte al massimo dovrei trovarmi un "pochettino" di numeri sul display...! 
la vedo dura... il connettore della tastiera è microscopico, è una tastiera a membrana, ora la distruggo , dovrebbero essere piste ramate, la punta da 1 mm del saldatore mi sa che mi tocca molarla un pò... ]:).
questo sketch l'avevo usato per un'aggeggio con codice a 4 cifre, però aveva solo 2 tasti, uno per incrementare il numero e uno per inserirlo,
const int snapshot = 13;
const int freccia = 2; // E TASTO 1
const int enter = 3; // E TASTO 2
int j ;
int i ;
void setup()
{
pinMode ( snapshot , OUTPUT);
pinMode ( freccia , OUTPUT);
pinMode ( enter , OUTPUT);
digitalWrite (freccia, LOW);
digitalWrite (enter, LOW);
digitalWrite ( snapshot , LOW);
}
void loop()
{
// ARRIVATO A 260
for (i=262;i<=270;i++) // cambiando il numero assegnato a i si cambia il numero di impulsi di partenza
{ // quando arriva al secondo numer impostato riparte da zero
for (j=0; j<=i;j++)
{
digitalWrite( freccia, HIGH);
delay(75 );
digitalWrite( freccia, LOW);
delay(75);
}
// QUI SI POTREBBE INSERIRE LO SNAPSHOT
digitalWrite( snapshot, HIGH);
delay(300 );
digitalWrite( snapshot, LOW);
delay(75);
digitalWrite( enter, HIGH);
delay(100);
digitalWrite(enter, LOW);
delay(100);
jump10:
if (i == 300) // qui imposto il numero di conteggi per bloccare l'esecuzione del programma
goto jump10;
}
}
invece nel telefono devo "pigiare" 10 tasti...!