The Blair Blinker Project, Part 1- The Build

Using a modern, solid-state solution for replacing a decades-old mechanical device

In the early part of 2015, my friend Blair came to me for some help with the sequential flasher controller unit on his 1966 Ford Thunderbird. It seems that time and use had finally caught up with the unit, as the electric motor that powered it was starting to squeal and several lamps in the tail light section would not reliably illuminate when the turn signals were turned on. I swung by his place one afternoon to check it out.

Looking over the unit, it looked like some sort of Rube Goldberg contraption. It had a small electric motor that turned a cam, which would close 3 contacts in succession, and a 4th cam allowed the motor to complete the cycle and stop when the turn signal was turned off. This operated in much the same fashion as how a windshield wiper motor will keep running until it “parks” after the wiper switch is turned off. The front turn signal lamps were powered off the same contact for the middle (of 3) rear turn lamps.

The squealing noise was coming from from worn-out bearings of the electric motor and the electrical contacts had pitted and worn to the point that they would no longer make an electrical connection 100% of the time. We could mess around with the bearings on the motor and maybe even clean the contacts of the cam switches to get everything working again, but how long would the fix last? With the experience I have had with the old mechanical charging regulators on automobiles and trying to keep them going once the contacts got pitted and worn, the answer was “probably not very long…”

A brushed DC motor similar to what powered the original mechanical flasher contraption…

I had been messing around with microcontrollers (μC) for a little while as I got back into the electronics hobby, and this seemed like a perfect project for such a thing. Since the original unit was pretty much DOA, I wired up an interim solution into the existing wiring using a standard automotive flasher unit and a couple relays which would allow the brake/turn signals to function, albeit without the sequential flasher feature. I then turned my efforts toward the design and development of a μC-based solution.

I elected to call it the Blair Blinker Project, mostly as a play on the movie title, “The Blair Witch Project”. I thought it was a fitting title as Blair would often make comments about sorcery, witchcraft and voodoo magic whenever I would explain to him what I was up to. He elected to call it “Frankenflasher”, which was probably also a fitting title!

Now, remember that I was just getting back into electronics and learning about things I had never really messed around with before. I’m sure my design and component choices at that time might be laughed at by any respectable E.E. , but hey, I was learning! And what I would learn from this project would be put to use in a later controller project.

A few Atmel AT-Tiny85 microcontrollers with a handy-dandy USB programmer from SparkFun. I used this programmer to load the programs (or “sketches”) onto the μC’s that I had written in the Arduino IDE.

There weren’t all that many inputs and outputs to concern myself with, so I elected to use Atmel’s AT-Tiny85 uC, but the challenge was in the abilities of the μC itself – it was not able to multitask (as was the case with many μC’s of the day). I could have definitely used a bigger μC with more I/O pins, but I’d still be up against the same multitasking roadblock as I was with the smaller ones. The Tiny85 μC’s were small enough and cheap enough, that using a few of them would not be detrimental to the project.

Knowing that I had a brake/hazard light function, as well as right and left sequential turn functions, I decided that 3 μC’s ought to do the trick. The three μC’s would allow me to split tasks/functions up between them – one for the brake/hazard, one for the left turn and one for the right turn. The μC’s output pins would be used to control the gate of TIP-120 Darlington transistors (sometimes referred to as a “Darlington pair”) – one for each lamp – but not directly…..

The microcontroller module board with three AT-Tiny85 μC’s, connectors and other components.
(L to R); Brake/Hazard μC; Left turn μC; right turn μC.

Knowing that the gates of the TIP-120’s required at least 6-8 volts more than collector voltage to fully turn on (and I only had 12 volts from the system), and max output voltage from the Tiny85 was only logic-level (5 volts), I would need another way of supplying that 12 volts to the TIP-120’s gate. I had done some research into using a voltage-follower type circuit, but I found a better answer in a device called an optocoupler.

TIP-120 Darlington Transistors in the TO-220 package.

