arduino con virtuino

Buenas gente, tengo una consulta para ustedes. Estoy desarrollando un código comunicado por bluetooth a la app virtuino y tengo un inconveniente que es el siguiente. Desde la app envío a través de un pulsador un estado en alto para sumar un valor a una variable, que lo puedo realizar con exito el problema es que en vez de sumar de a uno realiza la accion varias veces y poniendo un delay no consigo corregirlo. Les adjunto una parte del codigo

if (virtuino.vDigitalMemoryRead(10)==1){                 //SI EL PVD 10 ES IGUAL A 1...
 delay(25);                                               //ESPERO 25 MILISEGUNDOS (PARA EVITAR REBOTES)
 SLIDER1++;                                               //SUMAR 1 A SLIDER1
 }else if (virtuino.vDigitalMemoryRead(11)==1){           //SI EL PVD 11 ES IGUAL A 1...
 delay(25);                                               //ESPERO 25 MILISEGUNDOS (PARA EVITAR REBOTES)
 SLIDER1--;                                               //RESTAR 1 A SLIDER1
 }
 if (virtuino.vDigitalMemoryRead(12)==1){                 //SI EL PVD 12 ES IGUAL A 1...
 delay(25);                                               //ESPERO 25 MILISEGUNDOS (PARA EVITAR REBOTES)
 SLIDER2++;                                               //SUMAR 1 A SLIDER2
 }else if (virtuino.vDigitalMemoryRead(13)==1){           //SI EL PVD 13 ES IGUAL A 1...
 delay(25);                                               //ESPERO 25 MILISEGUNDOS (PARA EVITAR REBOTES)
 SLIDER2--;                                               //RESTAR 1 A SLIDER2
 }

Despues intente con otro tipo de funcion pero obtuve los mismos resultados

switch (virtuino.vDigitalMemoryRead(10)){                //LEO ESTADO DE PVD 10
 case 1:                                                  //SI ES IGUAL A 1
 SLIDER1++;                                               //SUMAR 1 A SLIDER1
 break;                                                   //SALIR DEL BUCLE
 }
 switch (virtuino.vDigitalMemoryRead(11)){                //LEO ESTADO DE PVD 11
 case 1:                                                  //SI ES IGUAL A 1
 SLIDER1--;                                               //RESTAR 1 A SLIDER1
 break;                                                   //SALIR DEL BUCLE
 }
 switch (virtuino.vDigitalMemoryRead(12)){                //LEO ESTADO DE PVD 12  
 case 1:                                                  //SI ES IGUAL A 1
 SLIDER2++;                                               //SUMAR 1 A SLIDER2
 break;                                                   //SALIR DEL BUCLE
 }
 switch (virtuino.vDigitalMemoryRead(13)){                //LEO ESTADO DE PVD 13 
 case 1:                                                  //SI ES IGUAL A 1
 SLIDER2--;                                               //RESTAR 1 A SLIDER2
 break;                                                   //SALIR DEL BUCLE
 }

Espero puedan ayudarme, gracias.