#include #define SLAVE_ADDR 5 // i2c slave address (1) #define LED_PIN 4 void setup() { // put your setup code here, to run once: pinMode(LED_PIN,OUTPUT); Wire.begin(SLAVE_ADDR); // init I2C Slave mode Wire.onReceive(receiveEvent); // register event } void loop() { delay(100); } volatile byte msg = 0; void receiveEvent(int howMany){ while (0 < Wire.available()) { msg = Wire.read(); if (msg == 0){ digitalWrite(LED_PIN, HIGH); }else if (msg == 1){ digitalWrite(LED_PIN, LOW); }else{ msg = 0; } } }