-
Notifications
You must be signed in to change notification settings - Fork 25
Description
I've been using this library with a Newhaven NHD-0216K1Z LCD and it has worked great. However when I switched to a Winstar WEH001602 OLED display I have problems, particularly with printing custom characters. I'm suspecting a timing issue.
I can consistently get through most of the esp32-i2c-lcd1602-example
right up to printing the special characters.
If I have it print one character at a time, I notice that:
- Print first character, and it displays
- Print second character, and nothing happens
- Print third character, and the second character displays (but is corrupt).
This suggests that the alternating high-nibble/low-nibble is getting out of sync. This is further corroborated when you see that ϰ 0@P`
are in the top row of the character map and are exactly what you'd get if the nibbles were out of sync.
I've scoped out the signals and they look good, however the call to smbus_send_byte
is taking about 350µs, which dwarfs the explicit calls to ets_delay_us
in _strobe_enable
. Not sure if being too slow is an issue.
I'm going to keep working on this. Just wanted to log what I've discovered so far.