Post a New Reply
Reply to thread: 1602 LCD-Screen not configured correctly
Username:
Post Subject:
Post Icon:
Your Message:
Smilies
Smile Wink Cool Big Grin
Tongue Rolleyes Shy Sad
At Angel Angry Blush
Confused Dodgy Exclamation Heart
Huh Idea Sleepy Undecided
[get more]


Thread Review (Newest First)
Posted by cris bar - 22-04-22, 13:06
(10-03-22, 17:45)Dennio Wrote: I tried to connect a generic 1602 LCD-Screen via the GPIO-Pins to my Raspberry Pi 4 but it doesn't work quite right. On the LCD-Screen it looks like this:

and sometimes like this:

The Web-GUI shows how it should look:

The LCD-Screen is from an Elegoo Uno "Arduino"-Kit but I cannot identify if it is an HD44780 Chipset or something else. The internet says it most likely is one but I cannot find any concrete evidence on the PCB or the internet. The LEDs and buttons work completely normal and without any issues.

In the configuration.txt I changed only the USE_HD44780_16x2_LCD = True so it looks like this:
Code:
# --- next display definitions are mutually exclusive = you can have only one
#
# Set True to use a 16x2 direct connected/wired HD44780 LCD, configure GPIO pins below
USE_HD44780_16x2_LCD = True
# If you use an I2C-HD44780, above option should be false !!!
# Set True or 16x2 (=True) or 20x4 to use a 16x2 or 20x4 I2C connected HD44780 LCD
USE_I2C_LCD = False
#
# Set True to use an OLED display, configure GPIO pins below
USE_OLED = False
#
# Set True to use LCD of Pimoroni PirateAudio hat. Configure GPIO pins below
USE_PIMORONI_LCD = False
#
# Set True to use a 7-segment display via I2C
# Two versions: original sparkfun display and cheap HT16K33 based ebay version
USE_I2C_7SEGMENTDISPLAY = False
USE_i2c_7SEGMENTDISPLAY_HT16K33 = False
#
# --- above display definitions are mutually exclusive = you can have only one

I checked now 10 times if I connected all the GPIO-Pins correctly and I cannot see anything wrong with it. The GPIO-Layout of the Raspberry Pi 4 and 3 should be the same right?

Does anybody know how to solve this issue?

I would recommend also to use the I2C LED, the backpack versión, so much easy. But since is not the case, it could be a bad wire, double check your Jumper wires are ok, replace them or check continuity. Also remember to check the right adress for the screen in the configuration, but is working, so maybe it's ok. I would go for wiring. That's all i can think about. Good luck!!!
Posted by the720k - 21-04-22, 05:47
Have you considered an I2C HD44780 solution?  Less GPIO pins to tie up, and it works very well with my samplerbox setup.  I think I paid about $10 USD for a two-pack. I2C interfaces came presoldered to my HD44780 displays. Something to consider.  
Posted by hansehv - 11-03-22, 22:50
Hi Dennio,
It looks like HD44780 to me, giving the appearance and the way the connections are ordered.
I have encountered wrong characters under next different circumstances:
  1. wrong wiring (double use of pins, wrong pins, short circuitry)
    Your picture has similarities with this.
    But you already checked and double checked, so...
  2. insufficient power supply, but that looks more like "chinese" - in my case that is, but these displays are produced by multiple suppliers. Same goes for next:
  3. restarting without full power off of PI. This can be tricky: you can pull the power supply but still have an hdmi screen connected supplying power.
    In this case the init of the display fails for a reason I haven't found yet.
The GPIO of PI4 is supposed to be the same. I've never actually tested this variant though.

A small option might the PI4 speed. The display must be initialized (=showing blocks on the first line, blanks on second) before samplerbox starts using it (using both lines). On the 3B+ and lower you can clearly see that happen.
Samplerbox is started and usable very early in the startup process. You can be playing before the linux commandline is available. Webgui is the last thing becoming available.

By the way: a two line display does not exactly look like what is shown in the webgui because that assumes it has at least 3 display lines for the menu - in practice a 4-or-more line display.
A 16x2 display has just two lines for the menu plus additional messages, so the display will show the most important lines only.
You'll see and understand once you have the display working - you can use display and webgui simultaneously.

This won't really get you going I'm afraid, but it's all I can say from this distance,
Hans
Posted by Dennio - 10-03-22, 17:45
I tried to connect a generic 1602 LCD-Screen via the GPIO-Pins to my Raspberry Pi 4 but it doesn't work quite right. On the LCD-Screen it looks like this:
   
and sometimes like this:
   
The Web-GUI shows how it should look:
   
The LCD-Screen is from an Elegoo Uno "Arduino"-Kit but I cannot identify if it is an HD44780 Chipset or something else. The internet says it most likely is one but I cannot find any concrete evidence on the PCB or the internet. The LEDs and buttons work completely normal and without any issues.

In the configuration.txt I changed only the USE_HD44780_16x2_LCD = True so it looks like this:
Code:
# --- next display definitions are mutually exclusive = you can have only one
#
# Set True to use a 16x2 direct connected/wired HD44780 LCD, configure GPIO pins below
USE_HD44780_16x2_LCD = True
# If you use an I2C-HD44780, above option should be false !!!
# Set True or 16x2 (=True) or 20x4 to use a 16x2 or 20x4 I2C connected HD44780 LCD
USE_I2C_LCD = False
#
# Set True to use an OLED display, configure GPIO pins below
USE_OLED = False
#
# Set True to use LCD of Pimoroni PirateAudio hat. Configure GPIO pins below
USE_PIMORONI_LCD = False
#
# Set True to use a 7-segment display via I2C
# Two versions: original sparkfun display and cheap HT16K33 based ebay version
USE_I2C_7SEGMENTDISPLAY = False
USE_i2c_7SEGMENTDISPLAY_HT16K33 = False
#
# --- above display definitions are mutually exclusive = you can have only one

I checked now 10 times if I connected all the GPIO-Pins correctly and I cannot see anything wrong with it. The GPIO-Layout of the Raspberry Pi 4 and 3 should be the same right?

Does anybody know how to solve this issue?