Hacker News new | past | comments | ask | show | jobs | submit login
Reverse Engineering an LCD Display (sudhir.nl)
180 points by erik 11 months ago | hide | past | favorite | 20 comments



These were probably a custom order for some product (anyone wanting to dig further into the mystery can try to find what that could be) as there are clearly enough pins on the connector for an 8-bit interface, but they omitted connecting the 4 lower data bus bits.

On the other hand, all alphanumeric LCDs are almost certainly going to have a controller with the same or nearly the same instruction set as the infamous HD44780.

Nonetheless, longer single-line sizes than 16x1 are not entirely nonexistent; here's someone who has a 24x1:

https://forum.arduino.cc/t/liquidcrystal-begin-documentation...

Here's a few other 32x1 I found:

https://orioleindia.tradeindia.com/alphanumeric-lcd-modules-...

https://www.cselettronica.net/elettronica/optoelettronica/mo...

(One of Google's most noticeable degradation in search results is when searching for parts like this. I'm sure there are plenty more sites where a 32x1 character LCD can be found, but it's just not returning them.)


>On the other hand, all alphanumeric LCDs are almost certainly going to have a controller with the same or nearly the same instruction set as the infamous HD44780.

This. Reverse engineering character LCD displays is bit-banging your way around the HD44780 specs and see where you land.


Cutting the 8bit wide bus down to a 4bit nibble is one of the more common ways to drive HD44780 based LCD displays.

So it would not be terribly surprising that other competing controllers also support it.


One of Google's most noticeable degradation in search results is when searching for parts like this.

It's not just parts like this, it's pretty much all parts. Search results are massively front loaded with SEO farms 'selling' something that is vaguely related to the search term (all of whom don't actually stock the part). Getting actual information about the part, a blog post about the part, or finding someplace it's in stock, is increasingly an exercise in frustration.


P.S. - Kagi.com is an absolute game changer here. With all the ads and (most) crap SEO sites masked out, you can actually find shit. Worth every penny of the subscription.


...while sanding I quickly realized that the chip under the epoxy couldn't be a ST7066 after all. The ST7066 can only drive 16 characters."

It's amazing how doing something repetitive and "zoned out" like this can clear your head and make room for fresh breakthroughs. I spend a couple days plugging gaps in my work schedule by sanding custom furniture I made, and felt slightly more productive each time I went back to my desk afterward.


Of note, the ST7070 was made for the European market for extra chãrǎctér süppørt. A custom library already exists for interfacing with it and the page has some interesting additional details about the chip: https://werner.rothschopf.net/202003_arduino_liquid_crystal_...

As a side note, the text on the chip when photographed at 200x appears to say “VIA-AEPT-A CHP-A” when you turn the image upside down :). https://imgur.com/a/4BpivfH


On a similar subject: Reverse engineering of a Kindle e-Ink display. https://arxiv.org/ftp/arxiv/papers/1605/1605.05174.pdf


I have an LCD display salvaged from a knockoff calculator that I had been keeping for one day I might try to reverse engineer it. This stuff is both informative and fun. Good work thanks for sharing!


A calculator will likely have a "controllerless" LCD wherein the display is just the two pieces of electrodised glass with the liquid crystal between them and polarisers on the outside, as the controller will be part of the ASIC.


yep, this is such a great and detailed writeup. I have never decapped or even freed a chip from that black epoxy blob but after reading this I feel I could do it if I needed. I have saved this for the future.

I have a old clock radio in a box which I was thinking to turn into a internet/podcast radio at some point (so I could always get the news right when I'm supposed to wake up)

I was planning to retrofit a piTFT or something into it but it would be much cooler to reuse the existing LCD... although based on the amount of work required and history of me completing these "interesting" projects I have on the shelf... I will probably do neither and at some point just buy something suitable :-)


In this case he had 150+ of them, so it wouldn't matter too much if he destroyed a few of them in the process. It would be more nerve-wracking to do this on something you don't have many of.



I was hoping to do a similar thing recently, hoping to be able to reverse engineer an LCD screen from a digital picture frame I got at a thrift store for a couple of dollars. I thought I might be able to use it as a screen for my 6502 homebrew computer. I very quickly gave up though when I saw how many pins it had. I did find a datasheet for the screen, but going through the pin descriptions of each of the 60 pins, I realized there's just no way this is a good fit for my project.


I've been doing something very similar with some VFD displays. I've had the Oscope and the LA out, but mercifully haven't had to decap anything to figure them out (yet). Pretty much figure out the voltages (important!) and get an idea of the pinout and start by assuming an HD44780 or derivative and see how far you get.


I have a bunch of large 10" LCD "atomic" wall clocks that use WWVB for time information. I want to retrofit something like an ESP32 running NTP. I can never find any specs on how to drive the (non-standard) LCD segments with numbers and icons. Has anyone reverse engineered one of those?


driving raw LCDs is not hard, but tedious as you need a large (3, 4, or 5 depending on MUX settings) number of drive voltages. You are MUCH better using a chip that has a native LCD driver. Microchip has a bunch of 8-bit PICs that do. And then you can talk to it using SPI or UART from your ESP32. As for pinout - just guess and check the rows and cols. It won't take long.


A little off topic, but what possibilities are there to rip out the guts of a "smart tv" and just use the display as a dump monitor? I love my Samsung display for its visuals, but the OS is terrible.


Search for universal "TV scaler board", they do exist but I don't know how well they work.


According to this review from a few years ago, some are quite decent (and have a little bit of "smart", as in an integrated media player): https://news.ycombinator.com/item?id=24877363

(Original link has disappeared, the Internet Archive is your friend.)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: