Reverse engineering a static LCD display glass - Page 1
Forum section: electronics / projects

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 01, 2016, 09:40:01 am
content: I've had a project on the back burner for years... I want to take a regular human weighing bathroom scale and change the controller with one of my own and use this to log, send to Wifi etc... I know this is a reasonably pointless project as I could just go and buy one but I'm doing this for education as much as anything else... anyway...I have a LCD from the retail scale, the LCD connects to the existing controller via 16 pads and an elastomeric strip, from some measurements I took a long time ago I think there are 4 commons i.e. 1/4 bias so there should be 4 common and 12 segment lines.I am trying to work out which segments are driven by which lines and failing miserably.I rigged up 16 wires in parallel to the existing pads so I can apply an arbitary AC signal to any pair of wires giving wires numbered 1 to 16. I'm pretty sure the commons were together when I scoped them but not sure which end.Anyway... if I apply a signal to a pair of wires it seems lots of segments light up? I'm not sure why that is. Wouldn't I expect just a single segment?(The original circuit is still in place, maybe some signals are going back in to the existing SOC LCD controller and out again?)Is there a clever way to work out which segments go where?

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 01, 2016, 09:43:40 am
content: I successively connected randomly chosen wire 1 and wire 16 and marked all black segments A, then wire 1 and wire 15 and marked B and then wire 1 and wire 14 and marked C and then wire 1 and wire 13 as D and got a diagram. I think this is trying to tell me something but I don't understand why multiple segments are ON, surely having 1 common and 1 segment should only light 1 segment?

author: bktemp
author_rank: Super Contributor
timestamp: July 01, 2016, 10:08:16 am
content: It is probably capacitive coupling inducing a voltage in unconnected segments. Unlike multiplexed LEDs LCDs will turn on at either polarity, so the only way to light up only one segment is to adjust the voltages in the system so that inactive segments are just turned off and active segments are turned on. That's why the contrast of most LCDs is quite bad.Try reducing the AC voltage until only the selected segments lights up. And try connecting all unused segment wires to the common line or connect all unused common and segment lines to a voltage centred between the drive voltage on the selected common/segment pair.

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 01, 2016, 11:10:46 am
content: Do you think it would be safe to conclude that 16, 15, 14 and 13 are the commons?

author: bktemp
author_rank: Super Contributor
timestamp: July 01, 2016, 11:38:47 am
content: What happens if you choose other pins like 1+12 or 1+11? If they behave different from 1+13/14/15/16 then 13-16 are most likely the commons.Based on the arrangement of segments lighting up when you drive 13-16 it looks plausible.

author: NivagSwerdna
author_rank: Super Contributor
timestamp: July 01, 2016, 01:24:18 pm
content: Connecting only 2 pins from 1-12 seems to do nothing... so that seems like a good sign.I tried again and got slightly different results... I connected Pin 16 and then moved systematically from Pin 1 to Pin 12 with the other side of the AC signal...It looks very convincing... and slightly different from what I was getting before.Changing to use Pin 15 or 14 or 13 seems to not change the pattern so I think in this mode it is as if the commons are coupled together in whatever mode I am operating in, however if you put this and my previous sketch together I think I might have most of it worked out (but still not sure about the ST LB KG indicators).Possibly enough to make a prototype PCB (I can't face the wiring and connecting to the LCD glass requires an elastomeric strip).It seems to take around 5Vpp to get the segment to go black. Is that typical? I was planning on trying a XMEGAB for this project, not sure if that will generate enough oommff for the display?