Newhaven Products > Character LCDs

Using Linux i2cdetect with NHD‐C0220BiZ‐FSW‐FBW on Raspberry Pi

(1/2) > >>

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.

Thank you for your responses. Per the Raspberry Pi forum (, 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 (see attachment) 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.)

[attachment deleted by admin]

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.

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] Message Index

[#] Next page

Go to full version