Hola,
Depende de si quieres el monoestable redisparable (si se aprieta el pulsador se reinicia la cuenta de los diez segundos) o no (no se reinicia).
Voy a suponer que no lo quieres redisparable.
Tienes que pensar en el monostable como una máquina de estados.
Tienes dos estados el estado 'ESPERANDO' y el estado 'ACTIVO' .
En el estado 'ESPERANDO' lo único que tienes que fijarte es si se aprieta el botón, en ese caso se hace lo siguiente:
if (pinBoton==HIGH) {
previousMillis = currentMillis;
estado=ACTIVO;
ledState=HIGH;
}
Y si estamos en estado 'ACTIVO' simplente comprobamos si se han pasado los 10 segundos
if(currentMillis - previousMillis > intervalOn) {
ledState = LOW;
estado=ESPERANDO;
}
Quedaría algo así:
loop() {
currentMillis = millis();
if (estado==ESPERANDO){
bloque1;
}
else {
bloque2;
}
}