# Controlling flip/vane clock digits

I've obtained a vane/flip clock which has 4 digits, but the controller is long gone. I plan to control the clock using a Raspberry Pi and the usual relay boards you get for them - I've done something similar before and know this works.

However, given the relays would have to operate every minute, I doubt they'd last long before needing replacing. I'm therefore seeking a way of running the clock in the same way but without relays. Does anyone have any ideas?

On each digit, each segment has Common (C), Reset (R) and Display (D) connections. On each digit, the segment Commons are connected together to form a digit Common.

So to display a segment, you'd apply +12V to the digit Common and -12V to the segment's Display terminal. To reset it, the -12V would go to the Reset terminal instead.

There are four digits on the clock, and the segments of each are connected together so the R of Segment A on the first digit connects to the R of Segment A on the second digit, etc. The R of Segment B connects to the R of Segment B on the second digit and so on. The same applies to the D connections.

There are therefore fourteen relays for the segments (7 for displaying + 7 for resetting).

Each digit has its own relay for the digit Common (so there are 4 digit Common relays).

So to display '0123' on the four digits, you'd do this:

• Activate digit Common relay for the fourth digit
• Set the segment display/reset relays appropriately to display a '3'
• Deactivate the segment display/reset relays
• Deactivate digit Common relay for the fourth digit
• Activate digit Common relay for the third digit
• Set the segment display/reset relays appropriately to display a '2'
• Deactivate the segment display/reset relays
• Deactivate digit Common relay for the third digit
• (Then do similar for the first two digits)

Each segment needs 280mA to operate, so the maximum current draw at any one time would be 1,960mA (280mA x 7)

• When you say -12V, do you mean 12V below some other ground point in the display or do you mean 12V return?
– vir
Feb 22, 2022 at 22:35
• I wonder if that's an inductive load. (I suspect it's a solenoid, in which case it absolutely is an inductive load.) If so, make sure whatever switching solution you come up with can handle it (snubber diodes, etc, etc.)
– TLW
Feb 24, 2022 at 3:14

Instead of relays you could consider using MOSFETs, there are many that can support both logic level inputs and 280 mA on the outputs.

No moving parts so nothing to wear out.

• Thanks for that. I'm fairly new to MOSFETs so was wondering if you could provide any extra info on how I could use them for this? Any info would be appreciated! Thanks. Feb 22, 2022 at 21:32
• Do a search for "MOSFET Low Side Switch", plenty of good tutorials out there. Don't want to post links that might disappear. Feb 22, 2022 at 21:40

Sounds like you could drive each digit with two ULN2003A chips. They contain Darlington drivers and catch diodes for each output.

I assume you would pulse each coil briefly (50ms?) to flip the segment that has to change.

Of course you have to provide the 14 x 4 inputs somehow (maybe some shift registers).

You could also consider using power addressable latches such as TPIC6A259 which would require fewer parts but more expensive and may require better ground connections.

You may wish to add hardware to limit the duration of the pulses rather than depending on firmware, since I doubt they will withstand the continuous current for long without burning out.

• I used to build displays with these back in the mid 80's, we did scoreboards for colleges, time/temp clocks for banks, that sort of thing. ULN2003A is exactly what we used most of the time, although I did design some dot matrix displays for an auto plant and those used discrete Darlingtons, something like a TIP120. Shift registers is how we addressed the segments, we had a board with the shift registers and drivers on each digit and they would be daisy chained together. The solenoids were pulsed by the software, we never used any hardware to limit it and never had a problem with that. Feb 22, 2022 at 23:03

The replacement for relays is MOSFETs or BJTs, as other posters have discussed, but the wrinkle here is that you are trying to high-side switch (and low side, for the digit select) a 12V load with a 3.3V logic level output. I had a schematic drawn up with open-drain inverters driving PMOS transistors, but why reinvent the wheel? If you search for high side load drivers, there are many that will take 3.3V logic inputs and control 20V+ loads and many have built in clamp diodes for the (I presume) solenoids that are actuating the digits. You can even find single chips such as the TBD62783APG that have 8 independent circuits built in.

If you wish to reduce the number of I/O required, you can use an inverter to make the DISPLAY and RESET drivers for a single segment run off of a single logic input. The possibility of activating both coils simultaneously while the drivers change states is moot if you set each segment signal and then strobe the digit select (which can be any suitable logic level NMOS) after a very brief (microseconds) setup time.

Here’s a pretty decent write-up of controlling a multi-digit vane display: https://easternstargeek.blogspot.com/2011/08/nifty-electromechanical-vane-display.html

The summary is, use a 14x4 matrix drive, and you’ll need to isolate the coils with diodes to prevent ‘ghosting’.

1. If the relay boards are easier for you, there is nothing wrong with the relays switching once or twice per minute. Most of them are good for like a million cycles. Just be sure to use protective flyback diodes for the clock coils.

2. In regard to the power supply: you don't need to switch all segments in a digit at once. Switch them sequentally and you will get maximum current of 280mA. In the worst case you will see the digit transforming for half a second. This will make the look even more vintage and will simplify your choice of the upper driver (the +12V rail to the C terminals of the display).

3. Do you have enough gpio pins on your controller? You will need like 18 in order to control the display. Failing this, you will need external decoders, shift registers or addressable drivers. In the simplest case, you will need 14 open-drain (N-MOS) or open-collector (NPN) drivers for the S/R and 4 of the P-MOS / PNP variety for the C side. You will also need 4 level shifters that can be just another 4 N-MOS/NPN drivers repurposed.

• A million cycles at twice per minute is only 1 year. Feb 23, 2022 at 10:31
• @TobySpeight: If one uses an extra-heavy-duty or solid state relay as a master power control, and only switches other relays when no voltage is present and no current is flowing, they will be good for many orders of magnitude more switching cycles than if they are switched under load. Feb 23, 2022 at 19:52
• @supercat, that's right - I was just pointing out that "good for like a million cycles" is a fairly small number in this context. Unless the word "like" means more than I think it does. Feb 24, 2022 at 7:17
• @TobySpeight: I think the phrase "good for like a million cycles" was meant to mean "usable for enough cycles not to be of concern", though whether the wear would be of concern would be affected by whether the relays are being switched at a near-capacity load. A cheap relay used near capacity once per minute might fail within a year, but if not switched under load might last decades, though it might benefit from being occasionally switched under moderate loading. Feb 24, 2022 at 15:53
• It could be either parasitic current paths between digits (cured with diodes on each R and D) or the relays not controlling the C terminals properly. Feb 28, 2022 at 6:20