1.6" LCD SSD1283A colour display - which library?

Good afternoon, all.

I am trying to drive a 1.6" x 1.6" 65K colour LCD module, which uses the SSD1283A driver electronics. I will be using the SPI interface. I have used, and am familiar, with several other OLED types, but I have not been able to locate a library for this device. Might I ask whether anyone might be able to point me in the right direction for locating a compatible graphics driver/library, preferably for the Arduino Due?


Kenneth Spencer

I can't find a datasheet. I suspect it is a 132x162 controller like ST7735, ILI9163, ...

I can find this pcb from AliExpress.

Have you received your screen yet?

Can you read the part numbers of the LDO, transistor, i.c. ??? on the pcb?


Thanks, David …

… I have received two of them.
The “driver chip” is stated to be the SSD1283A. The two I have are exactly as per your link. The resolution is 130x130 (actually 132 x 132 as per the datasheet) as the panel is square, at 1.6" diagonal.
I have attached a datasheet, but it didnt help me to identify a driver/library - maybe it will help you!

I have already used 2.8" (240x320) TFT devices in another project, which take the ILI9341 library. In hope, I tried that library with the SSD1283, and that doesn’t work.

I can just about read the details on the 20 pin SMC on the back of the PCD, it looks like:
LVCV24SA (possibly 5A)
There is a chip on the front of the PCB as well, but it is covered by what might be a heat sink, except that it has a flexi-print strip which passes under the display module twoards the centre of the device.

I cannot find a reference anywhere to a driver or library for this device, but I was hoping that one of the ILIxxxx libraries would work. Following your mention of the ST7735 and the ILI9163 libraries, I will give those a go.

Thanks - stilll in hope …

Kenneth Spencer

SSD1283A Datasheet.pdf (647 KB)

If your module looks like the link that I posted in #1, it has a 4-wire SPI interface. i.e. 8-bit SPI + DC.

I suspected that SSD1283 might be similar to SSD1289 i.e. unlike the rest of the civilised world.

If you have a LVC245 it means you can safely use 5V GPIO e.g. Uno, Mega, ...

It will take a bit of effort to write a driver without the display on my desk. Is it high quality sunlight readable?

Are you in Europe? Do you have a GitHub account?


Imagine that an explorer found a job lot of Fred Flintstone's motor cars. You could sell them on Ebay / Ali. The "performance" would not be as good as modern cars. Someone in China has found a warehouse full of obsolete TFT screens.

Thanks David ...

... I am in the UK - England, South West.

I am using an Arduino Due with this project because I need 60 (CS = 1-60) Monochrome OLEDs all using SPI (CS lines used to address them all) and one TFT colour display. The code is all written for the mono devices, the colour TFT is CS = 61 and the last bit of code to write. (The device actually has 4 Dues, a Mega, a Nano and a Teensy in it!).

The Due is 3.3V (as you no doubt know) and drives an ILI9341 with no issues. All the Mono OLEDs are SSD1306 and are happy with 3.3V too. Unfortunately the ILI9341 is just a bit too big for this project, hence the SSD1283A which is a perfect size.

I do have a github a/c, yes. If there is any chance that you'd write a driver/library, and if you are in the UK, I might consider sending you one of the TFTs to work with.

I haven't had a chance to try the ILI9163 or the ST7735 yet, but I will.

Thanks again,

Kenneth Spencer

Yes, I am in the UK.

The ST7735 or ILI9163 would be much easier. They are both MIPI controllers. And I think that both are still in production. 240x240 ST7789 displays are 1.5 inch

The SSD1283 is well obsolete. It all depends on how big a stash of obsolete screens have been dumped on the surplus market.


Thanks David ...

... I think I have found a library. I don't want to attach it to this thread, but if you email me (kenneth ...at... kaspencer ...dot... com) I will send it to you and you can look at it and tell me what you think. I am going to test it but it won't be for a few days now.

I'm sure that you'll be able to offer a better judgement on its possible use than I can! But it does appear to have all the necessary functions.

Best wishes,

Kenneth Spencer

I modded this one to work on arduino (atmega328p in a pro-mini 3.3v): https://github.com/gitcnd/LCDWIKI_SPI

with this init code:


If you need it to be 10 times faster and wire data+clock to pins 11 and 13 you can paste this snippet in there: https://www.avrfreaks.net/comment/2696096#comment-2696096

Please try my Fork(s): https://github.com/prenticedavid/LCDWIKI_SPI https://github.com/prenticedavid/LCDWIKI_gui

I never got any feedback from kaspencer. If you own a SSD1283 display it would be nice to know if it works.

LCDWIKI has extremely unusual method syntax. It works (on ILI9341 and ST7735) but is rather slow.


Hi David

Thanks for the fork and comments. I bought ten of these screens before I realised how useless they are.

I just tried your fork but I can't see how it is different to the original code. I have it working off a nodemcu but the loop stops, which might be what you are saying in the readme "ESP8266 will timeout without lots of yield() calls." Is the esp reset from one of the other library functions? Not quite sure how to do the yield calls.

