(Disclaimer) - I'm a noob, and therefore I thrive in the tutorial/example sections. Due to my inexperience, I review and re-review the posted examples...
I recently purchased an LCD - 16x2, and a 1 i2c lcd backpack + misc other items.
I soldered the LCD to the i2c, I followed the instructions and separated them with a piece of
electrical tape.
I had the LCD up and running and was successfully sending data to it, I adjusted the contrast and the letters were perfect.
Everything worked perfect for about an hour? Now I have a problem: the backlight is OFF on the LCD- and the first row in the LCD is visible... looks like a row of FAT Asterisks. It does not flicker on arduino reset, it never lights the backlight.
The LCD's backlight abruptly stopped working.
I doubled checked the 4 wires and the screw terminals on the i2c. I changed the 4 wires, and then changed them again.
After 100% certainty that it was not a wire issue, I ensured that nothing was wrong on the arduino by testing the output of the 5 volts.
I had a second 16x2 LCD that I wasn't currently using and I desoldered the I2c and attached to 'other' 16x2 display.
I get the same results with the other LCD.
Prior to testing on the I2c, I made sure that the LCD's worked by testing them without the I2c attached.
If I connect pins 15 and 16 from the arduino - to the LCD the backlight
works on both lcds.
When both LCDS are on the I2c - the backlight is OFF
Is there anything else to troubleshoot? Did by i2c LCD backpack just suddenly fail? If it failed... what failed on it? Is it fixable?
Is this type of stuff usually warrantied or replacealbe - or do you just chalk it up as a loss?
Troubleshoot LCD -Serial i2c backpack
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
-
- Posts: 12151
- Joined: Thu Apr 06, 2006 4:21 pm
Re: Troubleshoot LCD -Serial i2c backpack
something could have been damaged, or you could have a bad solder joint. you should post a photo of your setup including shots of the soldering
make sure your wires are good
try also the SPI interface
make sure your wires are good
try also the SPI interface
- kramerica
- Posts: 36
- Joined: Thu Oct 08, 2009 6:43 pm
Re: Troubleshoot LCD -Serial i2c backpack
I currently don't have it soldered together any longer. I had to desolder the first LCD to test the second one.
I'm not sure that I am capable of testing the "SPI" - doesn't this require some other sort of chip?
I'm not sure that I am capable of testing the "SPI" - doesn't this require some other sort of chip?
Code: Select all
The circuit:
* 5V to Arduino 5V pin
* GND to Arduino GND pin
* CLK to Analog #4
* DAT to Analog #5
*/
// include the library code:
#include <Wire.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(0);
void setup()
{
Serial.begin(9600);
// set up the LCD's number of rows and columns:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("Hello - Hello");
}
-
- Posts: 12151
- Joined: Thu Apr 06, 2006 4:21 pm
Re: Troubleshoot LCD -Serial i2c backpack
ok well you'll need to resolder it
check the product tutorial page for how to set it up for spi
check the product tutorial page for how to set it up for spi
- kramerica
- Posts: 36
- Joined: Thu Oct 08, 2009 6:43 pm
Re: Troubleshoot LCD -Serial i2c backpack
Thank you very much with your response and assistance.
I soldered on some pins so that I could put it in my breadboard.
I then used an RJ45 jack and a piece of solid ethernet wire to breakout 4 wires for the backpack.
I used the solid color wires. ORANGE =5v / GREEN = ground / BLUE = clk / BROWN = data.
I have not tried the SPI stuff yet - I don't want to jump ahead if it is something simple.
Attached is a photo - showing the LCD on with the large ASTERISKS? on row 1 only.
I have a voltmeter hooked to pins to show it's getting power.
I soldered on some pins so that I could put it in my breadboard.
I then used an RJ45 jack and a piece of solid ethernet wire to breakout 4 wires for the backpack.
I used the solid color wires. ORANGE =5v / GREEN = ground / BLUE = clk / BROWN = data.
I have not tried the SPI stuff yet - I don't want to jump ahead if it is something simple.
Attached is a photo - showing the LCD on with the large ASTERISKS? on row 1 only.
I have a voltmeter hooked to pins to show it's getting power.
- Attachments
-
- Squares with NO backlight.jpg (516.65 KiB) Viewed 3901 times
-
- Backpack on BB-2.jpg (1016.24 KiB) Viewed 3901 times
-
- Posts: 12151
- Joined: Thu Apr 06, 2006 4:21 pm
Re: Troubleshoot LCD -Serial i2c backpack
why are you using an RJ45 jack?
please just follow the instructions on the tutorial page.
the LCD is powered but the communication lines are not working
resolder everything with more solder.
it worked once, so obviously the goods were at least at some point working correctly.
Something you did in the mean time broke it (electronics do not spontaneously stop working)
we can help you try to get it working but only if you do what we suggest. we've asked you a few times to try SPI. when you are ready to follow our suggestion let us know. if you're not going to follow our suggestions, you'll have to figure it out on your own
please just follow the instructions on the tutorial page.
the LCD is powered but the communication lines are not working
resolder everything with more solder.
it worked once, so obviously the goods were at least at some point working correctly.
Something you did in the mean time broke it (electronics do not spontaneously stop working)
we can help you try to get it working but only if you do what we suggest. we've asked you a few times to try SPI. when you are ready to follow our suggestion let us know. if you're not going to follow our suggestions, you'll have to figure it out on your own
- kramerica
- Posts: 36
- Joined: Thu Oct 08, 2009 6:43 pm
Re: Troubleshoot LCD -Serial i2c backpack
Sorry please don't be frustrated.. it was not my intention. I started with your suggestion of checking my soldering and hooking up all my wires. I wanted to breadboard the i2c instead of wiring it direct, in my previous troubleshooting I soldered it to 2 different LCDS. I did not enjoy the experience of 'desoldering'.
My arduino was 'hooked' up to a project on the other side of the room, with lots of wires on it.
I was using the RJ-45 wire as a quick disconnect. My jumper wires are only 3 or 4 inches long.
Per your request i disconnected everything and soldered the "SPI ENABLE"on the i2c. I downloaded the "HELLOworld" SPI version and connected up the wires and the LCD / backpack works perfectly via the SPI wires on pins 2,3,4 - just like the example.
When I download the "Helloworld" i2c version - If I remove the solder bubble from the "SPI ENABLE" and hook the 2 wires to analog 4/analog5 - just Asterisks on the first row.
If all the pins are used in SPI mode and it works -- does this imply that there may be something wrong with my arduino's analog pin 4 and 5?
My arduino was 'hooked' up to a project on the other side of the room, with lots of wires on it.
I was using the RJ-45 wire as a quick disconnect. My jumper wires are only 3 or 4 inches long.
Per your request i disconnected everything and soldered the "SPI ENABLE"on the i2c. I downloaded the "HELLOworld" SPI version and connected up the wires and the LCD / backpack works perfectly via the SPI wires on pins 2,3,4 - just like the example.
When I download the "Helloworld" i2c version - If I remove the solder bubble from the "SPI ENABLE" and hook the 2 wires to analog 4/analog5 - just Asterisks on the first row.
If all the pins are used in SPI mode and it works -- does this imply that there may be something wrong with my arduino's analog pin 4 and 5?
- Attachments
-
- lcd_i2c not working.jpg (184.71 KiB) Viewed 3873 times
-
- Posts: 12151
- Joined: Thu Apr 06, 2006 4:21 pm
Re: Troubleshoot LCD -Serial i2c backpack
ok now we're making progress! you know the LCD Is OK and the arduino is probably OK. it could be something is wrong with your i2c port. the i2c chip on the backpack could also be damaged
it could be you need some stronger pullups on the i2c line (its unlikely but worth trying) - try connecting two 2K or 4.7K resistors from the two i2c pins (4 & 5) to +5V
also, make the i2c lines shorter. and make sure you dont have the i2c lines backwards.
if these dont fix it, you may just have to use SPI
it could be you need some stronger pullups on the i2c line (its unlikely but worth trying) - try connecting two 2K or 4.7K resistors from the two i2c pins (4 & 5) to +5V
also, make the i2c lines shorter. and make sure you dont have the i2c lines backwards.
if these dont fix it, you may just have to use SPI
- kramerica
- Posts: 36
- Joined: Thu Oct 08, 2009 6:43 pm
Re: Troubleshoot LCD -Serial i2c backpack
I apologize, I do not have the resistors to test..
GOOD NEWS: I did get my adafruit order this morning from the UPS driver.
I took my out my BRAND new UNO, my Brand new i2c out of the box.
I soldered the screw pins on the i2c, and then I soldered the i2c directly to the LCD.
I run the sketch and I get the exact same results with all new hardware? A full row of ASTERISKS on the first column?
Is there something wrong with the sketch?>
If I solder on the SPI-enable and put on the extra wire it WORKS fine?
I am completely mystified... and confused..
So now I have 3 of the i2c boards... one from the first test that only seems to currently work as SPI, a second board that works with SPI.. and then a third one in the package that I haven't opened.
GOOD NEWS: I did get my adafruit order this morning from the UPS driver.
I took my out my BRAND new UNO, my Brand new i2c out of the box.
I soldered the screw pins on the i2c, and then I soldered the i2c directly to the LCD.
I run the sketch and I get the exact same results with all new hardware? A full row of ASTERISKS on the first column?
Code: Select all
/*
Demonstration sketch for Adafruit i2c/SPI LCD backpack
using MCP23008 I2C expander
( http://www.ladyada.net/products/i2cspilcdbackpack/index.html )
This sketch prints "Hello World!" to the LCD
and shows the time.
The circuit:
* 5V to Arduino 5V pin
* GND to Arduino GND pin
* CLK to Analog #4
* DAT to Analog #5
*/
// include the library code:
#include <Wire.h>
#include <LiquidCrystal.h>
// Connect via i2c, default address #0 (A0-A2 not jumpered)
LiquidCrystal lcd(0);
void setup() {
// set up the LCD's number of rows and columns:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("hello, world!");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
}
If I solder on the SPI-enable and put on the extra wire it WORKS fine?
I am completely mystified... and confused..
So now I have 3 of the i2c boards... one from the first test that only seems to currently work as SPI, a second board that works with SPI.. and then a third one in the package that I haven't opened.
- kramerica
- Posts: 36
- Joined: Thu Oct 08, 2009 6:43 pm
Re: Troubleshoot LCD -Serial i2c backpack
Sometimes I guess it's the simplest things...
The sketch on GITHUB has Pins 5 and 4 reversed. I can tell you with 100% certainty the results are an LCD with no backlight and the first row full 'squares' if you use the I2c backpack and reverse the CLK and the DAT!
On the sketch on GITHUB:
https://github.com/adafruit/LiquidCryst ... ld_i2c.pde
The circuit:
* 5V to Arduino 5V pin
* GND to Arduino GND pin
* CLK to Analog #4
* DAT to Analog #5
*/
---------------------------------------------------------------------------------------
On the LCD tutorial for the backpack:
http://www.ladyada.net/products/i2cspilcdbackpack/
Connect the CLK pin to Analog 5 (i2c SCL pin) and DAT to Analog 4 (i2c SDA pin). Connect the 5V and ground pins to respective power pins.
The sketch on GITHUB has Pins 5 and 4 reversed. I can tell you with 100% certainty the results are an LCD with no backlight and the first row full 'squares' if you use the I2c backpack and reverse the CLK and the DAT!
On the sketch on GITHUB:
https://github.com/adafruit/LiquidCryst ... ld_i2c.pde
The circuit:
* 5V to Arduino 5V pin
* GND to Arduino GND pin
* CLK to Analog #4
* DAT to Analog #5
*/
---------------------------------------------------------------------------------------
On the LCD tutorial for the backpack:
http://www.ladyada.net/products/i2cspilcdbackpack/
Connect the CLK pin to Analog 5 (i2c SCL pin) and DAT to Analog 4 (i2c SDA pin). Connect the 5V and ground pins to respective power pins.
-
- Posts: 12151
- Joined: Thu Apr 06, 2006 4:21 pm
-
- Posts: 2
- Joined: Sun Nov 06, 2011 2:21 pm
Re: Troubleshoot LCD -Serial i2c backpack
WOW, thanks for this thread.
I did exactly the same thing. But mine never worked from the start.
I was about to start desoldering and trying another LCR when I found this threat via Google.
I reversed the connections to A4 and A5 and viola. It works.
You guys have to fix this page on how to hook this up. You're killing us here.
I did exactly the same thing. But mine never worked from the start.
I was about to start desoldering and trying another LCR when I found this threat via Google.
I reversed the connections to A4 and A5 and viola. It works.
You guys have to fix this page on how to hook this up. You're killing us here.
-
- Posts: 12151
- Joined: Thu Apr 06, 2006 4:21 pm
Re: Troubleshoot LCD -Serial i2c backpack
the github repository was fixed a while ago, do you know if there is an error elsewhere?
- mymaestro
- Posts: 11
- Joined: Mon Apr 04, 2011 11:43 pm
Re: Troubleshoot LCD -Serial i2c backpack
By the way, don't try to build your own from these schematics. https://github.com/adafruit/i2c-SPI-LCD-backpack. You'll spend all day scratching your head trying to figure out why the display only shows garage. Don't ask how I know
Look at the board layout instead.
On the schematic, the pin numbers of the GPIO side of the 23008 are upside down. They should be:
18 -- VCC
17 -- LITE
16 -- DB7
15 -- DB6
14 -- DB5
13 -- DB4
12 -- EN
11 -- RS
10 -- NC
Look at the board layout instead.
On the schematic, the pin numbers of the GPIO side of the 23008 are upside down. They should be:
18 -- VCC
17 -- LITE
16 -- DB7
15 -- DB6
14 -- DB5
13 -- DB4
12 -- EN
11 -- RS
10 -- NC
Please be positive and constructive with your questions and comments.