Detect Segmented LCD Display data using Driver signals

Go To Last Post
13 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi ...
I have a Medical Module which measure something and displays it on a Segmented LCD Display (very low power)
I have no idea what is the driver IC located near LCD But using Digital Oscilloscope I can see that driver uses Multiplex mode Driving and has a stair stepped waveform as you can see :


LCD has 3 Digit each Digit has 7 segment and a little "ppm" string is located at the right bottom of the LCD. here is the pic of LCD. It has 14 pin :

I think this is 3x7 Segmented LCD. Right ?
I have absolutely no idea how to detect those information. for example I want to turn a heater ON if LCD is showing a number under 100 and ... Any Idea ?
Please help me

Last Edited: Tue. Sep 13, 2016 - 01:28 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Surely it's possible, you just have to decode the waveforms back to segment data, then decode that back to a number.

You would have to sample all 14 pins, and because of the 4 different voltage levels you'll need an ADC. With that information you can figure out what segments are lit by computing the voltages over the backplanes and segment lines.

I think it's easier to locate the driver IC, but if you are unlucky it's integrated into the MCU; there's no data to snoop then.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks

First problem is I dont know how to decode the waveforms back to segment data. I'm not sure I know those waveforms !
Could anybody explain those waveforms a bit more ?

You said because of the 4 different voltage levels. Why is that 4 ? I can see 3 different levels only.

Which AVR has 14 ADC Pin ?
Also voltages levels are too low.
And I dont have LCD datasheet. Is there any ?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I'm not terribly well versed in LCDs, but I recall reading that multiplexing schemes for them rely on the nonlinearity of the displays' visual response to different levels of AC excitation voltage. An LCD segment doesn't become gradually more "different" (blacker, say) from its surroundings the more AC voltage you apply across it; there is a threshold below which the segment is visually unchanged, and above which it becomes visually different. This is fortunate, because LCDs respond to (and require) purely AC voltage drive (currents arising from DC voltages tend to etch away one or both of the transparent electrodes that define which portion of the magic LC goo a given segment uses) instead of DC.

Becaause you have to connect groups of LCD elements together in order to implement any kind of multiplexing, it's not possible to avoid stimulating (have zero volts across) the two electrodes of any given segment while stimulating other segment(s), except for trivial cases like "darken the middle segment of every digit". The weird waveforms are designed so that the differences between the "row" and "column" signals are sufficiently larger for the segments that are desired to be "ON" than they are for the other segments.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Read the mega169 datasheet. Specifically the chapter about the LCD controller (it can drive this kind of display) you should then understand more about how the signalling/multiplexing works.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thank you guys
Yeah I kind of did that (looking at mega169)
But still have a problem. I couldn't get LCD Datasheet.
How am I suppose to figure out which pin is COM and which is SEG ?
Is there any VCC and GND Pin on this type of LCDs ?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:

How am I suppose to figure out which pin is COM and which is SEG ?

Sadly it is very tricky without data. In years gone by I've looked at the possibility of "re using" the display from a calculator but when the lCD SEG/COM's are simply driven by an anonymous black blob on the board it's close to impossible to determine the pin out.

I know this is kind of a mad idea but you couldn't do something like optical character recognition on the final output display instead could you? In fact if it's just a question of whether a display above/below 100 is being shown then simply monitoring the state of one of the segments that makes up the '1' in that might be enough.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Reusing the display of a calculator is almost impossible anyway, because of the usual attachment method to the PCB with a very thin printed foil that's glued or something. Nearly impossible to remove and reattach to something else intact.

You can find out what seg/com pins are with a function generator set at square wave at 30-60Hz. In this particular case, I guess each digit has it's own backplane, but that's not universal. Some displays have a backplane for the upper segments and one for the lower segments. Usually it's arranged in such way that the pincount is minimized.

It would be interesting to set your scope to ch2-ch1 mode and connect one channel to a com and the other to a segment pin.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:
Quote:

How am I suppose to figure out which pin is COM and which is SEG ?

Sadly it is very tricky without data. In years gone by I've looked at the possibility of "re using" the display from a calculator but when the lCD SEG/COM's are simply driven by an anonymous black blob on the board it's close to impossible to determine the pin out.

I know this is kind of a mad idea but you couldn't do something like optical character recognition on the final output display instead could you? In fact if it's just a question of whether a display above/below 100 is being shown then simply monitoring the state of one of the segments that makes up the '1' in that might be enough.

Thanks
OCR ? I can do that but we're gonna need a Computer and a Camera ! It's not an option.
Number 100 was just a sample. A more complicated control algorithm must takes place.

Ok. How about building my own Device ?
The Device I was talking about is a DUAL "TDS METER" . A water test instrument. See below :
http://www.tdsmeter.com/products...
or exatly this :
http://www.ebay.com/itm/INLINE-D...

