Issue with getting lcd to display

So this is the code i’ve been running to display sensor data in node red. My issue now is getting the sensor reading to show correctly on a 16,2 lcd. I have my lcd print come up but it wont show my sensor readings. This is the code im running

#include <Adafruit_MAX31855.h>

#include <SPI.h>

// Include the libraries we need
#include <OneWire.h>
#include <DallasTemperature.h>


// Data wire is plugged into port 2 on the Arduino
#define ONE_WIRE_BUS 8
#define TEMPERATURE_PRECISION 9

// Setup a oneWire instance to communicate with any OneWire devices (not just Maxim/Dallas temperature ICs)
OneWire oneWire(ONE_WIRE_BUS);

// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);

// arrays to hold device addresses
//DeviceAddress outdoor, ahu_s, ahu_r, waterheater, boiler_s, boiler_r, heatpump_s, heatpump_l;

// Assign address manually. The addresses below will beed to be changed
// to valid device addresses on your bus. Device address can be retrieved
// by using either oneWire.search(deviceAddress) or individually via
// sensors.getAddress(deviceAddress, index);
 DeviceAddress waterheater = { 0x28, 0x7C, 0x00, 0x43, 0x98, 0x22, 0x00, 0xCE };
 DeviceAddress boiler_r   = { 0x28, 0x92, 0x1C, 0x43, 0x98, 0x24, 0x00, 0x03 };
 DeviceAddress boiler_s   = { 0x28, 0xCD, 0x13, 0x43, 0x98, 0x25, 0x00, 0xA2 }; 
 DeviceAddress heatpump_l   = { 0x28, 0x2B, 0x25, 0x43, 0x98, 0x18, 0x00, 0x85 };
 DeviceAddress heatpump_s   = { 0x28, 0xC6, 0x1F, 0x43, 0x98, 0x08, 0x00, 0x33 };
 DeviceAddress outdoor   = { 0x28, 0x5D, 0x22, 0x43, 0x98, 0x24, 0x00, 0x9E };
 DeviceAddress ahu_s   = { 0x28, 0x3B, 0x0B, 0x43, 0x98, 0xFF, 0x00, 0x9F };
 DeviceAddress ahu_r   = { 0x28, 0x27, 0x02, 0x43, 0x98, 0x25, 0x00, 0xF5 };


int thermoDO = 5;
int thermoCS = 4;
int thermoCLK = 3;
Adafruit_MAX31855 thermocouple(thermoCLK, thermoCS, thermoDO);






void setup(void)
{

  // start serial port
  Serial.begin(9600);
  delay(500);
  //Serial.println(" ");

  // Start up the library
  sensors.begin();


  if (!sensors.getAddress(waterheater, 0));
  if (!sensors.getAddress(boiler_r, 1));
  if (!sensors.getAddress(boiler_s, 2));
  if (!sensors.getAddress(heatpump_l, 3));
  if (!sensors.getAddress(heatpump_s, 4));
  if (!sensors.getAddress(outdoor, 5));
  if (!sensors.getAddress(ahu_s, 6));
  if (!sensors.getAddress(ahu_r, 7));



  sensors.setResolution(outdoor, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_s, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_r, TEMPERATURE_PRECISION);
  sensors.setResolution(waterheater, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_s, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_r, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_s, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_l, TEMPERATURE_PRECISION);

}

// function to print the temperature for a device
void printTemperature(DeviceAddress deviceAddress)
{
  float tempC = sensors.getTempC(deviceAddress);

  Serial.print(DallasTemperature::toFahrenheit(tempC));
}

void printResolution(DeviceAddress deviceAddress)
{
  Serial.print(sensors.getResolution(deviceAddress));
}

// main function to print information about a device
void printData(DeviceAddress deviceAddress)
{

  printTemperature(deviceAddress);
  Serial.println();
}


