Arduino 101, MCP23S17, encoder rotativi ed interrupt

Ciao a tutti,

vorrei un chiarimento e dei consigli sulla possibilità di usare, con Arduino 101, due MCP23S17 per comandare 6 encoder rotativi con svariati pulsanti e led.

Fino ad ora ho usato un Arduino Due e per gli encoder utilizzavo la funzione attachInterrupt in questo modo:

....
attachInterrupt(E1_PINA, ExeEncoderE1, CHANGE);
attachInterrupt(E1_PINB, ExeEncoderE1, CHANGE);
....

void ExeEncoderE1() {

  //do something here

}

....

Pensavo di fare uso della libreria MCP23S17 ma non riesco a capire come cambiare il codice per intercettare la rotazione di ciascun encoder.

Il discorso analogo vale anche per l'utilizzo della libreria Bounce2, anche se in questo caso, riscrivere il codice di debouncing non è un grossissimo problema.

A prescindere da tutto vorrei chiedere se l'idea è sbagliata in partenza, anche se presumo che sia fattibile, considerando che gli encoder hanno regimi di rotazione bassissimi.

Grazie Enzo