
Why is I2C so important?
In modern electronic devices, communication between chips is ubiquitous. For example, your device has dozens of sensors and chips that need to “talk” to each other—the accelerometer needs to inform the processor of the device’s motion state, the touchscreen needs to relay user click information, and the camera needs to transmit image data.
If each connection used independent lines, the inside of the device would become a tangled mess. This is where I2C bus technology shines!
1
The Past and Present of I2C
I2C (Inter-Integrated Circuit) is a two-wire serial communication protocol developed by Philips Semiconductor (now NXP) in 1982.
Its birth was quite dramatic—initially, it was designed to simplify the wiring between chips inside televisions!
Interesting Fact: Early televisions required numerous chips to control audio, video, tuning, and other functions, and traditional parallel buses needed a lot of wiring.
However, I2C solved the problem with just two wires (SDA and SCL), significantly reducing manufacturing costs.
In 2006, Philips Semiconductor was acquired by NXP, and I2C technology continued to evolve. A key decision by Philips was to relinquish the patent rights for I2C, making it an open standard, which directly promoted the global adoption of I2C.
Evolution of I2C Versions:
-
Early: Standard Mode (100kHz)
-
Development: Fast Mode (400kHz), Fast Mode Plus (1MHz)
-
Modern: High-Speed Mode (3.4MHz), Ultra-Fast Mode (5MHz)
2
Widespread Applications of I2C, There’s Something for Everyone
With its simple two-wire architecture and flexible master-slave communication mechanism, I2C has become an indispensable interconnection standard in modern electronic devices.
Let’s take a look at some typical applications:
1) Sensor Field
-
Environmental Monitoring: Temperature and Humidity Sensors (e.g., SHT20), Barometric Pressure Sensors (BMP280)
-
Motion Detection: Accelerometers (MPU6050), Gyroscopes
-
Optical Sensing: Ambient Light Sensors, Proximity Sensors
Case Study: Smart wristbands use I2C to connect multiple sensors, requiring only 4 wires (including power and ground) to collect heart rate, blood oxygen, and motion data.
2) Storage Devices
-
EEPROM Memory (e.g., AT24C series)
-
FRAM Ferroelectric Memory
-
Control Interfaces for Some Flash Memory
Case Study: Digital cameras use I2C to connect EEPROM storage devices for configuration information, ensuring settings are not lost even when power is off.
3) Display Devices
-
OLED Displays (SSD1306 Driver Chip)
-
LCD Character Displays
-
Touchscreen Controllers
Case Study: The Hezhuo Air780EPM connects a small OLED screen via I2C, using only 4 wires to display system status and application information.

4) Power Management
-
Smart Battery Management ICs
-
Voltage/Current Monitoring Chips
-
Power Sequencing Controllers
Case Study: Laptop motherboards use I2C to communicate with power management chips, accurately controlling the power sequencing of each module.
5) Audio Devices
-
Digital Audio Codec
-
Volume Control Chips
-
Audio Processors
Case Study: In-car audio systems control audio processing chips via the I2C bus, enabling dynamic adjustment of volume and sound effects.
3
The Five Convenient Advantages of I2C
1) Extremely Simple Wiring
-
Only two signal lines are needed (SCL clock line and SDA data line)
-
Compared to SPI, which requires at least 4 lines (CS, SCK, MOSI, MISO)
-
Compared to UART, which requires TX and RX lines and can only be point-to-point
2) Multi-Device Support
-
Supports multiple master devices and multiple slave devices (theoretically up to 1008 10-bit address devices)
-
Realizes “selective calling” through address recognition
-
Compared to SPI, where each slave device requires a separate CS line
3) Flexible Speed Selection
-
From standard mode at 100kHz to ultra-fast mode at 5MHz
-
Allows selection of the appropriate rate based on needs, balancing speed and power consumption
4) Built-in Acknowledgment Mechanism
-
Each byte transmission has an ACK/NACK confirmation
-
Ensures data transmission reliability
-
Compared to UART, which lacks a hardware-level confirmation mechanism
5) Clock Synchronization and Arbitration
-
Multiple master devices can share the bus
-
Hardware-level arbitration avoids conflicts
-
Clock stretching supports collaboration between devices operating at different speeds
4
Getting Started with I2C: From Theory to Practice
1) Understanding Basic Concepts of Extremely Simple Wiring
-
Lines and Logic: All devices have open-drain outputs, and pull-up resistors implement “any device pulling low makes the bus low”
-
Master-Slave Architecture: The master device initiates communication, and the slave device responds
-
Address Mechanism: 7-bit (112 addresses) or 10-bit (1008 addresses)
2)Mastering Key Timing for Multi-Device Support
-
START Condition: SDA goes low when SCL is high
-
STOP Condition: SDA goes high when SCL is high
-
Data Valid: SDA is stable when SCL is high
-
Data Change: SDA can only change when SCL is low
-
Memory Mnemonic: “High to Start, Low to Data”
3) Typical Communication Process
-
The master device sends START
-
Sends the slave device address + R/W bit
-
Receives ACK
-
Transmits data (each byte + ACK)
-
Sends STOP
4) Key Points for Hardware Connections
-
SCL and SDA must be connected to pull-up resistors (typically 4.7kΩ)
-
Bus capacitance must not exceed 400pF (reduce pull-up resistor for long distances)
-
Device addresses must not conflict
5) Clock Synchronization and Arbitration Debugging Techniques
-
Use a logic analyzer to capture waveforms
-
Check START/STOP conditions
-
Confirm the address is correct
-
Observe ACK/NACK responses
5
Practical Case: Reading Temperature and Humidity Sensors

The Hezhuo low-power 4G module Air780EPM, supports 1 general I2C1 and 1 reusable I2C0, providing developers with a quick start LuatOS application example that can read sensor data using the I2C protocol and print it out.
For the common SHT20 temperature and humidity sensor:



With the explosive growth of IoT devices, I2C will continue to play an important role due to its simple and reliable characteristics.
Modern modules like the Hezhuo Air780EPM provide excellent support for I2C, allowing developers to easily implement inter-device communication. Mastering I2C not only simplifies your project wiring but also opens the door to various sensors and peripherals.
I believe the best way for me to learn is through practice—at the moment I pick up the development board and an I2C sensor.

▼ Learn More About Hezhuo ▼
4G + Positioning + WiFi + Bluetooth, Air8000 Industrial EngineNew Hezhuo Air8101 Development Board Now Available
Low-Power Open Development New Solution Air780EPM
