MyRoboPathOpen Robotics Lab
All cheatsheets
ProtocolsQUICK REFERENCE

SPI

A shared clock and data bus with a separate chip-select for each device.

Fast synchronous I/OMyRoboPath / Robotics field notes
Download PDF

01Signals

SCK
Controller-generated serial clock.
MOSI / COPI
Controller output → peripheral input.
MISO / CIPO
Peripheral output → controller input.
CS / SS
Select line, usually active LOW; one per peripheral.

02Multiple devices

Shared
Share SCK/MOSI/MISO and GND; give each device its own CS.
Idle
Keep every unselected CS inactive, including during boot.
Bus release
Unselected peripherals must release MISO; some modules need buffering.

03Configuration

Mode
Match CPOL/CPHA (mode 0–3), bit order and maximum clock rate to the device.
Uno / Nano
MOSI D11, MISO D12, SCK D13; CS example D10.
Transactions
Set device settings, assert CS, transfer bytes, deassert CS. Arduino: beginTransaction/endTransaction.

Datasheets & further reading

Arduino SPI reference