What is SPI?

The Serial Peripheral Interface is an interface bus commonly used to exchange data between two devices, a master and a slave, these devices being microcontrollers (master) and small peripherals such as spectrometers (slaves).

The SPI signals

The SPI signals: SCLK: Serial Clock (output from master) MOSI: Master Output, Slave Input. MISO: Master Input, Slave Output. SS: Slave Select (output from master)


A SPI operates in full duplex mode, meaning that data can be transferred in both directions at the same time. It uses separate clock and data lines dictated by the master, along with a select line to choose the device you wish to talk to.


Many compact spectrometers come with a USB interface, which is well suited for using the spectrometer for a laboratory setup or a quick evaluation, by connecting it to a PC/laptop. However, for integration with a microcontroller inside an analytical instrument, this interface is ideal, because most microcontrollers will have a built-in SPI and can act as a master. In contrast, a USB interface would require an extra interface chip in your board.

Communication between a spectrometer via SPI to the microcontroller

Communication between a spectrometer via USB to a laptop