added alternative SPI interface template functions