Key Engineering Takeaways
- •UART is an asynchronous point-to-point protocol requiring only 2 wires (TX and RX) and a shared Baud rate (e.g. 115200).
- •I2C is a synchronous 2-wire multi-device bus (SDA and SCL) where up to 127 sensor breakout boards share the same two pins via unique 7-bit hexadecimal addresses.
- •SPI is a synchronous 4-wire high-speed master-slave protocol (MOSI, MISO, SCK, CS) capable of 10MHz - 80MHz speeds for displays and SD cards.
- •I2C requires 4.7kΩ pull-up resistors on both SDA and SCL lines because devices use open-drain outputs.
- • Basic Microcontroller GPIO and Digital logic
- • ESP32 / Arduino
- • I2C OLED Display (SSD1306) or MPU6050 IMU
- • SPI SD Card Module
Why Serial Communication? Parallel vs Serial Buses
I2C (Inter-Integrated Circuit 2-Wire Bus)
SPI (Serial Peripheral Interface High-Speed Bus)
Frequently Asked Questions
How do I know what I2C address my sensor is using?
You can flash a simple "I2C Scanner" sketch in Arduino IDE. The MCU scans all 127 possible addresses from 0x01 to 0x7F and prints the detected device address to the Serial Monitor.