   while (!OSD.notInVSync());
   cleanScreen();
   settings.ReadSettings();
+  lastTempUnit = settings.m_tempUnit;
   DISPLAY_NICKNAME_DV = setupPPM(DISPLAY_NICKNAME_DV);
   DISPLAY_TIMER_DV = setupPPM(DISPLAY_TIMER_DV);
   DISPLAY_RC_THROTTLE_DV = setupPPM(DISPLAY_RC_THROTTLE_DV);

    while(NewSerial.available()) serialBuf[recBytes++] = NewSerial.read();
    if(recBytes == 1 && serialBuf[0] != 5)recBytes = 0; // check for start byte, reset if its wrong
    if(recBytes == 2) minBytes = serialBuf[1]+STARTCOUNT+1; // got the transmission length
    if(recBytes == minBytes){
       uint32_t checksum = 0;
       for(i=2;i<minBytes;i++){
          checksum += serialBuf[i];

  DISPLAY_STATS_DV = setupPPM(DISPLAY_STATS_DV);
  DISPLAY_ESC_TEMPERATURE_DV = setupPPM(DISPLAY_ESC_TEMPERATURE_DV);
  NewSerial.begin(115200);
  //delay(5000); // Wait until FC is ready - otherwise we get garbage data; this didn't work. Now trying to throw away data.
}

static int16_t  throttle = 0;
