 void Flood::sendMultiple(unsigned long data, byte repeats) {
   send(data); 
   for( byte i=1; i < repeats; i++ ) {
-    delay(8); // need a 8ms interval before resend
+    myDelay(8); // need a 8ms interval before resend
     send(data); 
 //    send(K24_REPEAT);
   }
 }
 
-
+int freeRam () {
+  extern int __heap_start, *__brkval;
+  int v;
+  return (int) &v - (__brkval == 0 ? (int) &__heap_start : (int) __brkval);
+}
+

boolean systemReseted() {
  // with EMI, be very sure.
  Metro readTime(DEBOUNCE_TIME);
  readTime.reset();
  while( !readTime.check() ) systemReset.update();

  // at system power up, relay is open, meaning pin will read HIGH.


  if ( networkTimeout.check() ) {
    Serial << F("Network timeout.") << endl;
    Serial << F("Free RAM: ") << freeRam() << endl;
    networkTimedOut = true;
  }
  if( systemResetFlag ) {