void loop(void)
{

  sensors.requestTemperatures();

  // print the device information
  Serial.print("outdoor ");
  printData(outdoor);
  delay(500);
  Serial.print("ahu_s ");
  printData(ahu_s);
  delay(500);
  Serial.print("ahu_r ");
  printData(ahu_r);
  delay(500);
  Serial.print("waterheater ");
  printData(waterheater);
  delay(500);
  Serial.print("boiler_s ");
  printData(boiler_s);
  delay(500);
  Serial.print("boiler_r ");
  printData(boiler_r);
  delay(500);
  Serial.print("heatpump_s ");
  printData(heatpump_s);
  delay(500);
  Serial.print("heatpump_l ");
  printData(heatpump_l);
  delay(500);

  
float sensorVoltage = analogRead(0);   // read the sensor voltage
int psi = ((sensorVoltage-95)/204)*50;



Serial.print("PSI  ");
Serial.println (psi);

delay (500);

double f = thermocouple.readFarenheit();



  
    Serial.print("FLUE  ");
    Serial.println(thermocouple.readFarenheit());
    delay(60000);
    Serial.println();


}

I know this doesnt show the lcd in the code. If needed i can post the code that has it.

metallica21156:
I know this doesnt show the lcd in the code. If needed i can post the code that has it.

Posting the code which is failing would be a reasonable thing to do. Use code tags to get this effect:

// my code in a small window without unwanted formatting etc.
#include <LiquidCrystal.h>
const int rs = 12, en = 11, d4 = 10, d5 = 9, d6 = 7, d7 = 6;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
#include <Adafruit_MAX31855.h>

#include <SPI.h>

// Include the libraries we need
#include <OneWire.h>
#include <DallasTemperature.h>


// Data wire is plugged into port 8 on the Arduino
#define ONE_WIRE_BUS 8
#define TEMPERATURE_PRECISION 9

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);


 DeviceAddress waterheater = { 0x28, 0x7C, 0x00, 0x43, 0x98, 0x22, 0x00, 0xCE };
 DeviceAddress boiler_r   = { 0x28, 0x92, 0x1C, 0x43, 0x98, 0x24, 0x00, 0x03 };
 DeviceAddress boiler_s   = { 0x28, 0xCD, 0x13, 0x43, 0x98, 0x25, 0x00, 0xA2 }; 
 DeviceAddress heatpump_l   = { 0x28, 0x2B, 0x25, 0x43, 0x98, 0x18, 0x00, 0x85 };
 DeviceAddress heatpump_s   = { 0x28, 0xC6, 0x1F, 0x43, 0x98, 0x08, 0x00, 0x33 };
 DeviceAddress outdoor   = { 0x28, 0x5D, 0x22, 0x43, 0x98, 0x24, 0x00, 0x9E };
 DeviceAddress ahu_s   = { 0x28, 0x3B, 0x0B, 0x43, 0x98, 0xFF, 0x00, 0x9F };
 DeviceAddress ahu_r   = { 0x28, 0x27, 0x02, 0x43, 0x98, 0x25, 0x00, 0xF5 };


int thermoDO = 5;
int thermoCS = 4;
int thermoCLK = 3;
Adafruit_MAX31855 thermocouple(thermoCLK, thermoCS, thermoDO);






