     delay(5);
 }
 
+#if defined(__AVR_ATtiny84__) || defined(__AVR_ATtiny85__)
 ISR(INT0_vect) {
     awakems = 0;
 }  
+ISR(PCINT18_vect) {
+    awakems = 0;
+}  
+#else
+void wakeATMega() {
+    awakems = 0;
+}
+#endif
 
 
 ISR(WDT_vect) {


    // read the address pin, establish our role
    role = digitalRead(role_pin) ? role_remote : role_led;
    digitalWrite(role_pin, HIGH);
    
    Serial.begin(9600);
    printf_begin();

	}
        
        awakems += 1;
        if (awakems > 400) {
            sleepNow();
            awakems = 0;
        }
