 #endif
 
   if (nodeId != NODEID_MASTER)
-    return;
+    return false;
   // val contains requested fan speed percent
-}
-
-static void rf12_doWork(void)
+  return true;
+}
+
+static bool rf12_doWork(void)
 {
   if (rf12_recvDone() && rf12_crc == 0)
   {


void loop(void)
{
  checkTemps();
#ifdef LMREMOTE_SERIAL
  Serial.flush(); delay(2);
#endif
  sleepSeconds(_sleepInterval);
  ++_loopCnt;
}




    unsigned char nodeId = ((rf12_buf[0] & 0x0f) << 2) | (rf12_buf[1] >> 6);
    unsigned int val = (rf12_buf[1] & 0x0f) << 8 | rf12_buf[2];
    return packetReceived(nodeId, val);
  }
  if (_pinLedRx != 0xff) digitalWrite(_pinLedRx, LOW);
  return false;
}

static unsigned int analogReadSleep(unsigned char pin)
{
  _adcBusy = true;
  ADMUX = (DEFAULT << 6) | pin;
  bitSet(ADCSRA, ADIE);
  set_sleep_mode(SLEEPMODE_ADC);