void setup(void)
{

  lcd.begin( 16, 2 );
   lcd.setCursor( 0, 0 );   //top left
   
   lcd.setCursor( 0, 1 );   //bottom left


  Serial.begin(9600);
  
    lcd.begin(16,2);
    lcd.print("Starting Up");
  delay(500);

  sensors.begin();

  if (!sensors.getAddress(waterheater, 0));
  if (!sensors.getAddress(boiler_r, 1));
  if (!sensors.getAddress(boiler_s, 2));
  if (!sensors.getAddress(heatpump_l, 3));
  if (!sensors.getAddress(heatpump_s, 4));
  if (!sensors.getAddress(outdoor, 5));
  if (!sensors.getAddress(ahu_s, 6));
  if (!sensors.getAddress(ahu_r, 7));

  

  // set the resolution to 9 bit per device
  sensors.setResolution(outdoor, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_s, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_r, TEMPERATURE_PRECISION);
  sensors.setResolution(waterheater, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_s, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_r, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_s, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_l, TEMPERATURE_PRECISION);


void printTemperature(DeviceAddress deviceAddress)
{
  float tempC = sensors.getTempC(deviceAddress);

  Serial.print(DallasTemperature::toFahrenheit(tempC));
}

void printResolution(DeviceAddress deviceAddress)
{
  Serial.print(sensors.getResolution(deviceAddress));
}

void printData(DeviceAddress deviceAddress)
{

  printTemperature(deviceAddress);
  Serial.println();
}


void loop(void)
{

  sensors.requestTemperatures();

  // print the device information
  Serial.print("outdoor ");
  printData(outdoor);
  lcd.setCursor( 0, 0 );
  lcd.print("Outdoor");
  lcd.setCursor( 0, 1 );
  delay(5000);
  lcd.clear();
  Serial.print("ahu_s ");
  lcd.setCursor( 0, 0 );
  lcd.print("AHU Supply");
  lcd.setCursor( 0, 1 );
  delay(5000);
  lcd.clear();
  Serial.print("ahu_r ");
  lcd.setCursor( 0, 0 );
  lcd.print("AHU Return");
  delay(5000);
  lcd.clear();
  Serial.print("waterheater ");
  lcd.setCursor( 0, 0 );
  lcd.print("Water Heater");
  lcd.setCursor( 0, 1 );
  delay(5000);
  lcd.clear();
  Serial.print("boiler_s ");
  lcd.setCursor( 0, 0 );
  lcd.print("Boiler Supply");
  lcd.setCursor( 0, 1 );
  delay(5000);
  lcd.clear();
  Serial.print("boiler_r ");
  printData(boiler_r);
  lcd.setCursor( 0, 0 );
  lcd.print("Boiler Return");
  lcd.setCursor( 0, 1 );
  delay(5000);
  lcd.clear();
  Serial.print("heatpump_s ");
  lcd.setCursor( 0, 0 );
  lcd.print("Heatpump Suction");
  printData(heatpump_s);
  delay(5000);
  lcd.clear();
  Serial.print("heatpump_l ");
  printData(heatpump_l);
  lcd.setCursor( 0, 0 );
  lcd.print("Heatpump Liquid");
  lcd.setCursor( 0, 1 );
  delay(5000);
  lcd.clear();

  
float sensorVoltage = analogRead(0);   // read the sensor voltage
int psi = ((sensorVoltage-95)/204)*50;



Serial.print("PSI  ");
Serial.println (psi);
lcd.setCursor( 0, 0 );
lcd.print("PSI ");
lcd.setCursor( 0, 1 );
lcd.println (psi);
delay (5000);
lcd.clear();

double f = thermocouple.readFarenheit();



  
    Serial.print("FLUE  ");
    lcd.setCursor( 0, 0 );
    lcd.print("Flue Temp ");
    lcd.setCursor( 0, 1 );
    lcd.println(thermocouple.readFarenheit());
    Serial.println(thermocouple.readFarenheit());
    delay(6000);
    Serial.println();
    lcd.clear();


}

It is not clear from your problem description if there is a total failure to display anything on the lcd or just the sensor readings.

Does this line in setup() print to the display ?

lcd.print("Starting Up");

If there is a general problem printing to the display, then a create a simple stand alone sketch which attempts just to print "Hello World!" to the display and base it on a simple example from the LCD library you are using.

I get the display to show anything that i put as a lcd.print(" ");
my issue is getting the sensor data to show. At the bottom of the code i have psi and the thermocouple. Both of them do display their readings just fine. The only issue im having with them is i get 2 extra symbols after my sensor reading and im not sure why. How ever im unable to get data from any of the other sensors to display.

 lcd.println(thermocouple.readFarenheit());

The println() function is not supported in most LCD libraries. The symbols that you see are the ‘\n’ (line feed) and ‘\r’ (carriage return) characters.

Ok so removing the println and putting just print in should take care of that?
I can live with that though. Its more of a issue now of just getting the sensors to read.

How do i get the sensors im using to display to the lcd with the code im running?

You are printing titles to the first line of the lcd, for example “AHU supply” but no value on the second line, then after 5 seconds you clear the display.
Can you show an example in your code where a Serial.print (or println) to the serial console works but the equivalent attempt to print the same value to the lcd fails?

The reason i dont have a line there is because i dont know what to put. If i put lcd.print it doesnt like it.

This is the error i get. Arduino: 1.8.8 (Linux), Board: "Arduino Nano, ATmega328P (Old Bootloader)

"exit status 1
no matching function for call to ‘print(DeviceAddress)’ "

#include <LiquidCrystal.h>
const int rs = 12, en = 11, d4 = 10, d5 = 9, d6 = 7, d7 = 6;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
#include <Adafruit_MAX31855.h>

#include <SPI.h>

// Include the libraries we need
#include <OneWire.h>
#include <DallasTemperature.h>


#define ONE_WIRE_BUS 8
#define TEMPERATURE_PRECISION 9

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);


 DeviceAddress waterheater = { 0x28, 0x7C, 0x00, 0x43, 0x98, 0x22, 0x00, 0xCE };
 DeviceAddress boiler_r   = { 0x28, 0x92, 0x1C, 0x43, 0x98, 0x24, 0x00, 0x03 };
 DeviceAddress boiler_s   = { 0x28, 0xCD, 0x13, 0x43, 0x98, 0x25, 0x00, 0xA2 }; 
 DeviceAddress heatpump_l   = { 0x28, 0x2B, 0x25, 0x43, 0x98, 0x18, 0x00, 0x85 };
 DeviceAddress heatpump_s   = { 0x28, 0xC6, 0x1F, 0x43, 0x98, 0x08, 0x00, 0x33 };
 DeviceAddress outdoor   = { 0x28, 0x5D, 0x22, 0x43, 0x98, 0x24, 0x00, 0x9E };
 DeviceAddress ahu_s   = { 0x28, 0x3B, 0x0B, 0x43, 0x98, 0xFF, 0x00, 0x9F };
 DeviceAddress ahu_r   = { 0x28, 0x27, 0x02, 0x43, 0x98, 0x25, 0x00, 0xF5 };


int thermoDO = 5;
int thermoCS = 4;
int thermoCLK = 3;
Adafruit_MAX31855 thermocouple(thermoCLK, thermoCS, thermoDO);






void setup(void)
{

  lcd.begin( 16, 2 );
   //Print some initial text to the LCD.
   lcd.setCursor( 0, 0 );   //top left
   
   lcd.setCursor( 0, 1 );   //bottom left
  Serial.begin(9600);
  
    lcd.begin(16,2);
    lcd.print("Starting Up");
  delay(500);

  sensors.begin();

  
  if (!sensors.getAddress(waterheater, 0));
  if (!sensors.getAddress(boiler_r, 1));
  if (!sensors.getAddress(boiler_s, 2));
  if (!sensors.getAddress(heatpump_l, 3));
  if (!sensors.getAddress(heatpump_s, 4));
  if (!sensors.getAddress(outdoor, 5));
  if (!sensors.getAddress(ahu_s, 6));
  if (!sensors.getAddress(ahu_r, 7));

  sensors.setResolution(outdoor, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_s, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_r, TEMPERATURE_PRECISION);
  sensors.setResolution(waterheater, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_s, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_r, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_s, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_l, TEMPERATURE_PRECISION);


}

void printTemperature(DeviceAddress deviceAddress)
{
  float tempC = sensors.getTempC(deviceAddress);

  Serial.print(DallasTemperature::toFahrenheit(tempC));
}

