[SOLVED] Unable to get LCD 1602 address from I2C Scanner

Hey,

I've been trying to follow this guide to get my lcd working on Arduino Uno, I'm using an I2C converter.
The LCD turns on and everything, however when I run the scanner sketch, it just stays on "Scanning..." and no results are given.

I waited 10-15 mins. I restarted Uno using the button, recompiling and uploading etc... and I still got nothing.

I looked around and found 2-3 more similar scanner sketches, but the result was the same, nothing.

I've connected my Uno with a short usb cable and the 4 pins from I2C converter to Arduino are about 25CM. I read that on long wires I'll need to use pull up resistors for each wire, but I'm not sure how exactly it should be connected? If somebody could give me a fritzing that shows how it should be connected, I'd really appreciate it. I'm new to Arduino!

Thanks! :slight_smile:

Hey, you show me yours first, then I might show you mine!

Post a picture (as a link to a perfectly focused photo on a web page) of your setup. That enables us to check for obvious mistakes as well as to explain where to put the pull-up resistors.

But actually, you simply use two 4k7 (or 10k should generally do) resistors connected between each of SDA and SCL on the I2C lines, to +5 V.

Paul__B:
Hey, you show me yours first, then I might show you mine!

Post a picture (as a link to a perfectly focused photo on a web page) of your setup. That enables us to check for obvious mistakes as well as to explain where to put the pull-up resistors.

But actually, you simply use two 4k7 (or 10k should generally do) resistors connected between each of SDA and SCL on the I2C lines, to +5 V.

Hey Paul,

Thanks for the reply! :slight_smile:
I took some photos, hopefully this one is clear enough. Sorry about the mess, I don't have female jumper wires yet, so I had to improvise!

That's what I read about pull up resistor, since it connected +5V to SDA and SCL, I was a bit worried that I might have misunderstood it, didn't think feeding voltage to SDA and SCL was a good idea.

Anyway, I did the pull up resistors and I still couldn't get any results. It was stuck on "scanning..." again.

Edit: I just found this wiki ( http://arduino-info.wikispaces.com/LCD-Blue-I2C#v1 ), according to the photos there my lcd's address should be either 0x27 or 0x3F. I tried both with their sketch (already have the new library) and nothing was printed on the lcd.
Also at the end of the page, there's a table that says if none of the A0 A1 A2 jumpers are connected (like mine), the address should be 0x27. That doesn't work though...

Your device uses an PCF8574A IC. Since it has an 'A' suffix the possible address range is 0x38 through 0x3F.

Don

floresta:
Your device uses an PCF8574A IC. Since it has an 'A' suffix the possible address range is 0x38 through 0x3F.

Don

Thank you, I didn't know I could find IC addresses in their data sheets.
However, it still doesn't work, I tried 0x38, 0x39, 0x3A to... 0x3F. No results.

I'm thinking maybe one of my connections or solders are bad, I've triple checked them though, with multimeter and eye and everything seems fine...

I run the scanner sketch, it just stays on "Scanning..." and no results are given.

The fact that the scanner hangs instead of returning "No devices found" is a bad sign.

What does the scanner program give you with nothing connected to the I2C lines. If it hangs, there is a problem with the arduino. If it says no devices found, then there is most likely a short between SDA and SCL or between either one of them and ground or to 5v on the i2c adaptor.

cattledog:
The fact that the scanner hangs instead of returning "No devices found" is a bad sign.

What does the scanner program give you with nothing connected to the I2C lines. If it hangs, there is a problem with the arduino. If it says no devices found, then there is most likely a short between SDA and SCL or between either one of them and ground or to 5v on the i2c adaptor.

YES! You were absolutely right! There was a tiny bit of solder between A4 and A5 pins! One quick sweep with soldering iron and it went away, now my LCD is working flawlessly!
Address was 0x3F.

Thanks a lot man!
And everyone else too! :slight_smile:

Thank you very much, I have exactly the same problem.
The above LCD board and the PCF8574 board below contact.Cause a short circuit.
I buy on taobao, poor quality .
Now the LCD works well.