ShopLearnFluxgrid
Support
Lonely Binary
ESP32TinkerBlockProductsFundamentalsTools
AccountCart
I2C
The bus3
01Why a bus02Who starts the talk03The clock
Addresses3
04Addresses05Scanning the bus06Two chips, one address
Talking to a chip2
07Registers: the drawers inside08Reading a temperature
The two wires4
09Why pull-up resistors10How big a pull-up11Too many pull-ups125 V and 3.3 V
All fundamentals →
Fundamentals/I2C/The bus
Chapter · I2C

The bus

Why every module can share two wires, who does the talking on them, and what the clock is for.

3 articlesabout 11 minutesNo board required
  1. 01Why a bus3 minA microcontroller runs out of pins long before you run out of modules to plug into it. I2C connects every one of them with the same two wires, and one more module costs no pins at all.
  2. 02Who starts the talk4 minOn an I2C bus one chip starts every conversation and runs the clock, and every other chip only ever answers. A module with news cannot say so; it waits to be asked.
  3. 03The clock4 minSDA carries the bits and SCL says when to read each one. Without the clock, a long run of zeros has no length a receiver can count, and the clock always comes from the controller.

Start at 01 and read down — the order is the order things get easier in. Or take the one with your part in it; every article stands on its own, and links back to whatever it needs.

← Previous chapterRegulating a rail1 articleNext chapter →Addresses3 articles
Lonely Binary

From Zeros to Heroes, One Bit at a Time.

Sydney, Australia · office@lonelybinary.com

Shop
BoardsKitsSensors & InputDisplaysBest SellersWholesale
Learn
ESP32TinkerBlockProduct handbooksFundamentalsDownloadsProduct codes
Fluxgrid
Get startedCheat sheetDocsLibrary on GitHubPrivacy policy
Help
Contact usDeliveryReturnsWarranty
© 2026 Lonely BinaryTermsRefund policy