Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

3
  • Hi EngrAbbas, thank you so much for the reply and code.Removing the delay has given me some progress. The screen is not printing correctly but is now printing random chars on screen such as "?/?/ooo|||" etc. I'm really starting to think that the liquid crystal library is not compatible with the screen. Using the previous version I have no issues, even when using delays and milli's. Commented Feb 12, 2018 at 9:43
  • I did notice that the controllers have different timing with regards to initialization. Do you think this could be causing the issue? Initializing by Instruction - Wait time after power on ST7066U = Wait time > 40mS , Hitachi HD44780 = Wait time > 15mS . Initializing by Instruction - Wait time after first function set ST7066U = Wait time > 37uS , Hitachi HD44780 = Wait time > 4.1mS Commented Feb 12, 2018 at 9:48
  • I had so many troubles with a 20x4 LCD that required numerous data lines. It would work once then I'd power it down & up again & it wouldn't work -- instead showing nothing. I checked all the wiring and tried it again and then got same result as @user1649972 with the random characters showing up. I thought I had fried the LCD. I ordered the I2C version (amzn.to/2MAOAjL). It is so much easier. But, I still wanted to see if my orig. LCD worked. I connected a line from each data line from the new I2C LCD to the old one and lo & behold, it worked!. If any data line isn't 100% it fails. Commented Jun 18, 2018 at 20:38