I wanted to test about 20 LCD character displays to make sure they're working as expected but there is a perculiarity which has thwarted me. I'm using pogo pins so I don't have to solder anything to the LCD PCBs. The problem is that if I start sending stuff to display on the LCD and then connect the LCD, the output is garbled. I only get the expected display if I connect the LCD and then start the script which is not practical with one pair of hands. The script is as follows:
Code: Select all
import RPi.GPIO as GPIO
from RPLCD.gpio import CharLCD
import time
# Initialize display. All values have default values and are therefore optional.
lcd = CharLCD(pin_rs=36, pin_e=38, pins_data=[31, 33, 35, 37],
numbering_mode=GPIO.BOARD,
cols=16, rows=2, dotsize=8,
auto_linebreaks=False,)
while True:
lcd.write_string("abcdefghijklmnop\r\nqrstuvwxyz012345")
time.sleep(1)
lcd.clear()
Any idea why this happens? Since the characters are transmitted again every second, I'd expect maybe the first connection to display garbled letters, if anything, but the nect transmission should give the correct letters, right? Apparently not.