Hi, I purchased an I2C display from eBay. I have foun its address to be 0x27 via a scan sketch. When ever I load example sketches from LiquidCrystal library, nothing happens. Could anyone give me some tips or advice? Been googling the issue an no one else seems to have it, my friend who PREVIOUSLY had his working just tried it again today, and it is not working anymore...
Hi, I purchased an I2C display from eBay.
You might have better luck if you get a bit more specific.
Have you looked at any of the other forum posts concerning I2C LCD adapters?
Don
I don't understand, I am in an IRC chat now, someone said the same things. What specifics, what information would you want? I've tried everything for normal operation and nothing works. The back light blink and no characters display. That is about it =/
There are several different I2C adapters available. They are not all wired to the LCD the same way. You need to confirm that the wiring (pins) of the adapter is the same as the pin call out in the constructor for the LCD.
Address and pin defines:
#define I2C_ADDR 0x3f // Define I2C Address where the PCF8574A is
#define BACKLIGHT_PIN 3
#define En_pin 2
#define Rw_pin 1
#define Rs_pin 0
#define D4_pin 4
#define D5_pin 5
#define D6_pin 6
#define D7_pin 7
note that the pins are of the I2C expander chip on the adapter NOT the arduino.
The constructor:
LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin);
JamesDonaldChilds,
what you need to understand is that the vast majority of the "I2C" displays out there are not
really I2C LCD displays.
They are hd44780 LCD displays with a backpack on them that contains an i2c i/o expander chip.
Not only are there different i/o expander chips, but the i/o expander chip's 8 pin output port
pins can be wired up to the hd44780 interface differently.
So if you start to look at the combinations there are essentially 3 categories:
- Native I2C (most "I2C" LCDs do not fall into this category)
- hd44780 LCD with PCF8574 i/o expander backpack (most "I2C" LCDs fall into this catetory)
- hd44780 LCD with MCP23008 i/o expander backpack
Then, within those 3 categories, the various devices can work differently.
So between the 3 categories, you first have to have a library that supports it.
Then once you have library that supports the type of interface/device you have,
you then have to make sure that the library either supports the exact interface/device you have
or that it can be configured to support the exact interface/device you have.
This is why just saying:
I purchased an I2C display from eBay
Is not enough.
From just the information, there is no way for anyone to know what you have
or what s/w you would need to make it work.
Also adding to the confusion, is that there are many different LCD libraries out there
and several have the same name.
So even naming the library you are using isn't enough information to know
which library you have.
--- bill