Topics

ic2 display problems #arduino ??? #arduino

Bill Watkins
 

Hello,
I have attempted to duplicate Ian Lee’s success. 1) I have latest firmware and manager. 2) tried 0x27 & 0x3F; neither makes a difference. Display manufacturer says 0x27 correct. 3) Checked voltages on bcc, sda, and scl; 4.48, 3.89, & 3.90 respectively.  4) display lights up and separate, new display lights up. No letters in either regardless address used. Unit still works and original display still works with ic2 settings when swapped back.

Anyone???!

Jack, W8TEE
 

Have you tried the display with one of the examples from the library just to make sure that you've 1) got a working display, and 2) it's wired correctly. Often a problem is that there are numerous LiquidCrystal libraries and they are substantially different. Unfortunately, Dr. Lee didn't follow the convention that gives the download URL for the library on the same line as the #include. That suggests to me that he's using the library that is shipped with the Arduino IDE. Check any examples that your manufacturer has to see if they give the download URL for the library. Also, there is a library for I2C LCD's:


You might give that a try as I don't think the standard IDE library is for I2C displays.

Jack, W8TEE




On Thursday, June 14, 2018, 10:24:35 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Hello,
I have attempted to duplicate Ian Lee’s success. 1) I have latest firmware and manager. 2) tried 0x27 & 0x3F; neither makes a difference. Display manufacturer says 0x27 correct. 3) Checked voltages on bcc, sda, and scl; 4.48, 3.89, & 3.90 respectively.  4) display lights up and separate, new display lights up. No letters in either regardless address used. Unit still works and original display still works with ic2 settings when swapped back.

Anyone???!

 

Bill :

There are a few I2C scanner sketches floating around. They scan the I2C bus for active addresses and report the results via the serial monitor.
It would be worthwhile to try this to verify that the I2C address you think the display is using actually
aligns with the one that the display is really using.  That will at least eliminate that variable from the equation or perhaps fix your issue if
there is a mismatch. 

Cheers

Michael VE3WMB 

P.S.  The Scanner sketch that I use can be found at : 

https://gist.github.com/tfeldmann/5411375

 

Bill Watkins
 

Thank you very much. 

Another question; should the original display still be enabled even though ic2 is programmed?  Not used at same time, but when swapped back the display acts as originally shipped. 

73,

Bill
K0WHW




On Jun 14, 2018, at 09:43, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

Have you tried the display with one of the examples from the library just to make sure that you've 1) got a working display, and 2) it's wired correctly. Often a problem is that there are numerous LiquidCrystal libraries and they are substantially different. Unfortunately, Dr. Lee didn't follow the convention that gives the download URL for the library on the same line as the #include. That suggests to me that he's using the library that is shipped with the Arduino IDE. Check any examples that your manufacturer has to see if they give the download URL for the library. Also, there is a library for I2C LCD's:


You might give that a try as I don't think the standard IDE library is for I2C displays.

Jack, W8TEE




On Thursday, June 14, 2018, 10:24:35 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Hello,
I have attempted to duplicate Ian Lee’s success. 1) I have latest firmware and manager. 2) tried 0x27 & 0x3F; neither makes a difference. Display manufacturer says 0x27 correct. 3) Checked voltages on bcc, sda, and scl; 4.48, 3.89, & 3.90 respectively.  4) display lights up and separate, new display lights up. No letters in either regardless address used. Unit still works and original display still works with ic2 settings when swapped back.

Anyone???!

Jack, W8TEE
 

I'm not sure, but I think the I2C interface expects to use A4 and A5 for the interface. One of the hardware guys can help you there.

Jack, W8TEE


On Thursday, June 14, 2018, 11:09:34 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Thank you very much. 

Another question; should the original display still be enabled even though ic2 is programmed?  Not used at same time, but when swapped back the display acts as originally shipped. 

73,

Bill
K0WHW




On Jun 14, 2018, at 09:43, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

Have you tried the display with one of the examples from the library just to make sure that you've 1) got a working display, and 2) it's wired correctly. Often a problem is that there are numerous LiquidCrystal libraries and they are substantially different. Unfortunately, Dr. Lee didn't follow the convention that gives the download URL for the library on the same line as the #include. That suggests to me that he's using the library that is shipped with the Arduino IDE. Check any examples that your manufacturer has to see if they give the download URL for the library. Also, there is a library for I2C LCD's:


