Hi all, I bought a Chinese 2.8" LCD touch shield that looks just like the Adafruit touch shield, but with a UC8230 driver chip, and the adafruit library doesn't work with it. After a lot of searching around, I found that a Taiwan manufacturer makes the UC8230, with a datasheet. Can anyone help me see if this chip is compatible with any of the libraries?
I bought on Amazon a Kuman K60 display that uses a UC8230 controller.
After testing many libraries and solutions I contacted the seller that sent me the libraries.
So far I tried only a "Hello World" example but it works, so I believe that they are ok.
Now repeat the exercise with 0x5408, 0x6809, 0x9325, 0x9335.
Please observe the Colours. i.e. does RED appear red, blue, magenta, ... ?
Please note down the aspects. i.e. is PORTRAIT the right way up? (any printed Touch icons or Touch ribbon at the bottom of panel. Any reset button at top of panel.)
Does Software Scrolling work?
With luck, one of those IDs will work 100%. At worst, I just have to change horizontal mirror.
OK:
Strings correctly displayed
NOT OK:
- blue color grade is red
- scrolling in portrait doesn't work well: after the first scroll up and scroll down when appears "only the color band" it makes another scroll but it stops at half
Notes:
String read pixel says "BGR"
with 0x6809:
Screen blank
with 0x9325:
Screen blank
with 0x9335:
Screen blank
Sometimes it doesn't work correctly by displaying some blurred noise, maybe a missed software reset. Disconnecting and reconnecting the USB (power cycle) fixes the issue
You don't need to force the ID any more. It should recognise ID=0x8230
The older ILI9320 style of controller can only scroll the whole screen.
The Band Scroll test scrolls 64 rows of screen.
If Band "works" you just see a small section scrolling in a steady picture.
On a non-Band controller, you will see the whole screen scroll by 64 rows and stay there.
If you still get a "reads BGR" message, add the READ_BGR attribute.
First off, unpeel the protective plastic film on your Touch Glass.
Does your screen look blurred, shaky, ... ?
I tried to add the case for the 0x8230 but did not work, I still have to force the identifier using
tft.begin(0x5408);
Regarding the other tests, it seems to be good apart the "BLUE COLOR GRADES" that appear red.
It also seems that UC8230 is not capable of band scrolling...
I'm using Arduino Mega 2560.
I really don't understand why I get a blank screen using 0x8230...
Unfortunately using Arduino IDE I miss all the tracing tools of the AVR Studio.
BTW the thing that puzzles me is that of the four "color grades" only the blue one is inverted. I expected that also the red would be blue, but the issue is only on the blue grade...
Well, I just tested INVERT_RGB with an ILI9320 on a NUCLEO-F103 board.
It swapped Blue and Red as expected.
Unfortunately, my ILI9320 is 3.3V so I can't use it on a Mega2560.
I can put a ILI9325 onto a Mega2560. (and change that block's reg(0x0003) default to 0x0030)
There seems to be something very odd with your Compiler. RGB / BGR is a single bit in reg(0x0003)
If you are happy with GitHub, I will add a test_UC8230 branch later.
And then I know that you are using the same code as me. You don't need to run GitHub. Just copy-paste the mcufriend_kbv.cpp file directly to your editor.
I have only managed to find a "Register list" for the UC8230. Not a full datasheet.
The Registers and bitfields seem to be in the same places as ILI9320 / SPFD5408.
The finer details might be different. e.g. VCOM tables.