Driving a multiplex LCD

has anybody built a circuit to drive a multiplex LCD for example one salvaged from a clock?

I would like to re-purpose some lcds (bike speedometers). They have 21 leads to the glass and I'm guessing they have 3 backplanes and < 40 segments.

from what I can see I have to develop multiple voltage levels for the different backplanes and it's a bit daunting. Any suggestions gratefully accepted.

I'd be happy to buy fresh displays but this seems like a nice form factor and easy to waterproof for outdoor use.

You're probably not going to have much luck interfacing with those LCDs unless you can find a spec sheet for them; if they don't have an integrated driver chipset (ie, the IC for the bike computer controls them), then you are either going to need to get such a driver IC or implement its functionality in software.

I don't know much about bare LCDs like you seem to be describing, other than that they require an AC signal at a certain frequency to activate the segments (DC will typically kill the segments); you might be able to generate this with the Arduino (maybe running a pin PWM with a negative DC offset?), but what voltage level you need is unknown (more than 5V? less? my guess would be less, possibly much less).

A way to figure out which segments are controlled by what might be to figure out with pin is ground, then ground other pins to it - if multiple segments are affected, then that is probably some kind of common pin, whereas if a single segment is affected, then that pin is for that segment, of course.

Sorry I couldn't be of more help...good luck!

:slight_smile:

thanks, I know a bit about them. You can drive them with a square wave from an arduino's pins, alternately writing 0's and 1's. as you say, it's the multiple voltages thing that causes the grief.

woohoo, found this thru another forum an app note titled
AVR340: Direct Driving of LCD Using General Purpose IO

That's just what i need.

Hi Bill,
That looks super interesting, have been curious to this for a while. I wondered if you've managed to get it working on Arduino and how you've adapted the Atmega code to run on Arduino?
Many thanks!

That is interesting - seems like there's an app note out there for everything if you are willing to look! Glad you were able to find that; were you successful?

:slight_smile:

I have discovered a really good solution to this problem which is unfortunately too large to post in this margin.

Seriously. I'll post a description later.

UPDATE: A full description is here Driving a Salvaged LCD Directly from Arduino - Exhibition / Gallery - Arduino Forum

Great, looking forward to that.