#include void setup() { Wire.begin(8); // join i2c bus with address #8 Wire.onRequest(requestEvent); // register event pinMode(8, INPUT); // set button as input at pin 5 Serial.begin(9600); // start serial for output } void loop() { delay(100); } // function that executes whenever data is requested by master // this function is registered as an event, see setup() void requestEvent() { if (digitalRead(8)) { Wire.write("0"); } else { Wire.write("1"); } }