 
   // Draw the relevant static content.
   //oC
-  TFTscreen.stroke(WHITE);
+  TFTscreen.stroke(White);
   TFTscreen.setTextSize(1);
-  TFTscreen.text("o", 120, 25);
+  TFTscreen.text("o", TempStartPointX + 76, TempStartPointY - 8);
+  String TempRequested = "";
+  TempRequested += ReqTemp;
+  TFTscreen.text(TempRequested.c_str(), ReqTempStartPointX, ReqTempStartPointY);
+
   TFTscreen.setTextSize(2);
-  TFTscreen.text("c", 124, 29);
+  TFTscreen.text("c", TempStartPointX + 80, TempStartPointY - 4);
+  TFTscreen.text(":", TimeStartPointX + 23, TimeStartPointY);
+
+  TFTscreen.drawLine(0, TFTscreen.height() - 24, TFTscreen.width(), TFTscreen.height() - 24, OffBlack);
+  TFTscreen.drawLine(0, 24, TFTscreen.width(), 24, OffBlack);
+  TFTscreen.drawLine(TFTscreen.width() - 60, 24, TFTscreen.width() - 60, TFTscreen.height() - 24, OffBlack);
+  DrawFire(HeatingOn);
 }
 
 void ReadTemperature()

void Display1(int Pos)
{
  Display8(Pos);
  DisplayTop(Pos, 0x0000);
  DisplayTopLeft(Pos, 0x0000);
  DisplayCenter(Pos, 0x0000);
  DisplayBottom(Pos, 0x0000);
  DisplayBottomLeft(Pos, 0x0000);
}
void Display2(int Pos)
{
  Display8(Pos);
  DisplayTopLeft(Pos, 0x0000);
  DisplayBottomRight(Pos, 0x0000);
}

void Display3(int Pos)
{
  Display8(Pos);
  DisplayTopLeft(Pos, 0x0000);
  DisplayBottomLeft(Pos, 0x0000);
}
void Display4(int Pos)
{
  Display8(Pos);
  DisplayTop(Pos, 0x0000);
  DisplayBottomLeft(Pos, 0x0000);
  DisplayBottom(Pos, 0x0000);
}
void Display5(int Pos)
{
  Display8(Pos);
  DisplayTopRight(Pos, 0x0000);
  DisplayBottomLeft(Pos, 0x0000);
}
void Display6(int Pos)
{
  Display8(Pos);
  DisplayTopRight(Pos, 0x0000);
}
void Display7(int Pos)
{
  Display8(Pos);
  DisplayTopLeft(Pos, 0x0000);
  DisplayCenter(Pos, 0x0000);
  DisplayBottomLeft(Pos, 0x0000);
  DisplayBottom(Pos, 0x0000);
}

void Display8(int Pos)
{
  DisplayTop(Pos, 0xFFFF);
  DisplayTopLeft(Pos, 0xFFFF);
  DisplayTopRight(Pos, 0xFFFF);
  DisplayCenter(Pos, 0xFFFF);
  DisplayBottom(Pos, 0xFFFF);
  DisplayBottomLeft(Pos, 0xFFFF);
  DisplayBottomRight(Pos, 0xFFFF);
}
void Display9(int Pos)
{
  Display8(Pos);
  DisplayBottomLeft(Pos, 0x0000);
}
void Display0(int Pos)
{
  Display8(Pos);
  DisplayCenter(Pos, 0x0000);
}
void DisplayTop(int Pos, uint16_t Color)
{

      //Serial.println("Temp OK");
      double sensorVal = double(DHT.temperature);
      dtostrf(sensorVal, 2, 0, CurrentTemperature);
      if (memcmp(CurrentTemperature, PreviousTemperature, 4) != 0)
      {
        UpdateTemperature();
        // Do we need to turn the heating on?
        if (sensorVal < ReqTemp - 1)  {
          HeatingOn = true;
        }
        if (sensorVal > ReqTemp + 1) {
          HeatingOn = false;
        }
        DrawFire(HeatingOn);
      }
      sensorVal = double(DHT.humidity);
      dtostrf(sensorVal, 2, 0, CurrentHumidity);
  }
}

void ReadTime()
{
  String TimeToDisplay = "";
  if (PreviousHour != hour())
  {
    TimeToDisplay = "";
    TFTscreen.setTextSize(2);
    TFTscreen.stroke(Black);
    TimeToDisplay += Time2Digit(PreviousHour);
    TFTscreen.text(TimeToDisplay.c_str(), TimeStartPointX, TimeStartPointY);

    TimeToDisplay = "";
    TimeToDisplay += Time2Digit(hour());
    TFTscreen.stroke(White);
    TFTscreen.text(TimeToDisplay.c_str(), TimeStartPointX, TimeStartPointY);

    PreviousHour = hour();
  }
  if (PreviousMinute != minute())
  {
    TimeToDisplay = "";
    TFTscreen.setTextSize(2);
    TFTscreen.stroke(Black);
    TimeToDisplay += Time2Digit(PreviousMinute);
    TFTscreen.text(TimeToDisplay.c_str(), TimeStartPointX + 35, TimeStartPointY);

    TimeToDisplay = "";
    TimeToDisplay += Time2Digit(minute());
    TFTscreen.stroke(White);
    TFTscreen.text(TimeToDisplay.c_str(), TimeStartPointX + 35, TimeStartPointY);

    PreviousMinute = minute();

  }
  TimeToDisplay += Time2Digit(hour());
  TimeToDisplay += ":";
  TimeToDisplay += Time2Digit(minute());
  TimeToDisplay += ":";
  TimeToDisplay += Time2Digit(second());
  Serial.println("Time is " + TimeToDisplay);

  // Display the time on the screen.

}

void DrawFire(bool Flame)
{
  //Do we need flame?
  if (Flame)
  {
    TFTscreen.drawBitmap(TFTscreen.width() - 45, 36, CampFireFlames, 40, 44, Red);
  }
  else
  {
    TFTscreen.drawBitmap(TFTscreen.width() - 45, 36, CampFireFlames, 40, 44, Black);
  }

  TFTscreen.drawBitmap(TFTscreen.width() - 45, 80, CampFireLogs, 40, 12, Brown);
}

String Time2Digit(int Number)
{
  String StringToReturn = "";
  if (Number >= 0 && Number < 10) {
    StringToReturn += "0";
  }
  StringToReturn += Number;
  return StringToReturn;
}

void UpdateTemperature()
{
  Serial.println("Temp Diff");
