Temperature Controlled fan using arduino project regarding - LCD not displaying anything I have connected the circuit as per the diagram below and I have got the LCD to display boxes and nothing else. What could be wrong here? Please help! 

Circuit diagram below - 



Code as follows -

#include&lt;DHT11.h&gt;
#include&lt;LiquidCrystal.h&gt;
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
#define dht11pin 12
dht11 DHT11;
#define pwm 9
byte degree[8] =
{
  0b00011,
  0b00011,
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b00000
};
void setup()
{
  lcd.begin(16, 2);
  lcd.createChar(1, degree);
  lcd.clear();
  lcd.print("   Fan Speed  ");
  lcd.setCursor(0, 1);
  lcd.print("  Controlling ");
  delay(2000);
  analogWrite(pwm, 255);
  lcd.clear();
  lcd.print("Our Project ");
  delay(2000);
}

void loop()
{
  DHT11.read(dht11pin);
  int temp = DHT11.temperature;
  lcd.setCursor(0, 0);
  lcd.print("Temperature:");
  lcd.print(temp);
  lcd.write(1);
  lcd.print("C");
  lcd.setCursor(0, 1);
  if (temp &lt; 26 )
  {
    analogWrite(9, 0);
    lcd.print("Fan OFF  ");
    delay(100);
  }
  else if (temp == 26)
  {
    analogWrite(pwm, 51);
    lcd.print("Fan Speed: 20%   ");
    delay(100);
  }
  else if (temp == 27)
  {
    analogWrite(pwm, 102);
    lcd.print("Fan Speed: 40%   ");
    delay(100);
  }
  else if (temp == 28)
  {
    analogWrite(pwm, 153);
    lcd.print("Fan Speed: 60%   ");
    delay(100);
  }
  else if (temp == 29)
  {
    analogWrite(pwm, 204);
    lcd.print("Fan Speed: 80%    ");
    delay(100);
  }
  else if (temp &gt; 29)
  {
    analogWrite(pwm, 255);
    lcd.print("Fan Speed: 100%   ");
    delay(100);
  }
  delay(3000);
}


I used the default LiquidCrystal.h library for this project. Is that wrong?
Your constructor doesn't match your wiring:

LiquidCrystal lcd(7, 6, 5, 4, 3, 2);


You have:

RS = 7
E = 6
D4 = 5
D5 = 4
D6 = 3
D7 = 2


Yet your wiring has:

RS = 2
E = 3
D4 = 4
D5 = 5
D6 = 6
D7 = 7


I.e., completely backwards.

The constructor prototype is:

LiquidCrystal(rs, enable, d4, d5, d6, d7) 


Yet you seem to have chosen to ignore (or misunderstand) that.

Instead you need to specify your pins correctly:

LiquidCrystal(2, 3, 4, 5, 6, 7);


Also, as a side note, you don't have a ground connection to that little 9V circuit off to one side - so you will never be able to control it.  Read this.