0
\$\begingroup\$

Photo of LCD module showing random color pixels

I have been testing my LCD module. I think it is burnt, although I hope not.... Can anyone confirm that I just badly programmed?

I try to send a pixel(green, red, black whatever the color is) to the ST7735 chip and it gives me randomly generated pixels all over. It happens as I set "Sleep Out" mode

A random pixel at the same address doesn't change its color, though. The pixel at (0,0) is always green no matter how many I turn off and turn back on.

What should I do to prevent this from happening ever again? I think I have limited the current more than enough. I am about to take out another LCD module, if anyone confirms it is indeed unusable.

P.S Sorry about the lack of detail. I thought the question is more simpler question. I thought that explaining the phenomenon and the end result would suffice to troubleshoot the problem. Here are the datasheets:

http://aitendo3.sakura.ne.jp/aitendo_data/product_img/lcd/tft2/Z180SN009/LCM-Z180SN009V00.pdf

https://displayfuture.com/Display/datasheet/controller/ST7735.pdf

This LCD uses 4-lines SPI (Register select, chip selection, SDA, SCL).
Initially, I just took a look at the datasheet and I tried to interpret it myself. I couldn't even have something that shows in the photo, so I referred to the examples online.

I followed the initialization process of theirs:

https://bitbucket.org/jschick/tft_st7735
(The one above corresponds to a pi code.)

github.com/adafruit/Adafruit-ST7735-Library.

My code is a bit of mass... I haven't commented it yet. So I will explain it myself:

Hardware Reset -> Delay 50ms -> Software reset -> Delay 50ms -> Window setting( setting X address & Y address) -> Normal Display Mode On -> 10ms delay -> Display On -> 500ms delay. Then I use "Ram write" command and a parameter(24bits). Just once (1 pixel). Finally an infininte while loop.

I removed all power control and other initialization process because it yielded a result no different from the photo above. I thought the default setting is very well sufficient.

\$\endgroup\$
  • \$\begingroup\$ No schematic, no code, no link to datasheet. I don't think we can help much. \$\endgroup\$ – Transistor Aug 26 '18 at 17:05
  • \$\begingroup\$ Possible duplicate of Initializing ST7735 with an LCD module . You already have a question here on this, you should not post another, but rather make a clarifying edit to the original. And realistically you should just get a platform on which you can run known good demo code for an initial test. \$\endgroup\$ – Chris Stratton Aug 26 '18 at 17:14
  • \$\begingroup\$ @ChrisStratton I am pretty sure that question isn't a duplicate of this question. That question was about initializing but I haven't got any answer. I solved it myself so I better delete that question though. \$\endgroup\$ – user167987 Aug 26 '18 at 17:21
  • \$\begingroup\$ Rather obviously you cannot command the display to show something until you successfully communicate with and initialize it. You have one problem here that you need to approach in a systematic fashion. Use the edit button to improve your original question. \$\endgroup\$ – Chris Stratton Aug 26 '18 at 17:22
  • 1
    \$\begingroup\$ What of it? That is Arduino code, you said you were using a pi. If you are now using an Arduino, update your original question and fully document the connections. Do not delete questions and repost, rules require that you fix the original: electronics.stackexchange.com/questions/392715/… \$\endgroup\$ – Chris Stratton Aug 26 '18 at 17:26
1
\$\begingroup\$

I am sorry for the fuss. It was a premature question without any details. In the end, I fixed the problem. When the display sleeps out, it is very well normal to have a screen like that. We need to overwrite that memory with our own image. I tried 16 bits color mode and it worked fine.

Thank you and I apologize to those who tried to help me.

\$\endgroup\$
  • \$\begingroup\$ Those who have the same problem as I do, try to lower the speed of SPI clock. \$\endgroup\$ – user167987 Aug 26 '18 at 18:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.