Can you see those Probes in link #2 ? What are they and what did those make from ? How this device reads those probes and based on what calculation does reading and converting to "PPM" ?
I think I can use probes and make a small board to make exactly what DM1 does. If I could build that myself I can easily control what I want.
I think included chip (It's a masked IC. possibly a micro) releases a Current to one Pin of a Probe and measures returned current from another Pin of that Probe and calculates "PPM" of testing subject (water)

Last Edited: Mon. Sep 10, 2012 - 07:23 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

jayjay1974 wrote:
Reusing the display of a calculator is almost impossible anyway, because of the usual attachment method to the PCB with a very thin printed foil that's glued or something. Nearly impossible to remove and reattach to something else intact.

You can find out what seg/com pins are with a function generator set at square wave at 30-60Hz. In this particular case, I guess each digit has it's own backplane, but that's not universal. Some displays have a backplane for the upper segments and one for the lower segments. Usually it's arranged in such way that the pincount is minimized.

It would be interesting to set your scope to ch2-ch1 mode and connect one channel to a com and the other to a segment pin.

Can you explain more ?
A simple square waveform? But based on what I watched On Scope the driver uses multipexed driving because of number of LCD's Pin. 14 Pin. One connected to nowhere. So we've got 13 Pin. 13 Pin for 3 Digit. Each Digit has 7 Segment. Based on waveforms driver uses 1/3 Bias (4 different voltage levels)
Please Explain more how to use Scope and Function Generator to figure out the Pins.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

But what an actual segment sees between one side (common) and the other side (segment) is likely not a complicated waveform. Likely a square when on, zero when off. The problem is of course determining what are the backplanes and which pins are the segments ;)

I still want to do such experiment with data from the atmega169 datasheet.

TDS is a Total Dissolved Solids. I don't think it's trivial to design such meter yourself.

Can't you (just) buy a meter that has the required functionality?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

This subject came up recently in the thread https://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=124397 I actually thought I was going to read that thread when I clicked on this.

As for re purposing White goods, calculator , wrist stop watch, or thermometer (temperature) displays. I have done so. Most displays I have seen have a conductive rubber strip between the PCB and the case. Usually the case is injection molded holding this together. Once the pressure from the case is released the contact is lost.

Typically the glass has a coating of iridium-tin oxide. I think the only way to connect to this conductive coating is with a mechanical contact. It does get messy if the display is connected to a FPC cable. I asked a manufactures sales "engineer" at a trade show once about this. The conductive material under the insulator is as thin as physically possible. Any kind of mechanical abrasive will remove it in a few nanoseconds. On the other hand with care and an art eraser by hand one can remove the insulator. Again only mechanical connection (like a clip lead) to the exposed conductive layer (which may only be atoms thick is needed.) I have noticed when re-purposing displays from various consumer "White goods" that the cables are often riveted. I have had success pulling the "tuning fork" pins from dip sockets to make a mechanical contacts when testing unknown display topography.

Years ago a friend told be how to find the com and digit wires on such displays. Using the square wave method. This was a simple waveform generator made out of some 4060 cmos ICs. Basically what you have is a set of waveforms that are out of phase with each other. Using a clip lead to the conductive tabs and graph paper one works out the patterns by trial.

The LCD structure is basically a capacitor with the com as one plate and the segments are another. By changing the polarity of the charge through the phase of the bias the crystal structure twists. What is between the plates is essentially soap. The outside of a soap bubble is a liquid crystal. Why soap bubbles effect and are effected by polarized light. This is also why it is a bad idea to put DC across the plates. The DC will break the crystalline structure over time, like popping a soap bubble.

When the out of phase square wave is connected between the com and seg pins, all the given segments for that com will hi-lite. Typically the segments are named with lower case letters a-g. More letters if alpha numerics are involved. The com lines are usually labeled with numbers. Most displays will have 3 com lines. Some might have 4 but that adds complexity to the multiplex waveform. When using the square wave method, there is no need to worry about the mux offsets. The pattern is simply an x-y grid. As there are probably only 3 com lines once these are detected the rest becomes routine.

If there are symbols like the day of the week, set and alarm call-outs. These will often be multiplexed with the alpha or numeric segments. Tracing such can be a rewarding form of discovery.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

clawson wrote:
Quote:
The Device I was talking about is a DUAL "TDS METER" . A water test instrument. See below : http://www.tdsmeter.com/products... or exatly this : http://www.ebay.com/itm/INLINE-D... Can you see those Probes in link #2 ? What are they and what did those make from ? How this device reads those probes and based on what calculation does reading and converting to "PPM" ? I think I can use probes and make a small board to make exactly what DM1 does. If I could build that myself I can easily control what I want. I think included chip (It's a masked IC. possibly a micro) releases a Current to one Pin of a Probe and measures returned current from another Pin of that Probe and calculates "PPM" of testing subject (water)

 

I am having the same questions. Have you worked on it?

Can anyone tell me how can I program the probes via arduino?

 

Thanks in advance!

 

* Do not post your question in multiple threads! Moderator *

 

Vani

Last Edited: Tue. Sep 13, 2016 - 01:27 PM
Topic locked