Do you know how I might use xbm images? Or should I just throw the screens away?


The edits in my Fork are in the "tidy up" and "port to other platform" rather than "radical change".

The first question is: Does the display have good colours and angle of view?

i.e. is it worth the effort?

I was not expecting an ESP8266 user. I will put in the yield()s into example(s). The library design is pretty inefficient.

Any particular XBM image? Stationary images or animation?


I have not heard from you.

I have added an XBM example to my Fork. And a more convenient way to configure Hardware SPI.


An Aliexpress buyer reported that successfully drove the SSD1283A using the following driver from LCD wiki: http://www.lcdwiki.com/1.6inch_SPI_Module_ESP8266_SSD1283A_SKU:MSP1601

There you can find the 1.6in Color TFT datasheet in the following link: http://www.lcdwiki.com/res/MSP1601/H016IT01_V0_Ver.0_20041106_201407195970.pdf

You can also find the SSD1283 datasheet in the following link: http://www.lcdwiki.com/res/MSP1601/SSD1283A%20Datasheet.pdf

Cleiton Iida.

Yes, you can use it with ESP8266. It is incredibly SLOW. So you must inset lots of yield() statements to avoid the WatchDog biting you.

If a reader owns a SSD1283 display, please could you leave a message here. No one responds to LCDWIKI GitHub page.


Hi David,

I just received 3 of these: 1.6 Inch OLED 1.6" TFT IPS OLED Transflective Display Module LCD Display DIY SPI Serial Port 130*130 Communicate for Arduino

And searching for SSD1283A brought me to this topic.

I will try your fork and report back.

Best regards


It works, but is not very bright. Readable without backlight. No outdoor test yet.

It "looks" as if LED is switched by transistor Q1. So you can operate the backlight with a wimpy GPIO pin. Q1 might conduct partially if LED pin is n.c.

I strongly recommmend that you drive it with a GPIO pin.


Yes, the picture was taken with LED connected to 3.3V GPIO. Brightness is about half if LED disconnected, none if connected to GND. The picture is slightly out of focus, looks better in reality. Connecting LED to 5V (through 1k) results in same brightness as with 3.3V.

Outdoor readability is good, with and without backlight. No sun yet, hazy outside still.

Please report whether SSD1283A display is worth supporting e.g. wide angle, daylight, ...

Wide angle is good enough, 90° gives better contrast of course. Daylight seems good.

I think it can be recommended for hobby use, therefore support by any widely used library would be welcome.


Don't run at half brightness. You want Q1 to be either saturated or fully off. Anything in the linear region will dissipate in Q1. PWM is fine for controlling brightness. Q1 will be happy.

How does the display compare with Red 160x128 ST7735 or ILI9163 boards ? e.g. viewing angle, readability in daylight.

The only virtue seems to be 3.3V level shifters on the board. So it will work on 5V Uno.

The LCDWIKI code is slow. The LCDWIKI_GUI API is like UTFT library. Adafruit_GFX has a nicer API.


How does the display compare with Red 160x128 ST7735 or ILI9163 boards ?

I don't know; I currently don't even know what small TFTs I have, and I never have tried outside.

I think any other small TFT may be brighter indoor, transflective displays seem less bright, also my outdoor GPS devices.

Level shifters are a big plus for 5V Arduino users, but the main advantage seems outdoor readability.

I would hope for support for this display in Bodmers TFT_eSPI.


I started making an artificial horizon for an ulm with an Oled SSD1351 screen connected to a teensy 3.2 about 4 years ago.
At first, with the adafruit library, the display created flickering that was detrimental to the display comfort, so I put my work to sleep.

With the discovery of the library optimized by Kirberich and the use of a buffer, the display no longer flickered, the buffer was filled and displayed at the end.
With a frequency SPI 18Mhz, the teensy3.2 runs at maxi 72Mhz, with SPI at 15Mhz, the teensy3.2 can be overclocked and correctly operate at maxi 120Mhz.

So I realized my project.

!(http://Lien vers mon image)
!(http://Lien vers mon image)
!(http://Lien vers mon image)

If the vision is correct with a sunless sky, it becomes unreadable in a cockpit under the sun.

I discovered and bought 2 transflective 130x130 pixels-1"6 ssd1283 transflective screens similar in size to the adafruit ssd1351, for a derisory price (1/10th of the price of the ssd1351 adafruit), even if the viewing angle is a bit less good.

With the fork from @david_printice and LCDWIKI libraries (SPI and GUI), I performed a first test with arduino nano, and I find myself as 4 years ago with flickering, but a very readable display in full sunlight (however, does not work with teensy3.2 - but it is important).

As much as I know how to modify an arduino program, but now I don’t know how to adapt a library, it’s too complex for my little knowledge.

If someone can show me an example for draw_triangle with buffer and if it is possible, maybe I can continue for the other commands and share.

Best regards,


Translated with www.DeepL.com/Translator