Project for measuring temperature and humidity

Hello. I need help for the project I am working on. I need a code to connect the lcd i2c screen with bluetooth hc06 to display the temperature and humidity received from the transmitter which consists of dht22 and hc05. Please help me because I need to complete my graduation project.

zualfikar:
Please help me because I need to complete my graduation project.

The level of help will be inversely proportional to the level at which you're graduating. If you're getting a B degree in electrical or computer engineering, you should be in a position to do the whole thing yourself, perhaps with some very specific help on specific things where you get stuck. An engineering undergrad wouldn't ask on a civil engineering forum for help in designing a bridge, at least not by saying I have some sand and stone and cement, help me.

On the other hand if you're graduating from high school, you'll get a higher level of help.

But whatever, you should probably say what you've tried so far....

What is it that you need help with? Can you print to the LCD? What LCD are you using? Can you read the DHT22? Can you send and receive data via Bluetooth? Which Arduinos are you using? What have you tried?

Please post a schematic to your project and the code that you have tried. Describe what the code actually does and how that differs from what you want the code to do. Please read the "how to use this forum-please read" stickies to see how to format and post code and some hints about what we need to know in order to help you. We will help, but you must do the work.

I guess you didn't bother to read most of wvmarle's reply in the other thread:

wvmarle:
You'd better have this moved to the project guidance section, and post the code you have with explanation of what works, what doesn't work, and what it should do. Maybe also add your circuit diagrams, always helpful.

  • You were recommended to have the thread moved, not cross post.
  • You were asked to add the information we would need to have any chance at helping you. Instead you just did a copy paste.

If this is the best you can do then you don't deserve to graduate.

I'm very keen to know at what level you're graduating. If it's from a uni or post high-school college in an engineering or technical discipline, I would be very disappointed in that institution's academic level. This project, given there is an Arduino library extant for every component, is well within the scope of any Arduino hobbyist once they got past Blink.

I am a final stage in the engineering of computer technology and I have taken a good step in the project but I have had a problem getting data and displaying it on the screen

zualfikar:
I have taken a good step in the project

Great, so post the code you have so far, post the circuit, and explain what this actually means:

zualfikar:
I have had a problem getting data and displaying it on the screen

(I stand by what I said: no way is this project worthy of final year engineering undergrad. This is hobby level stuff.)

groundFungus:
What is it that you need help with? Can you print to the LCD? What LCD are you using? Can you read the DHT22? Can you send and receive data via Bluetooth? Which Arduinos are you using? What have you tried?

Please post a schematic to your project and the code that you have tried. Describe what the code actually does and how that differs from what you want the code to do. Please read the "how to use this forum-please read" stickies to see how to format and post code and some hints about what we need to know in order to help you. We will help, but you must do the work.

I have turned on dht22 and connected Bluetooth and the correspondent and received them and reached the stage for the last display of the data received on the screen lcdi2c Use for Arduino uno

What I2C LCD library are you using? Have you tried to run a "hello world" example from the library? Can you print anything to the LCD?

pert:
I guess you didn't bother to read most of wvmarle's reply in the other thread:

  • You were recommended to have the thread moved, not cross post.
  • You were asked to add the information we would need to have any chance at helping you. Instead you just did a copy paste.
    [/list
    If this is the best you can do then you don't deserve to graduate.

Why do not you deserve to graduate ?! I sent and explained all the information but I do not have a planner now on my phone

groundFungus:
What I2C LCD library are you using? Have you tried to run a "hello world" example from the library? Can you print anything to the LCD?

Yes I did but nothing appears on the screen

Then you need to tell us which LCD you have, show us how the LCD is connected to your Uno and the code that you tried.

That is 3 times that I have asked which LCD that you are using.
If you read our questions and try to answer all of them it would make this go a bit faster. When I get tired of asking the same question over and over I will just leave you to it.

The I2C LCD libraries are ambiguous aren't they? There's more than one with the identical name, and I for one have no clue how to distinguish. I was lucky and started off with the right one.

zualfikar:
Yes I did but nothing appears on the screen

Then work on that. There's no point whatsoever posting about this being a dht / bluetooth project if the screen itself isn't working. Set up a test rig with ONLY the lcd on the Arduino, and then you'll know that the dht / bluetooth stuff (hardware or libraries) isn't clouding the issue. Then when you are confident the LCD is working (right library, right connections etc etc) transfer that wisdom to the main project.

wilfredmedlin, have you tried the hd44780 library? It is my new goto for HD44780 controller based character displays. It auto detects the display I2C address and the wiring from the I2C expander to the LCD plus a lot more. Very cool library.

groundFungus:
Then you need to tell us which LCD you have, show us how the LCD is connected to your Uno and the code that you tried.

That is 3 times that I have asked which LCD that you are using.
If you read our questions and try to answer all of them it would make this go a bit faster. When I get tired of asking the same question over and over I will just leave you to it.

Use lcd 20 * 4 with i2c to connect to arduino uno
vcc-vcc
Gnd-Gnd
SDA-A4
SCL-A5

groundFungus:
wilfredmedlin, have you tried the hd44780 library?

I haven't, no, but I do believe I read about it. Seeing as I lucked on the right one, I thought I'd go with the "it's not broken, don't fix it" approach! But thanks.

The first thing that I do when I have trouble with an I2C device is to run the I2C scanner to confirm the I2C address of the device and to confirm that the device will communicate over the I2C bus.

Load this I2C scanner sketch and please report the results (copy and post the serial monitor output). Note that you need to set the serial monitor baud rate to 115200.

// I2C scanner by Nick Gammon.  Thanks Nick.

#include <Wire.h>

void setup() {
  Serial.begin (115200); //*****  make sure serial monitor baud matches *****

  // Leonardo: wait for serial port to connect
  while (!Serial) 
    {
    }

  Serial.println ();
  Serial.println ("I2C scanner. Scanning ...");
  byte count = 0;
  
  Wire.begin();
  for (byte i = 1; i < 120; i++)
  {
    Wire.beginTransmission (i);
    if (Wire.endTransmission () == 0)
      {
      Serial.print ("Found address: ");
      Serial.print (i, DEC);
      Serial.print (" (0x");
      Serial.print (i, HEX);
      Serial.println (")");
      count++;
      delay (1);  // maybe unneeded?
      } // end of good response
  } // end of for loop
  Serial.println ("Done.");
  Serial.print ("Found ");
  Serial.print (count, DEC);
  Serial.println (" device(s).");
}  // end of setup

void loop() {}

groundFungus:
The first thing that I do when I have trouble with an I2C device is to run the I2C scanner to confirm the I2C address of the device and to confirm that the device will communicate over the I2C bus.

Load this I2C scanner sketch and please report the results (copy and post the serial monitor output). Note that you need to set the serial monitor baud rate to 115200.

// I2C scanner by Nick Gammon.  Thanks Nick.

#include <Wire.h>

void setup() {
  Serial.begin (115200); //*****  make sure serial monitor baud matches *****

// Leonardo: wait for serial port to connect
  while (!Serial)
    {
    }

Serial.println ();
  Serial.println ("I2C scanner. Scanning ...");
  byte count = 0;
 
  Wire.begin();
  for (byte i = 1; i < 120; i++)
  {
    Wire.beginTransmission (i);
    if (Wire.endTransmission () == 0)
      {
      Serial.print ("Found address: ");
      Serial.print (i, DEC);
      Serial.print (" (0x");
      Serial.print (i, HEX);
      Serial.println (")");
      count++;
      delay (1);  // maybe unneeded?
      } // end of good response
  } // end of for loop
  Serial.println ("Done.");
  Serial.print ("Found ");
  Serial.print (count, DEC);
  Serial.println (" device(s).");
}  // end of setup

void loop() {}

groundFungus:
The first thing that I do when I have trouble with an I2C device is to run the I2C scanner to confirm the I2C address of the device and to confirm that the device will communicate over the I2C bus.

Load this I2C scanner sketch and please report the results (copy and post the serial monitor output). Note that you need to set the serial monitor baud rate to 115200.

// I2C scanner by Nick Gammon.  Thanks Nick.

#include <Wire.h>

void setup() {
  Serial.begin (115200); //*****  make sure serial monitor baud matches *****

// Leonardo: wait for serial port to connect
  while (!Serial)
    {
    }

Serial.println ();
  Serial.println ("I2C scanner. Scanning ...");
  byte count = 0;
 
  Wire.begin();
  for (byte i = 1; i < 120; i++)
  {
    Wire.beginTransmission (i);
    if (Wire.endTransmission () == 0)
      {
      Serial.print ("Found address: ");
      Serial.print (i, DEC);
      Serial.print (" (0x");
      Serial.print (i, HEX);
      Serial.println (")");
      count++;
      delay (1);  // maybe unneeded?
      } // end of good response
  } // end of for loop
  Serial.println ("Done.");
  Serial.print ("Found ");
  Serial.print (count, DEC);
  Serial.println (" device(s).");
}  // end of setup

void loop() {}

I2C scanner. Scanning ...
Found address: 63 (0x3F)
Done.
Found 1 device(s).

zualfikar:
Found 1 device(s).

That's promising, so now using that address run whatever example/s came with whatever library you're using