An optocoupler is a device which uses low-voltage signals to power infrared LED’s, which turn on a light-sensitive transistor across from it. So you can use LED-level voltages to control 12 volts running through the transistor. They come in handy little IC packages and some of them even have multiple “channels” in one chip. Optocouplers have the added benefit of electrically isolating components of differing voltages. This is referred to as “galvanic isolation”. There is a newer alternative to optocouplers, called “digital isolators”, which don’t use nearly as much power and are much faster/responsive to input signals than the optocoupler. One could almost make the same speed comparison between optocouplers and digital isolators as between old mechanical style relay points vs transistors – the differences are that drastic!

The optocoupler module board.
The 6-pin 4N25 IC’s are VIshay single-channel optocouplers. The NTE3321 is a four-channel (quad) optocoupler. Below that are the connectors for the inputs and outputs.
Not seen are the resistors and jumper wires, most of which are on the backside of the board.

Since the μC would not be able to flash the front turn signal at the same time as the rear sequential flash routine (at least not from a practical standpoint), I elected to just use one of the Tiny85 outputs to power a flasher circuit powered by the venerable 555 timer IC. That way, all I had to do was turn on the output at the beginning of the turn signal sequence, and turn it off when the sequence was complete (when the turn signal switch was turned off). The output of the 555 chip would drive an optocoupler, which would in turn drive the gate of the TIP-120.

The front flasher module. A steady 5v input from the corresponding μC is translated to a flashing output to drive the optocoupler, which in turn will drive the TIP-120 gate, turning its output on and off. The yellow LED’s are just diagnostic indicators on the output side of the 555 timer.

In some bench testing of a TIP-120 with a 12-volt source and a standard incandescent automotive lamp (the famous 1157 lamp) and a single-channel optocoupler, I did find that the TIP-120 generated some heat. This was due to the fact that the gate voltage was not allowing the TIP-120 to fully turn on. Another issue was that I had to use some wiring trickery to “fit” the TIP-120 into the circuit.

Dual-filament automotive incandescent lamp, type 1157. The smaller filament is used for the regular tail/park lamp and the heavier filament is used for the brake and turn lamp.

Since power in an automotive lamp typically flows from the switch to the turn lamp then to ground and the TIP-120 is a “low side” NPN switch (usually on the downstream side of the circuit’s load), I had to put the load on the downstream side of the emitter output instead of the upstream side of the collector input. So, I was not using the TIP-120 optimally, but it got the job done! (A controller I built several years later incorporated PNP MOSFET’s – the proper component to use for an application such as this).

The completed “module stacks”. On the left is the rear turn signal optocoupler module stacked onto the μC module. On the right, the front turn signal optocoupler module stacked onto the front turn signal module, which carries the 555 timer chips. Output from these modules are connected to the corresponding TIP-120 gates.

As a result, part of the design of this turn signal controller incorporated a large aluminum heat-sink made of 1″ aluminum L-channel and some 11 gauge aluminum plate, built to fit inside the housing I had selected (a junction box for semi-truck trailer light wiring). The TIP-120’s were fastened to the heat sink with screws and a dab of heat sink compound. I had to be careful to electrically isolate the heat sink, since the mounting tabs are also tied to the collector input. (In a later controller design where I used some MOSFET’s, I elected to use insulator kits especially made for the same type of TO-220 package, and you can even get insulated MOSFET’s as well). This same heat sink was also used as a foundation for the circuit boards that I put together, using solderable prototyping/bread boards.

The heat sink frame with the TIP-120 Darlington transistors mounted and wired up. The red wires are the 12V power supply that go to brass strips which form a bus that the collector legs of the TIP-120’s are attached to. The yellow and green wires are the lamp outputs that go to the left and right side of the car. The gray wires with plugs are the wires that connect the gate of the TIP-120’s to the optocouplers. The brass standoffs in the middle are for the “signal conditioner board” (see image below). The aluminum standoffs are where the module board will attach to.
The “signal conditioner” module. This was nothing more than a voltage divider to drop the 12v level from the brake, turn and hazard switches down to <5v for the μC inputs. The black component with the silver tab is an LM7805 voltage regulator to provide regulated 5v power for the μC’s. The LM7805 takes its power from one of the brass TIP-120 power buses.

Join me in part 2 (coming soon) where we will run some tests, complete the build and do the install!