   Wire.write(deselectI2C, sizeof(deselectI2C));
   Wire.endTransmission();
   delay(1);
-  //readAndDisplay(3);  
-  
-  delay(1000);
+  //readAndDisplay(3); 
+ 
+  runMsg(); 
+  
+  delay(1000); // for debugging, separate into phases of read/process/wait
 }
 
 

#define PROTO_OVERHEAD 5
// 5 bytes for NDEF header (in URI format)
#define HEADER_LEN 5

  int msgStart = 1 + HEADER_LEN;
  int msgEnd   = 1 + HEADER_LEN + (len-HEADER_LEN);
  
  Wire.requestFrom(NFC_ADDR_7BIT, len+PROTO_OVERHEAD);
  idx = 0;
  while (Wire.available())
  {
    byte b = Wire.read();
    if (idx >= msgStart && idx <= msgEnd)
    {
  //    //Serial.write(b); //TODO process this character
    }
    idx++;
  }
  //Serial.println();  
  //readAndDisplay(len+PROTO_OVERHEAD);
  


// The delays are required, to allow the M24SR time to process commands.

void loop()
{
  //Serial.println("\nstarting");