You might give that a try as I don't think the standard IDE library is for I2C displays.

Jack, W8TEE




On Thursday, June 14, 2018, 10:24:35 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Hello,
I have attempted to duplicate Ian Lee’s success. 1) I have latest firmware and manager. 2) tried 0x27 & 0x3F; neither makes a difference. Display manufacturer says 0x27 correct. 3) Checked voltages on bcc, sda, and scl; 4.48, 3.89, & 3.90 respectively.  4) display lights up and separate, new display lights up. No letters in either regardless address used. Unit still works and original display still works with ic2 settings when swapped back.

Anyone???!

Bill Watkins
 

Displays functional

image1.jpeg
image2.jpeg


On Jun 14, 2018, at 10:41, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

I'm not sure, but I think the I2C interface expects to use A4 and A5 for the interface. One of the hardware guys can help you there.

Jack, W8TEE


On Thursday, June 14, 2018, 11:09:34 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Thank you very much. 

Another question; should the original display still be enabled even though ic2 is programmed?  Not used at same time, but when swapped back the display acts as originally shipped. 

73,

Bill
K0WHW




On Jun 14, 2018, at 09:43, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

Have you tried the display with one of the examples from the library just to make sure that you've 1) got a working display, and 2) it's wired correctly. Often a problem is that there are numerous LiquidCrystal libraries and they are substantially different. Unfortunately, Dr. Lee didn't follow the convention that gives the download URL for the library on the same line as the #include. That suggests to me that he's using the library that is shipped with the Arduino IDE. Check any examples that your manufacturer has to see if they give the download URL for the library. Also, there is a library for I2C LCD's:


You might give that a try as I don't think the standard IDE library is for I2C displays.

Jack, W8TEE




On Thursday, June 14, 2018, 10:24:35 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Hello,
I have attempted to duplicate Ian Lee’s success. 1) I have latest firmware and manager. 2) tried 0x27 & 0x3F; neither makes a difference. Display manufacturer says 0x27 correct. 3) Checked voltages on bcc, sda, and scl; 4.48, 3.89, & 3.90 respectively.  4) display lights up and separate, new display lights up. No letters in either regardless address used. Unit still works and original display still works with ic2 settings when swapped back.

Anyone???!

Tom, wb6b
 

Hi,

Just a couple of general observations about I2C displays.

Yes, the I2C display uses the same pins as the SI5351 (A4, A5) for the interface connection. The SI5351 is a 3.3V part and the bus is set up to use 3.3V levels. The interface between the SI5351 and the Arduino relies on the 3.3V high level barely being in spec for the minimum acceptable "one" voltage for the Arduino (depending on which ATMega324 data sheet you look at). I believe the displays work just fine at the 3.3V bus levels.

Your display physically looks just like mine, however there are some that have the order of the data bits reversed. It seems some people/companies have modified the LiquidCrystal_I2C library for different parts/configurations and kindly kept the name the same. So there are several libraries and they may not all be compatible. To work with the CEC firmware the display should be using the PFC8574 I2C to parallel chip. 

It looks like the CEC firmware has included all the I2C LCD driver code in his sketch, so you don't need to worry about the library.

The CEC firmware can be used with two displays, but displays different information on each display.  

Tom, wb6b

Bill Watkins
 

Problem solved. Comment incorrect display, un-comment correct display. Thanks for all today who helped, and Thanks Dr. Lee

image1.jpeg

73


On Jun 14, 2018, at 17:17, Bill Watkins <kf7yxs@...> wrote:

Displays functional

image1.jpeg
image2.jpeg


On Jun 14, 2018, at 10:41, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

I'm not sure, but I think the I2C interface expects to use A4 and A5 for the interface. One of the hardware guys can help you there.

Jack, W8TEE


On Thursday, June 14, 2018, 11:09:34 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Thank you very much. 

Another question; should the original display still be enabled even though ic2 is programmed?  Not used at same time, but when swapped back the display acts as originally shipped. 

