COG Character Display with Raspberry Pi
I have hooked up this COG (Chip‐On‐Glass) Character Liquid Crystal Display Module to a Raspberry Pi and am using the command sudo i2cdetect -y 1 to probe the I2C bus for the display, but it detects nothing. Should this work? I'm using a Saleae logic probe to watch the bus and the clock pulses are not uniform. I am not using the pull-up resistors as shown in Newhaven's diagram because I understand the Raspberry Pi has the pull-ups built-in.
-
I have replied to your email regarding this, I will summarize below:
I am not familiar with the Raspberry Pi, and I don't know how the built-in I2C functions work, but I do know that pull-up resistors are needed on the I2C lines. I know you said it has them built-in, but they may not be enabled, or they may not be the correct value. I would try using external 10kΩ pull-ups.0 -
Thank you for your responses. Per the Raspberry Pi forum (http://www.raspberrypi.org/forums/viewtopic.php?f=44&t=7664), there are 1.8K resistors already in place for the I2C pins. Now I have to ask a really embarrassing question. It turns out that the reason my clock was irregular was because I had stupidly swapped VDD and VSS. Now the clock looks perfect but the display does not respond to the address probe for 0x78 or any other address. So my embarrassing question is, how likely is it that I damaged the display by swapping power and ground such that it will not respond to I2C at all? (I do have another display on order.)
0 -
It is definitely possible that you have damaged the display, however, I would wait and test the new display you have ordered to be sure. Also, 1.8k pull-ups may not work with the display. If the new display does not work, please try using 10k pull-ups on the I2C lines.
0 -
Adding 10K pull-ups will not help since they, by definition, will be in parallel to the Pi's 1.8K pull-ups, resulting in a resistance of 1.5K.
The new display has exactly the same issue as the previous displays: it does not ACK the address.
So my question is: is this display designed in such a way that it simply cannot sink enough current to pull the I2C lines to zero when pulled up by 1.8K resistors? Please escalate this question to engineering if you're not sure so we can save your and my time. Also, can you tell me if any of your I2C displays will work with 1.8K pull-ups?0 -
Our I2C displays are recommended for operation with 10kΩ resistors. If you disable the built-in pull-ups on the Pi, you can use 10kΩ resistors. I have done this on an Arduino where it had 1kΩ pull-ups built-in. I believe customers have used 4.7kΩ as well.
The reason you are not getting ACKs is because of your strong pull-ups.0 -
Thank you for verifying the problem. Unfortunately, according to the Raspberry Pi forum, "The Raspberry-Pi has external pull-ups on the I2C lines so you can't disable them."
0 -
Seems to be an issue with tech docs. Try using a slave address of 0x3C (0x78 shifted right one bit).
0 -
hello guys,
i need to know whether
1)Can lcd be implemented with 100 kHtz?
2)Do supply current (Idd) need between 500 microA to 750microA to drive the lcd? since my supply voltage is 3.3 v but the current is less than 500microA?
3) As per the instructions i have connected the lcd but i am not getting any display in lcd?in the setup i have used pull-up resistor as 10kohms and the capacitor is 1uF.
4) if you have any sample code which is implemented with i2c-dev than please share it.
4) if there any other suggestions,please provide for NHD-C160100Diz.0 -
Hello Joel,
1. Yes the display will work at 100khz
2. The supply current is dependent on what the display is showing and how far you are using the voltage booster, it can use up to 1 mA of current when fully powered.
3. This display does require 2 capacitors. can you tell me if you have both connected the way they are shown on page 4 of the datasheet?
4. You can find example code for both of the displays here:
NHD-C0220BiZ
NHD-C160100DiZ0
Please sign in to leave a comment.
Comments
9 comments