LED animation using only BJTs

How far can a multivibrator & some delay switches go?

Similar projects worth following
The multivibrator affair & today's high inflation got the lion kingdom thinking about how to create a complete LED animation with just discrete components we had in the 1970's.

The lion kingdom was pondering how to extend the multivibrator into a more sophisticated display & it led to a 9 state animation with 5mm LED's placed side by side, the way lions envisioned such things 40 years ago.  Microcontrollers would have been expensive.  A fully equipped hobbyist would have done it with TTL logic, in those days.

Lions only knew about BJT's.  Lions didn't know the values or how to connect them.  What if the way lions envisioned doing it 40 years ago was actually possible?

The heart of the animation is a sequencer.  A sequencer for 9 LED states can be made out of 7 delay circuits.  It would take far less components than a shift register out of BJTs.   

The 700/300 resistors & 2N3904's comprise the switches that turn on the LED strings.  The loads are enabled though diodes so multiple states can turn on the same LED strings.  

C1, R1, R6, Q1 is the delay circuit which turns on the load.  A capacitor C1 slowly raises the base voltage of the load transistor Q1 until it shuts off.  The capacitor asymptotically  approaches the base cutoff voltage but never quite reaches it, so it needs R6 to pull the voltage up to the rails.

With the load diode D1 no longer receiving current from the delay transistor Q1, a tiny current from the base of Q2 is now drawn to feed the load & Q2 turns on to turn on the next delay module. 

The load diode gets a big current from Q1 or a little current from Q2, but always gets some current.  The idea that anything is turning off is only an illusion. 

The load switch Q7 turns on the LED string when there's a big current & turns off the LED string when there's a little current.  This selectivity is created by a 700/300 resistor divider.  With little current, the 300 voltage is below the base voltage so the transistor turns off.  With big current, the 300 voltage is above the base voltage so the transistor turns on.

The trick is the delay transistor Q1 starts turning off when the capacitor voltage hits 4.5V, then some time later the Q1 transistor completely turns off, the load switch Q7 hits 0.5V & turns off the LED string.  The gap between the 2 transistors has to be narrowed by raising the cutoff voltage of the LED switch Q7 closer to 4.5V.  The resistor divider raises the cutoff voltage by presenting 0.5V to the base when it receives 4.5V.

The resistor ratio depends on how much current the load switch needs to turn on, so it's a finicky tongue angle adjustment.  The delay sequencer can't be tested without the loads.  Such are the interdependencies of a minimal component, historic design.

After the last delay circuit has fired, we need a 0V reset pulse to ground all the capacitors & restart the sequencer.  The 0V pulse comes from a multivibrator.  With a 0V pulse, the final LED string doesn't need a delay since the reset pulse will stop it.  Also with the 0V pulse, the 1st delay circuit doesn't need the capacitor C1 or the pullup R6.  The reset pulse can turn on & off the delay transistor Q1 directly.

Since brightness wasn't a priority, all the LEDs could be obtaned from a cheap kit.

Of course, if you're going to spend months paw soldering 210 LEDs, they might as well be jumbo sized.

Early sequencer on a breadboard for checking delays.

The sequencer was fabricobbled point to point, as it would have been done 40 years ago, to make a living schematic with all its wiring visible.  

When it came time to translate the 9 sequencer states to the LED voltages, the insanity of trying to do it in analog began to escalate.  The 1st problem is it would take hundreds of diodes to fabricate a memory device capable of switching on the right LEDs in the right states.  This could be simplified down to 45 diodes by offloading...

Read more »

  • Death of BJT's

    lion mclionhead11/22/2021 at 03:46 0 comments

    After 2 years of flickering, uneven LEDs, & instant state changes, the pure BJT design finally succumbed to a modern 20 year old microcontroller.  It just wasn't going to look good enough with 1970's parts, for any reasonable cost.

    This is the last of the lion kingdom's 1st order of flash programmed microcontrollers.  They were truly terrible to program in assembly with gpasm, when mplab was windows only & a virtual machine was $600 & required a bunch of kernel modules which didn't work.  Using Linux made software real expensive in those days.

    This got rid of all the bodge diodes & the flickering between states, but the LEDs were still uneven.  It's not because of varying load between LED strings.  It might be from running them at the lowest possible voltage instead of using current limiting resistors for every single LED.

    The dissolves between LED states still couldn't be perfectly smooth.  The 8 bit timer used has only 256 possible duty cycles.  Even with a more fine grained timer, the duration of the smallest duty cycle is limited by the time needed to set the GPIOs.  Making it more fine grained would require more clockspeed & lions are obsessed with using the lowest power possible.  It runs on Commodore 64 grade 1 MIPS.

    The normal animation uses 13W at 19V.  If all the LEDs are on, it's 20W.

  • LED replacement #1

    lion mclionhead11/20/2021 at 08:28 0 comments

    So after 2 years, 2 burned out LEDs got replaced & the blue LED voltage got reduced from 7V to 6.7V.  A few more diodes got replaced with shottkys to try to even out the brightness, but some of them barely light up & some of them don't turn off all the way.  A lot of diodes were shottkys in the original circuit.

    The problem of uneven brightness in the blue LEDs is bigger than originally envisioned.  The LEDs aren't matched & the strings are different loads.  Shottky diodes didn't make any significant difference so the diodes aren't the problem.  Every single string would need some kind of adjustible resistor, a very expensive proposition.  There's also the problem of flickering.

    It would have looked bad in the 70's with only discrete analog circuits like this, so thoughts of redoing it all with a microcontroller have abounded.  In fact, the lion kingdom vaguely remembers electronics looking this bad in the 70's but it only being bearable because it was all we had.   It's not about the work as much as losing the retro appeal.  At minimum, doing it once in pure analog showed it wasn't practical in pure analog.  There could be a simpler art piece based on pure analog & simpler strings.  The microcontroller would expand the effects.

View all 2 project logs

Enjoy this project?



Dan Maloney wrote 12/03/2019 at 17:19 point

I dig the IRL schematic. That's some cool planar circuit sculpture right there!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates