Inter-Integrated Circuit · the two-wire bus

The structured reference for the i2c bus.

Every i2c connector standard, every common sensor and board with its i2c address and voltage, every compatibility pairing — plus interactive tools you'll bookmark: a cross-compatibility checker, a pinout visualizer, and a "which connector for my project" picker.

Interactive tools

i2c tools a chatbot can't replace

Reference

The i2c reference dataset

Guides

i2c guides people actually search for

The basics

What is the i2c bus?

i2c stands for Inter-Integrated Circuit (written i2c or IIC, said "eye-squared-C"). It's a two-wire serial bus: a controller talks to many chips over just SDA (the data line) and SCL (the clock line), plus power and ground. Because one pair of wires can address dozens of devices, i2c is the default way sensors, displays, memory, real-time clocks and GPIO expanders connect to Arduino, Raspberry Pi, ESP32 and nearly every other board. New to it? Start with what is i2c or the byte-level walkthrough in how i2c works.

The bus itself is only half the story. The hobby world wrapped i2c in plug-together connector ecosystems — SparkFun's Qwiic, Adafruit's STEMMA QT, Seeed's Grove, DFRobot's Gravity, Pimoroni's Breakout Garden — and they don't all mate, don't share pin order, and don't agree on voltage. Which cable, which adapter and which combinations are safe is exactly what the compatibility checker and the pairing reference answer.

Every device on the bus answers to a 7-bit i2c address, and that's where projects usually stumble: two sensors claiming the same address, a datasheet quoting 0xEC when the scanner says 0x76, or a mystery part nobody can identify. The i2c address list maps the common ones, and the conflict guide covers running identical devices anyway.

The electrical layer bites too: i2c lines need pull-up resistors, mixing 3.3 V and 5 V logic calls for a level shifter, and every speed grade tightens the wiring rules. Wondering how i2c compares to other buses? See i2c vs SPI vs UART. This site is structured data underneath — one curated dataset generates every standard, board and pairing page, so the reference stays consistent everywhere you land.

The i2c bus is also far bigger than the maker bench. Philips built it in 1982 for television chassis, and today the same two wires run inside nearly every laptop (your touchpad is an I2C HID Device), every monitor cable, and most battery packs — it's arguably the most widely deployed bus in electronics, four decades on.

And when a bus misbehaves, tooling beats guesswork: our free i2c tool scans the bus from a console, reads each chip's WHO_AM_I register to identify what the silicon actually is — telling a genuine BME280 from the BMP280 an Amazon listing shipped you, or an HMC5883L from its QMC5883L clone — and monitors traffic live on Arduino, MicroPython and Raspberry Pi. Wiring problems first? Work the 7-step checklist, then scan the bus.

Quick answers

i2c questions, answered fast

What does i2c stand for?

i2c stands for Inter-Integrated Circuit — a two-wire serial bus invented by Philips (now NXP). It's written i2c, i2c or IIC, and said "eye-squared-C" or "eye-two-see". The two wires are SDA (data) and SCL (clock).

What is i2c used for?

Connecting low-speed peripherals to a microcontroller or single-board computer over two shared wires: temperature and environmental sensors, OLED displays, real-time clocks, EEPROMs, ADCs and GPIO expanders. One i2c bus, dozens of devices, each answering to its own 7-bit address.

How does i2c work?

The controller drives the SCL clock and starts every exchange with a start condition, then sends the 7-bit address of the device it wants. That device acknowledges, and data flows one bit per clock on SDA, most significant bit first, until a stop condition frees the bus. Full walkthrough in our how-i2c-works guide.

What's the difference between Qwiic and STEMMA QT?

They share the identical JST-SH 4-pin connector and pinout, so they plug together freely. The difference is voltage: SparkFun Qwiic is strictly 3.3 V, while Adafruit STEMMA QT boards add on-board level shifting so they tolerate 3.3 V or 5 V hosts.

Do I need pull-up resistors for i2c?

The bus always needs them — SDA and SCL are open-drain and only return high through resistors. In practice most breakout boards include pull-ups, so plug-together chains just work; bare chips on a breadboard need about 4.7 kΩ per line.

How fast is i2c?

Standard-mode runs at 100 kHz and Fast-mode at 400 kHz — where almost all sensor work happens. The spec goes on to 1 MHz (Fast-mode Plus) and 3.4 MHz (High-speed), but for anything bandwidth-hungry like big displays or storage, SPI is the better bus.