Circuits Logo

> Home

> Motor drivers

V Solar engines

 > Type 1 (voltage)

 V Type 2 (time)

  > "Happy Birthday Singer"

  > 555-based SE

 > Type 3 (charge rate)

 > Nocturnal

> Sensors

> Complete robots

> Misc. circuits


The BEAM Circuits Collection is a BEAM Reference Library site.

The "Happy Birthday Singer" solar engine
A little bit of BEAM history

The original Type 2 Solar Engine was based around the "Happy Birthday Singer" (HBS) chip that was pulled from the original Hallmark singing greeting cards. While it's no longer available, this is interesting for educational as well as historical reasons. Here are the particulars as described by Mark Tilden:

"The happy-birthday singer is a two bit wide by n words deep programable sequencer with 4 commands: reset to start vector (00), decrease frequency (01),increase frequency (10), and pause (11). The device starts out with a 2 word vector jump at the start of memory which locates 16 positions in it's memory. This jump vector is readdressed whenever a (11) command is found in the execution table. "Happy Birthday" is the first in this chain and is at default (00-00). There are at least 6 songs already in the device which can be found by reprogramming the jump vectors. The vector locations seem to be at either 256 or 512 bit increments in a 4k or 8k memory map. These songs include "you light up my life", and xmas carols. Reprogramming the singers is not simple in either process or technology, and truth to tell I never completed my studies of the devices as it's a bugger working with an already burned-in prom. The only details solaroller builders need know are:
                              |  Vcc   |     switch          |
                              |        |                     |
                              |---------                     |
                              |    |      gnd                |
                              |   ***  __________            |
                         clock|--**uP*-|                     |
                       whisker|  *****                       |
                              |   ***                        |
                              |   / \          Battery Holder|
                              |  |   |         (Usually cut  |
                              | [ ] [ ]         off)         |
                             Quad outputs
  • Soldering a cap between the thin clock whisker and Vcc gives an approximate ratio of 1 second period = 0.1 uF.

  • Device operates from 0.98 V to 5 V with a significant current drain happening around 3.1 V (approx 3 mA nominal). Device works optimally from 1.2 V to 2.3 V. A short of the power pins will reset the device but the device has a power down mode between 0.3 and 0.98 V where it will keep it's internal count position without resetting. The input impedance of the clock whisker is very high, and is obviously a direct link to the internal resistor-cap junction of the internal oscillator. This pin has the classic cap charge-discharge curve when probed. Resistors to this pin will also work, but at a significant current increase for low power applications.
  • Operating current of the device at 1.5 V is in the microamps with the piezo removed.

  • The outputs are rail to rail drivers at about 2-3 mA per transition. The outputs are quadrature encoded, so they are always opposite polarity to each other. They can be direct shorted for long periods without affecting the device and handle positive and negative current spikes well.

  • The only way of destroying them under nominal conditions is to power them up backwards. They die very quietly and then the only way to test is by reattaching the piezo crystal to hear if the oscillator has stopped. Another fault is when the cap soldered to the whisker is not superglued down after being attached. There is no cure for this as the whisker is usually lifted right from the pcb. Replace the device with another one."


Dave Hrynkiw of Solarbotics fame then adds this:

To turn the HBS into a controller for a dual-solarengined photovore, use the following technique:

Tie each separate solarengine trigger switch to each of the HBS outputs, you can get alternating motions going. Mark Tilden uses this technique in his BEAMants, which are layed out with two motor output shafts as "legs", and a third "dead leg" to maintain balance. As the motors trigger, the effect is that the BEAMant "walks" left-right-left-right on the motor shafts. By adding a pair of hair-trigger switches to the front of the beast, you can inhibit the trigger signal reaching the other-side motor. So if it bumps into a wall on it's right side, the sensor inhibits any further "triggers" to the left side motor, so it then pivots about it and walks away from the obstacle. Just shorting the trigger lead to positive will keep that circuit from triggering.

Sitemap  Image  Search  Image  Legalities  Image 
Page author: Eric Seale
This page was last updated on

Creative Commons License
This work is licensed under a
Creative Commons License.