Go Down

Topic: Intermittent LCD (Read 730 times) previous topic - next topic

arduino_woody

I am using a 20 x 4 LCD display connected via an I2C converter on an UNO R3.  I am also connecting to the internet via a WS5100 Ethernet shield.

The problem I am having is that the LCD screen only seems to work intermittently.  Some of the possible reasons I have identified but have not ruled out are

Length of connecting lead (15cm).  I know I2C is only designed for short runs but should this be ok?

Pull up resisters on SDA / SCL lines?  Are these required...I don't have any installed.

Size of code - I don't think this is an issue although I am at 88% program storage and 74% dynamic memory?

Does anybody have any thoughts or experience to point me in the correct direction?




david_prentice

#1
Feb 25, 2016, 08:18 am Last Edit: Feb 25, 2016, 08:19 am by david_prentice
15 cm should be fine.    Your wires should either have soldered connections or properly crimped header pin connectors.

Yes,   you should ALWAYS have pull-up resistors on the I2C bus.

Many of the backpacks have got pullups.    Some do not.

David.

arduino_woody

Thanks David

I am using one of these "YwRobot Arduino LCM1602 IIC V1".  There are no obvious pullup resistors on this interface board.

I am using the library from http://arduino-info.wikispaces.com/LCD-Blue-I2C

Even if there are no additional external hardware pull up resistors aren't the internal Arduino Uno pull ups activated (by the library would I expect)?

david_prentice

Invest $0.02 in two 4k7 resistors.

arduino_woody

will dig some out of my Aladdin's cave!

arduino_woody

To close this one off and in case it helps someone else I dug out some 4K resistors and installed them as pull ups.  Now instead of getting intermittent success with my LCD screen I have been able to install on a longer cable (about 1m) with no problems.


Go Up