Implement SPI interface (changes not yet tested)