September 2018

Thursday, September 20, 2018

DIY Sequential Turn Signal Block Diagram


Want more in-depth design information about the sequential turn signals circuit presented in a previous video? In this episode of House of Hacks, Harley shows a high-level diagram and a simple voltage conditioning circuit to convert a switched 12 volt on/off signal to a 5 volt logic signal. This is a follow-up to a question asked in a comment on this DIY sequential turn signal circuit video.

Block diagram images and memory layout (GitHub)
Pulse generator circuits (Google search)
Voltage regulator circuits (Google search)
Binary counter data sheet (PDF)
Buffer datasheet (PDF)

Here at House of Hacks we do tutorials, project overviews, tool reviews and more related to making things around the home and shop. Generally this involves wood and metal working, electronics, photography and other similar things. If this sounds interesting to you, go subscribe and click the bell to get notifications.

There's a playlist containing videos talking about the House of Hacks' values.

And here’s the most recent video.

For a written transcript, go to DIY Sequential Turn Signal Block Diagram

Music under Creative Commons License By Attribution 3.0 by Kevin MacLeod at
Intro/Exit: Hot Swing


A couple days ago on this sequential turn signal video, JTinnon asked if I could share the schematics for this circuit.

I put this together a couple decades ago and honestly cannot remember if I made a schematic for it or not.

I looked in the couple places where thought I might have them stashed and couldn’t find any so I drew out some block diagrams.

I’ll show these right now at the House of


Hi! Harley here.

If you’re interested in workshop projects made out of things like wood, metal and electronics, consider subscribing so you won’t miss a

In the previous video JTinnon commented on, I discussed the philosophy of design for this project and displayed a couple partial diagrams, but I never showed the whole thing.

In this video, I’ll show the complete, high-level diagram.

And everything I show today can be downloaded from GitHub at the link below.

There are also links to other resources that might be helpful in understanding this circuit.

First, here’s a block drawing of all the functional pieces.

I go into this in more detail in the earlier video, but again in brief, there’s a pulse generator whose output is fed into the input of a binary counter.

The pulse generator can be any circuit producing regular pulses that can be detected by the input of the binary counter.

In my case I used a 555 timer in an astable multivibrator configuration with a variable resistor in order to be able to control the speed.

Two sequential bits on the output of the binary counter are fed in to the least significant bits of the address lines on the ROM.

The output from switches indicating right, left and brake are fed into the inputs on address bits 2, 3 and 4 of the ROM.

The 12v signals coming from the switches are conditioned through some voltage shifters.

Address bits 5, 6 and 7 are unused and tied to ground.

The data outputs from the ROM are fed into the inputs of a buffer chip that is subsequently used to drive display circuitry.

Next, let’s look at the schematic for the voltage shifter since it’s a little bit unique.

The issue is the signal coming from the switches is either 12 volts or nothing.

12 volts is too high for the 5 volt logic circuits.

And the logic gates can't cope with the floating, non-connected switch when it's turned off.

So the 12 volt on/off signal needs to be converted to 5 volts that is either a voltage or ground.

To do this, I used a 5 volt zener diode in a voltage regulator configuration.

This changes the 12 volts to 5 volts.

Next I put in a resistor to ground in parallel.

This ensures that when there’s no connection, the signal goes to ground instead of floating at an indeterminate value.

The voltage for all the logic circuits comes from a 7805-based regulator.

There are lots of schematics for this on the web.

I've left links in the resources section below.

But if I were doing this again, I’d probably use a buck converter for better efficiency.

And here’s how I programmed the memory.

Given there are 5 address lines being used, that means there are 32 memory locations that need to be programmed.

Since the bottom two address bits vary by time from 0 to 3 and address lines 2, 3 and 4 represent switch states that can be from 0 to 7, the whole thing can be thought of as 8 groups of 4.

Each group represents one combination of switch settings and the 4 items in that group represent what lights are on at four points in time.

I hope that gives some additional insight into this circuit design.

I’m thinking about doing a similar circuit that uses an Arduino.

Leave a comment below if this is something you’d be interested in.

Thanks for joining me on this creative journey that we’re both on.

Until next time, go make something.

Perfection’s not required.

Fun is!