void printResolution(DeviceAddress deviceAddress)
{
  Serial.print(sensors.getResolution(deviceAddress));
}

void printData(DeviceAddress deviceAddress)
{

  printTemperature(deviceAddress);
  Serial.println();
}

void loop(void)
{
  sensors.requestTemperatures();


  Serial.print("outdoor ");
  printData(outdoor);
  lcd.setCursor( 0, 0 );
  lcd.print("Outdoor");
  lcd.setCursor( 0, 1 );
  lcd.print(outdoor);
  delay(5000);
  lcd.clear();
  Serial.print("ahu_s ");
  print.Data(ahu_s);
  lcd.setCursor( 0, 0 );
  lcd.print("AHU Supply");
  lcd.setCursor( 0, 1 );
  lcd.print(ahu_s);
  delay(5000);
  lcd.clear();
  Serial.print("ahu_r ");
  printData(ahu_r);
  lcd.setCursor( 0, 0 );
  lcd.print("AHU Return");
  lcd.print(ahu_r);
  delay(5000);
  lcd.clear();
  Serial.print("waterheater ");
  printData(waterheater);
  lcd.setCursor( 0, 0 );
  lcd.print("Water Heater");
  lcd.setCursor( 0, 1 );
  lcd.print(waterheater);
  delay(5000);
  lcd.clear();
  Serial.print("boiler_s ");
  printData(boiler_s);
  lcd.setCursor( 0, 0 );
  lcd.print("Boiler Supply");
  lcd.setCursor( 0, 1 );
  lcd.print(boiler_s);
  delay(5000);
  lcd.clear();
  Serial.print("boiler_r ");
  printData(boiler_r);
  lcd.setCursor( 0, 0 );
  lcd.print("Boiler Return");
  lcd.setCursor( 0, 1 );
  lcd.print(boiler_r);
  delay(5000);
  lcd.clear();
  Serial.print("heatpump_s ");
  printData(heatpump_s);
  lcd.setCursor( 0, 0 );
  lcd.print("Heatpump Suction");
  lcd.print(heatpump_s);
  delay(5000);
  lcd.clear();
  Serial.print("heatpump_l ");
  printData(heatpump_l);
  lcd.print(heatpump_l);
  lcd.setCursor( 0, 0 );
  lcd.print("Heatpump Liquid");
  lcd.setCursor( 0, 1 );
  lcd.print(heatpump_l);
  delay(5000);
  lcd.clear();

  
float sensorVoltage = analogRead(0);   // read the sensor voltage
int psi = ((sensorVoltage-95)/204)*50;



Serial.print("PSI  ");
Serial.print (psi);
lcd.setCursor( 0, 0 );
lcd.print("PSI ");
lcd.setCursor( 0, 1 );
lcd.print (psi);
delay (5000);
lcd.clear();

double f = thermocouple.readFarenheit();



  
    Serial.print("FLUE  ");
    lcd.setCursor( 0, 0 );
    lcd.print("Flue Temp ");
    lcd.setCursor( 0, 1 );
    lcd.print(thermocouple.readFarenheit());
    Serial.print(thermocouple.readFarenheit());
    delay(6000);
    Serial.println();
    lcd.clear();


}

I ended up using this for code and got it all working just fine.

#include <LiquidCrystal.h>
const int rs = 12, en = 11, d4 = 10, d5 = 9, d6 = 7, d7 = 6;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
#include <Adafruit_MAX31855.h>

#include <SPI.h>

// Include the libraries we need
#include <OneWire.h>
#include <DallasTemperature.h>


