The operation of the circuit centers on a 555 timer-based clock signal. That clock signal drives two separate circuits, one analog and one digital, whose outputs work together to sequentially light up a ring of LEDs. On the analog side, the clock signal triggers a monostable 555 timer that generates a triangular pulse. On the digital side, the clock signal drives a 3-bit counter which in turn drives a 3-8 decoder. The outputs of the decoder control the gates of a series of transistors, passing the pulse generated in the analog circuit to the correct LED. The rotation effect is created because there are two instances of the analog and digital circuits, triggered by opposite clock edges, that control every other LED on the 16-LED beacon. As an LED driven by Circuit 1 fades out, the next LED, driven by Circuit 2, fades in.
Extra features are a power-on reset for the counters, a timer for the beacon which can disable the light after a period of about 10 minutes, and a potentiometer to adjust the clock period so that each rotation takes exactly 10 seconds (like the real Barnegat Light). After building a breadboarded prototype I managed to pack all the components onto a tiny 4-layer PCB from OSH Park. A separate PCB holds the LEDs. The circuit is mounted in a temporary model for now, because eventually I want to build a much higher quality model of the lighthouse to hold this beacon.