73,

Bill
K0WHW




On Jun 14, 2018, at 09:43, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

Have you tried the display with one of the examples from the library just to make sure that you've 1) got a working display, and 2) it's wired correctly. Often a problem is that there are numerous LiquidCrystal libraries and they are substantially different. Unfortunately, Dr. Lee didn't follow the convention that gives the download URL for the library on the same line as the #include. That suggests to me that he's using the library that is shipped with the Arduino IDE. Check any examples that your manufacturer has to see if they give the download URL for the library. Also, there is a library for I2C LCD's:


You might give that a try as I don't think the standard IDE library is for I2C displays.

Jack, W8TEE




On Thursday, June 14, 2018, 10:24:35 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Hello,
I have attempted to duplicate Ian Lee’s success. 1) I have latest firmware and manager. 2) tried 0x27 & 0x3F; neither makes a difference. Display manufacturer says 0x27 correct. 3) Checked voltages on bcc, sda, and scl; 4.48, 3.89, & 3.90 respectively.  4) display lights up and separate, new display lights up. No letters in either regardless address used. Unit still works and original display still works with ic2 settings when swapped back.

Anyone???!

Arv Evans
 

Bill  KF7YXS

There are a number of different I2C libraries.  The word "different" is key because some function
calls are definitely different.  Beauty and curse of libraries is that there are so many different ones
that claim to serve the same purpose.

Analog Pins A4 and A5 seem to be normal for I2C interfaces.  The Atmel datasheet for a Mega-328
shows that A4 and A5 connect internally to the TWI (2-Wire Interface) circuitry. 

http://tinyurl.com/y7nk9f54

However, there are exceptions where the TWI interface is not available.  In those cases you may
have to select a pair of digital pins and write your own bit-banging code to do the TWI protocol.

​An I2C interface usually requires 4.7K resistors as pull-up on the SDA and SCL leads.​  If you look at the
internal schematic for an OLED TFT display you will see that it only has pull-down current devices and no
pull-up components.  I fought with this for several days until I finally figured it out.  Enabling pull-up
function on the Arduino leads apparently is not adequate.  After adding the 4.7K pull-up resistors my display
came alive.

​If you want to have both LCD and TFT displays active it might be worthwhile to turn off the backlight on that
LCD when it is not needed.  This will decrease the amount of current drawn by that display.​

Arv K7HKL
_._
 

On Thu, Jun 14, 2018 at 4:17 PM Bill Watkins <kf7yxs@...> wrote:
Displays functional




On Jun 14, 2018, at 10:41, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

I'm not sure, but I think the I2C interface expects to use A4 and A5 for the interface. One of the hardware guys can help you there.

Jack, W8TEE


On Thursday, June 14, 2018, 11:09:34 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Thank you very much. 

Another question; should the original display still be enabled even though ic2 is programmed?  Not used at same time, but when swapped back the display acts as originally shipped. 

73,

Bill
K0WHW




On Jun 14, 2018, at 09:43, Jack Purdum via Groups.Io <jjpurdum@...> wrote:

Have you tried the display with one of the examples from the library just to make sure that you've 1) got a working display, and 2) it's wired correctly. Often a problem is that there are numerous LiquidCrystal libraries and they are substantially different. Unfortunately, Dr. Lee didn't follow the convention that gives the download URL for the library on the same line as the #include. That suggests to me that he's using the library that is shipped with the Arduino IDE. Check any examples that your manufacturer has to see if they give the download URL for the library. Also, there is a library for I2C LCD's:


You might give that a try as I don't think the standard IDE library is for I2C displays.

Jack, W8TEE




On Thursday, June 14, 2018, 10:24:35 AM EDT, Bill Watkins <kf7yxs@...> wrote:


Hello,
I have attempted to duplicate Ian Lee’s success. 1) I have latest firmware and manager. 2) tried 0x27 & 0x3F; neither makes a difference. Display manufacturer says 0x27 correct. 3) Checked voltages on bcc, sda, and scl; 4.48, 3.89, & 3.90 respectively.  4) display lights up and separate, new display lights up. No letters in either regardless address used. Unit still works and original display still works with ic2 settings when swapped back.

Anyone???!