#define ONE_WIRE_BUS 8
#define TEMPERATURE_PRECISION 9

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);


 DeviceAddress waterheater = { 0x28, 0x7C, 0x00, 0x43, 0x98, 0x22, 0x00, 0xCE };
 DeviceAddress boiler_r   = { 0x28, 0x92, 0x1C, 0x43, 0x98, 0x24, 0x00, 0x03 };
 DeviceAddress boiler_s   = { 0x28, 0xCD, 0x13, 0x43, 0x98, 0x25, 0x00, 0xA2 };
 DeviceAddress heatpump_l   = { 0x28, 0x2B, 0x25, 0x43, 0x98, 0x18, 0x00, 0x85 };
 DeviceAddress heatpump_s   = { 0x28, 0xC6, 0x1F, 0x43, 0x98, 0x08, 0x00, 0x33 };
 DeviceAddress outdoor   = { 0x28, 0x5D, 0x22, 0x43, 0x98, 0x24, 0x00, 0x9E };
 DeviceAddress ahu_s   = { 0x28, 0x3B, 0x0B, 0x43, 0x98, 0xFF, 0x00, 0x9F };
 DeviceAddress ahu_r   = { 0x28, 0x27, 0x02, 0x43, 0x98, 0x25, 0x00, 0xF5 };


int thermoDO = 5;
int thermoCS = 4;
int thermoCLK = 3;
Adafruit_MAX31855 thermocouple(thermoCLK, thermoCS, thermoDO);



void setup(void)
{
  pinMode(3, OUTPUT);
  analogWrite(3, 0);

  lcd.begin( 16, 2 );

  Serial.begin(9600);
 
    lcd.begin(16,2);
    lcd.clear();
    lcd.setCursor( 0, 0 );
    lcd.print("Starting Up");
    lcd.setCursor( 0, 1 );
    lcd.print("Boiler SensorsV1"); 
  delay(10000);
  lcd.clear();

  sensors.begin();

 
  if (!sensors.getAddress(waterheater, 0));
  if (!sensors.getAddress(boiler_r, 1));
  if (!sensors.getAddress(boiler_s, 2));
  if (!sensors.getAddress(heatpump_l, 3));
  if (!sensors.getAddress(heatpump_s, 4));
  if (!sensors.getAddress(outdoor, 5));
  if (!sensors.getAddress(ahu_s, 6));
  if (!sensors.getAddress(ahu_r, 7));

  sensors.setResolution(outdoor, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_s, TEMPERATURE_PRECISION);
  sensors.setResolution(ahu_r, TEMPERATURE_PRECISION);
  sensors.setResolution(waterheater, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_s, TEMPERATURE_PRECISION);
  sensors.setResolution(boiler_r, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_s, TEMPERATURE_PRECISION);
  sensors.setResolution(heatpump_l, TEMPERATURE_PRECISION);


}

void printTemperature(DeviceAddress deviceAddress)
{
  float tempC = sensors.getTempC(deviceAddress);

  Serial.print(DallasTemperature::toFahrenheit(tempC));
}

void printResolution(DeviceAddress deviceAddress)
{
  Serial.print(sensors.getResolution(deviceAddress));
}

void printData(DeviceAddress deviceAddress)
{

  printTemperature(deviceAddress);
  Serial.println();
  
}

