ARudzki wrote: > Set your RS and R/W lines low, and write a 0x40 to the module and > toggle E. > This will place the data pointer to point to CG memory (location 0) > instead of display memory. Description a little bit fuzzy there, sorry! Writing (R/~W low) with RS low, writes a *command* while writing with RS high writes *data*, as when you send ASCII to the display. You first write a "Set CGRAM Address" *command*, then write all your *data* bytes in sequence. You then write a command to set the cursor position and the controller will thereafter accept further data writes as ASCII characters to be displayed including the new characters you have defined. Not comprehensive, but I hope a little clearer. -- Cheers, Paul B.