#include "TinyWireS.h" // wrapper class for I2C slave routines #define I2C_SLAVE_ADDR 0x08 // i2c slave address (8) #define LED1_PIN 4 // ATtiny Pin 3 void setup(){ pinMode(LED1_PIN,OUTPUT); // for general DEBUG use Blink(LED1_PIN,2); // show it's alive TinyWireS.begin(I2C_SLAVE_ADDR); // init I2C Slave mode } void loop(){ byte byteRcvd = 0; if (TinyWireS.available()){ // got I2C input! byteRcvd = TinyWireS.receive(); // get the byte from master if(byteRcvd == 1){ // add 10 to what's received digitalWrite(LED1_PIN,1); }else if(byteRcvd == 2){ digitalWrite(LED1_PIN,0); } } } void Blink(byte led, byte times){ // poor man's display for (byte i=0; i< times; i++){ digitalWrite(led,HIGH); delay (250); digitalWrite(led,LOW); delay (175); } }