void loop()
{
  float tempF0 = 0;
float tempC0 = 0;
float tempF1 = 1;
float tempC1 = 1;
float tempF2 = 2;
float tempC2 = 2;
float tempF3 = 3;
float tempC3 = 3;
float tempF4 = 4;
float tempC4 = 4;
float tempF5 = 5;
float tempC5 = 5;
float tempF6 = 6;
float tempC6 = 6;
float tempF7 = 7;
float tempC7 = 7;
  
  sensors.requestTemperatures();
  tempC0 = sensors.getTempCByIndex(tempC0);
  tempF0 = sensors.toFahrenheit(tempC0);
  tempC1 = sensors.getTempCByIndex(tempC1);
  tempF1 = sensors.toFahrenheit(tempC1);
  tempC2 = sensors.getTempCByIndex(tempC2);
  tempF2 = sensors.toFahrenheit(tempC2);
  tempC3 = sensors.getTempCByIndex(tempC3);
  tempF3 = sensors.toFahrenheit(tempC3);
  tempC4 = sensors.getTempCByIndex(tempC4);
  tempF4 = sensors.toFahrenheit(tempC4);
  tempC5 = sensors.getTempCByIndex(tempC5);
  tempF5 = sensors.toFahrenheit(tempC5);
  tempC6 = sensors.getTempCByIndex(tempC6);
  tempF6 = sensors.toFahrenheit(tempC6);
  tempC7 = sensors.getTempCByIndex(tempC7);
  tempF7 = sensors.toFahrenheit(tempC7);
 


  Serial.print("outdoor ");
  printData(outdoor);
  lcd.setCursor( 0, 0 );
  lcd.print("Outdoor ");
  lcd.setCursor( 0, 1 );
    lcd.print(tempF5);
    lcd.print(" Degrees F");
    delay(5000);
  lcd.clear();
  Serial.print("ahu_s ");
  printData(ahu_s);
  lcd.setCursor( 0, 0 );
  lcd.print("AHU Supply");
  lcd.setCursor( 0, 1 );
  lcd.print(tempF6);
     lcd.print(" Degrees F");
    delay(5000);
  lcd.clear();
  Serial.print("ahu_r ");
  printData(ahu_r);
  lcd.setCursor( 0, 0 );
  lcd.print("AHU Return");
  lcd.setCursor( 0, 1 );
  lcd.print(tempF7);
     lcd.print(" Degrees F");
  delay(5000);
  lcd.clear();
  Serial.print("waterheater ");
  printData(waterheater);
  lcd.setCursor( 0, 0 );
  lcd.print("Water Heater");
  lcd.setCursor( 0, 1 );
  lcd.print(tempF0);
     lcd.print(" Degrees F");
    delay(5000);
  lcd.clear();
  Serial.print("boiler_s ");
  printData(boiler_s);
  lcd.setCursor( 0, 0 );
  lcd.print("Boiler Supply");
  lcd.setCursor( 0, 1 );
  lcd.print(tempF2);
     lcd.print(" Degrees F");
    delay(5000);
  lcd.clear();
  Serial.print("boiler_r ");
  printData(boiler_r);
  lcd.setCursor( 0, 0 );
  lcd.print("Boiler Return");
  lcd.setCursor( 0, 1 );
  lcd.print(tempF1);
     lcd.print(" Degrees F");
    delay(5000);
  lcd.clear();
  Serial.print("heatpump_s ");
  printData(heatpump_s);
  lcd.setCursor( 0, 0 );
  lcd.print("Heatpump Suction");
  lcd.setCursor( 0, 1 );
  lcd.print(tempF4);
     lcd.print(" Degrees F");
    delay(5000);
  lcd.clear();
  Serial.print("heatpump_l ");
  printData(heatpump_l);
  lcd.setCursor( 0, 0 );
  lcd.print("Heatpump Liquid");
  lcd.setCursor( 0, 1 );
  lcd.print(tempF3);
     lcd.print(" Degrees F");
    delay(5000);
  lcd.clear();

 
float sensorVoltage = analogRead(0);   // read the sensor voltage
int psi = ((sensorVoltage-95)/204)*50;



Serial.print("PSI  ");
Serial.print (psi);
lcd.setCursor( 0, 0 );
lcd.print("Boiler Pressure ");
lcd.setCursor( 0, 1 );
lcd.print (psi);
lcd.print(" PSI");
delay (5000);
lcd.clear();
Serial.println();

double f = thermocouple.readFarenheit();

 
    Serial.print("FLUE  ");
    lcd.setCursor( 0, 0 );
    lcd.print("Flue Temp ");
    lcd.setCursor( 0, 1 );
    lcd.print(thermocouple.readFarenheit());
       lcd.print(" Degrees F");
    Serial.print(thermocouple.readFarenheit());
    delay(5000);
    Serial.println();
    lcd.clear();

}