Arduino Wire.h Library ((free)) 〈Full — 2026〉
Wire.requestFrom(8, 13); // Request 13 bytes from slave while(Wire.available()) Serial.print((char)Wire.read());
Try the built-in I2C scanner (File → Examples → Wire → Scanner), then hook up a cheap OLED or RTC module. You’ll be amazed at what two wires can do. arduino wire.h library
Serial.println();
You can also make one Arduino act as a slave. This is useful for multi-processor projects. Master Code (Sends a command): #include <Wire.h> void setup() Wire.begin(); Serial.begin(9600); void setup() Wire.begin()
void requestEvent() Wire.write("Hello Master"); void requestEvent() Wire.write("Hello Master")
// Configure sensor (simplified) Wire.beginTransmission(SENSOR_ADDR); Wire.write(0x26); // Control register Wire.write(0xB9); // Active, 128 samples, 2^8mbar max Wire.endTransmission(); delay(100);
void loop() Wire.beginTransmission(8); // Slave address 8 Wire.write("Hello Slave!"); Wire.endTransmission();