> Complete documentation index: [llms.txt](/llms.txt). Markdown versions of all pages are available by appending `.md` to page URLs.

# Dropping Legacy Terminology

> Why Binho docs say controller and target instead of master and slave, with the matching I2C, I3C, SPI and 1-Wire terms and SPI signal names.

Binho documentation, Mission Control 3 and our SDKs use **controller** and **target** for the two roles on a bus. These are the terms of the current I2C and I3C specifications.

| Bus | Legacy terms | Terms we use | Source |
| --- | --- | --- | --- |
| I2C | Master / Slave | Controller / Target | NXP [UM10204](https://www.nxp.com/docs/en/user-guide/UM10204.pdf) *I2C-bus specification and user manual*, Rev. 7.0 (1 October 2021) |
| I3C | Master / Slave | Controller / Target | MIPI Alliance I3C and I3C Basic specifications |
| SPI | Master / Slave | Controller / Target (peripheral) | [OSHWA resolution on SPI signal names](https://oshwa.org/resources/a-resolution-to-redefine-spi-signal-names/) |
| 1-Wire | Master / Slave | Host / Device | Analog Devices (formerly Maxim Integrated) 1-Wire documentation |

:::note
Older datasheets, and some of our older pages for the Binho Nova and Mission Control 2, still use the legacy terms. They mean the same roles: master is the controller, slave is the target.

:::

## SPI Signal Names

| Legacy name | Current name | Meaning |
| --- | --- | --- |
| MOSI (Master Out, Slave In) | SDO on the controller, SDI on the target | Data from the controller to the target |
| MISO (Master In, Slave Out) | SDI on the controller, SDO on the target | Data from the target to the controller |
| SS (Slave Select) | CS (Chip Select) | Selects the target. Usually active low, often drawn C̅S̅. |
| SCK | SCK (unchanged) | Clock, driven by the controller |

SDO and SDI are named from the point of view of the device they are on. Many datasheets and tools, including the SPI tool in Mission Control 3, still label the data lines MOSI and MISO.