       status = "Unknown            ";
       break;
   }
-
+  if (!result) {
     temp = DHT22.getCelsius();
     humi = DHT22.getHumidity();
-    attachInterrupt(BackLightTrigger, backLightOn, RISING);
-
+  }
+  return result;
 }
 
 


void publishReadings()
{
    if ((millis() - lastT) > (CHTUPDPERIOD * 1000)) {
        lastT = millis();
        readAM2321();
        char szEventInfo[64];
        sprintf(szEventInfo, "field1=%.1f&field2=%.2f", temp, humi);
        sendToThingSpeak(WRITEKEY,String(szEventInfo));
        Spark.sleep(CHTUPDPERIOD - 30);
    }
}

void backLightOn()
{
    RGB.control(false);
    trigger = millis() + BACKLDUR;
    transfer_command_lcd(0xaf);//--turn on oled panel 

  DHT22.isrCallback();
}

int readAM2321() {
  int lt = millis();
  int result;

  display_string_5x7(6,1,"Reading...");
    DHT22.acquire();
  while (DHT22.acquiring() && (millis() - lt < TIMEOUT))
    ;
  //display_string_5x7(6,1,"Done Read ");
  //delay(500);
  //DHT22.acquire();
  //while (DHT22.acquiring())
