How: Creating Controller Board for LCD display


#1

Anyone know how to make a controller board for small LCD displays? I have a project where a very specific size LCD screen is needed, which I found but it doesn’t come as a module. Any tips or even just pointing me in the right direction would be appreciated.

Thank you!


#2

What kind of LCD screen are you looking to control?


#3

There isn’t a one-size fits all with that kind of thing, unfortunately.

If you’re lucky, Googling markings on the panel will lead you to a
datasheet, or if you’re really lucky, someone will have already done the
work and written code for Arduino/RasPi/whatever.

Here are some stream-of-thought notes I wrote about the process a few years
ago: https://jrainimo.com/build/?p=428

I ended up having a massive stroke of luck and found a pinout, but it would
be possible to eventually figure most of it out, through trial and error
and a lot of tears.


#4

This is the LCD screen I need to use

If you’re lucky, Googling markings on the panel will lead you to a
datasheet

The datasheet is on the link there that I shared. There are libraries and tutorials for several types of display drivers, but I don’t know how to go about setting up an LED display that isn’t already packaged as a module.

Here are some stream-of-thought notes I wrote about the process a few years
ago: https://jrainimo.com/build/?p=4281

Awesome. That looks helpful, i’ll read through these tonight.


#5

That’s not a data sheet, more of a product overview. There’s not enough information in it.

Did you get the demo code from the company, this will be helpful.

There’s a lot of work involved here, eg. to write text you’ll need to interpret font files to write the correct patterns on the display.

Yes, it is possible but looks like a lot of work.


#6

The “easiest” thing to do is to use a microcontroller with a built-in TFT LCD controller in whatever the rest of the application is. This type of RGB interface is pretty common and supported by many processors; most families of medium-large micros should include some models with such a controller.

If you need a framebuffer, that’s a fair bit of memory; if packed to 24bpp 768KB, or if aligned to 32bpp it would be 1MB, and you might want to double buffer, so you can double the memory requirement. If you can get away with an 8-bit LUT it’s a bit more reasonable, but still quite a lot onboard a micro; might need external memory.

Another option would be a dedicated display controller that has a more ‘usual’ interface like SPI, but are still more or less just giving you access to a framebuffer - you need to do all the graphics primitives yourself. e.g. Epson S1D13700, which has a pretty cheap Arduino shield available. I don’t think there are too many alternatives you can actually buy these days, most are using an embedded controller or a module using a bare die controller.

You’ll need a tad bit more information from the supplier though, at the very minimum the timing specifications so you know how fast you can run it (though I guess you could trial & error it).