• We recently switched our forum platform. If you experience any issues please email support@crystalfontz.com

Strange visual glitch CFAG160128STITZ

Lestropie

New member
Hi everybody

I've encountered an error with my CFAG 160X128 STITZ LCD display, which I'm using for a university project. I thought I had mastered it, until one day recently it started spitting junk at me: the two images below show the before and after pictures (it's being used in an aircraft engine temperature monitor):









It appears to be repeating characters I'm sending to it eight times, and a similar thing is happening for the graphics. Now I have tried the following:
* Retarded the communication timing.
* Checked all connections.
* Changed out the MCU (a dsPIC30F4013) for a new one, in case one of its pins went.


I'm beginning to suspect that the track side of the LCD board has been damaged, as there are some scratches on it from transporting. When the problem first occurred, I had been soldering, but I doubt the heat from this could have traveled up the ribbon and caused damage.

Anyone else had a similar error? Has anybody ever tried manually repairing the tracks from scratches?

Thanks in advance,
Bob

(Edited by admin to embed photos.)





UPDATE

So after re-checking stuff like startup time, LCD resetting, and the PCB 'scratches' (these turned out to be pin #1 markers for the ICs, maybe I should get my eyes checked...), I decided to run a quick 'hello world' (more or less) test, using the following code:
Code:
	LCD_drawtext(0, 0, "A");
	LCD_drawtext(1, 1, "B");
	LCD_drawtext(2, 2, "C");
	LCD_drawtext(3, 3, "D");
	LCD_drawtext(4, 4, "E");
	LCD_drawtext(5, 5, "F");
	LCD_drawtext(6, 6, "G");
	LCD_drawtext(7, 7, "H");
	LCD_drawtext(8, 8, "I");
	LCD_drawtext(9, 9, "J");
	LCD_drawtext(10, 10, "K");
	LCD_drawtext(11, 11, "L");
	LCD_drawtext(12, 12, "M");
	LCD_drawtext(13, 13, "N");
	LCD_drawtext(14, 14, "O");
	LCD_drawtext(15, 0, "ABCDEFGHIJKLMNOPQRST");
Basically this should draw a diagonal line of characters, like this:
Code:
A
 B
  C
   D
    E
     F
      G
       H
        I
         J
          K
           L
            M
             N
              O
ABCDEFGHIJKLMNOPQRST

This is what I get instead:



Now, if this were caused by a problem with my circuit or program, it could be a connection problem or a timing problem. But if either of these were the case, I doubt that the correct characters would still be sent for each line.

Therefore I believe that it's a write-to-memory problem, where any byte sent to the LCD controller is being written to every memory location in the local 8-byte block. This couldn't be caused by my 3 least significant communication bits, as it's getting the character right every time.

I've confirmed my order for a new one, hopefully it gets all the way here to Australia quickly so I can finish this project in time...

Wish me luck
Bob
Looking for additional LCD resources? Check out our LCD blog for the latest developments in LCD technology.
 

Attachments

Last edited:

CF Support

Administrator
There are only a couple things that come to mind that might explain what you're seeing.

1. Noise from your power supply
2. Noise on your signal lines (the RD line in particular)

If you have frame ground closed, I would consider opening it. If the opposite, it might be worth a try.
 
Top