3
\$\begingroup\$

My kids have night lights that died. Of course I gutted them and found nice little displays. They show a 4-level battery control and a 2-level light control. I think they are pretty neat and I would like to try and use them. The problem is:

I can't figure out the pinout and therefore the way to drive it.

It comes on a little PCB with a push button next to it and interfaces with the original motherboard through an 11-pin ribbon cable (I cut it off):

Closeup image 1

Closeup image 2

This is the schematics I have been able to figure out of the display's PCB but also how it hooked up to the motherboard, and here is also my interpretation:

  • The two diodes make an OR between the power derived by the LDO and the power from the battery in order to keep the backlight on even if the LDO is down due to too-low a battery level.
  • The backlight is controlled by an MCU (probably PWM to have a control over the intensity).
  • The push button is plugged to the MCU (probably internal pull-down) to read back its state.
  • The 7 pins of the display are controlled by an LCD controller which probably chats to the main MCU via I2C.

Schematic diagram

In terms of display this is what I figured out (the same colors light up together):

  • 27 segments
  • 10 groups of things that light up together (can't find a better what to call them)
    • Battery outline: 1
    • Charge segments: 5
    • Star center and rings: 3
    • Star dots and rays: 2

Annotated LED panel

LED photo

I am an electronics engineer but I never used or learned about bare LCDs. I have searched the web to understand how they worked, and I found this excellent video, EEVblog #1045 - How To Drive an LCD.

This gave me the impression that, though I should not do this long-term, if I just tried applying DC on the pins, thing would show up and allow me to identify pins/segment attributions.

  • When I apply voltage on the pins they seem to light up in groups that make no sense.
  • With a Raspberry Pi Pico I tried running combinations of voltages across the different pins hoping that I would be able to identify something, but this failed.
  • When I touch each pin independently, I can see that some segments of the display light up (very repeatable), so I made a table of that to see if I could make sense of it, which also failed.

Could it be that we have a 3-line (pins 2, 3, and 4), 4-column (7, 8, 9, and 10) sort of display?

Would that even work with the COM pin business of LCDs?

Can anyone suggest a test to understand the pinout of that LCD?

\$\endgroup\$
3
  • \$\begingroup\$ Maybe there are really only 12 or fewer independent "segments" or annunciators. That would allow 3 commons and 4 segment lines, or vice versa. \$\endgroup\$ Dec 31, 2022 at 3:30
  • 2
    \$\begingroup\$ Could you give us the results of your experimentation? \$\endgroup\$
    – Hearth
    Jan 1 at 20:10
  • 1
    \$\begingroup\$ LCDs are AC devices. Applying DC voltage to a LCD runs the risk of destroying it. Relevant question: "How exactly is an LCD damaged by DC current?" \$\endgroup\$
    – user71659
    Jan 5 at 0:17

1 Answer 1

3
\$\begingroup\$

OK found the method.

Thanks @Spehro Pefhany. I looked more into Matrix adressed LCDs. I thought I would post the answer if anyone is interested.

I assumed that the split of pinout 2, 3, 4 then 7, 8, 9, 10 was not innocent and that they were columns and rows of a matrix. Therefore adressing up to 12 "annunciators".

Each "capacitor" is an LCD annunciator:

Matrix showing capacitances

So with the RasPi-Pico I executed a two step identification:

All pins are driven High then:

  • 0 is applied for a few seconds before applying 1 again on each row pin successively

    ==> this will light up all annunciators of the same row

Then

  • 0 is applied for a few seconds before applying 1 again on each column pin successively

    ==> this will light up all annunciators of the same column

Matrices annotated with current flow

  • Pin2 Row showed Bat1, 2, 3, 4

  • Pin3 Row showed Center, Ring1, Ring2

  • Pin4 Row showed Battery_outline, rays, dots, Bat5

  • Pin7 Column showed Bat3, Battery_outline, Ring1

  • Pin8 Column showed Bat2, Rays

  • Pin9 Column showed Bat1, Ring2, Dots

  • Pin10 Column showed Bat4, Bat5, center

Mapping lines and columns gives:

Annotated matrix showing mapping of LED segments

OK I just need an LCD driver now to do something with this display. Thanks to the community.

\$\endgroup\$
2
  • \$\begingroup\$ Your previous answer (that was an update) should really be added to the question, as it was full of useful information and it would be a shame to lose it as it could be useful to someone else. \$\endgroup\$ Jan 4 at 23:47
  • \$\begingroup\$ Nice work sussing that out. \$\endgroup\$ Jan 5 at 12:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.