I am using an NHD-0440AZ-FL-YBW 4x20 character display on a product we have, one thing we wanted to include in a software update was a company logo to be displayed when the device boots up. I created a bitmap and generated an array for all of the 5x8 custom characters needed but I have ran into the problem of only being able to have 8 custom characters at a time. I didn't realise once I set the new character any instances of its old memory position that are already on the screen would be updated to the new character, so this leaves me with only having 8 possible custom characters to display the logo with

To solve this I can think of a few solutions but I don't know if any of therm are possible.

1: is it possible to overwrite the font tables on the display so that I can have my own set of custom characters?

2: is it possible to stop the screen refreshing so that custom characters aren't changed on the display once I re assign the CGRAM address

3: is it possible to use the display as a dot matrix instead so I have complete control over every pixel on the display

As this display is already in a lot of devices we have shipped we are unable to use a different display to solve this.

- The font tables on these controllers are set, and it is not possible to overwrite them.- Because of the technology, the screen has to be refreshed several times per second or the pixels on the screen would start to fade away. - The ST7066U is not able to work as a graphic display,

The only option that would solve this issue is to replace the display with a graphic display of the same size. However you said it was not possible to implement this.