Close
0%
0%

One hertz sculpture

Slowing down a ring oscillator enough to make it tick seconds

Similar projects worth following
A ring oscillator ticking at one hertz !

A few weeks ago, I was reading the RP2040 datasheet to learn about the clocks and how to use them, when I came across the integrated ring oscillator. Intrigued as I was, I've looked around the Internet to learn more about ring oscillators, rapidly gaining a basic understanding of them.

Then I wondered if one could be made with discrete components I had lying aorund, and if it could be slowed down enough to show seconds.

This sculpture is an attempt to do so. The size is 180x180x37mm.

Please read the logs entry to learn more about it !

Logs :

1 - What's a ring oscillator ?
2 - Creating a NOT gate
3 - Creating a ring oscillator
4 - Slowing down the propagation delay
5 - Visual feedback
6 - Putting everything together

Disclaimer : I usually create electronic circuits around microcontrollers, and am mainly a programmer. Be kind enough to excuse trivial errors or approximation I've made on this simple circuit, as well as imprecisions you may note. If you know how to explain things simply and without being condescendant, I'll be happy to read from you. :)

  • 6 - Putting everything together.

    Pierre-Loup M.07/30/2025 at 10:31 2 comments

    The circuit is assembled in freeform. A small template frame has been made to place each component and solder them together to form the nine gates with led and RC circuit.

    Those gates have then been assembled on two rings made of 0.8mm brass wire. A simple paper template has been made to align each gate ate a 40° angle. The external ring brings VCC, the internal rings GND.

    This assembly is mounted on a black 4mm acrylic plate, by three pegs on each ring, two of them being traversent to the back face.

    On the back face are mounted a lipo battery, an Adafruit lipo charger with USB C, and a switch. The battery can then be charged, and the circuit powered from battery or AC adapter.

    A wooden frame has been made, with the lower border mounted by two countersunk screws : it can be opened if needed, the circuit removed and cleaned or repared, the glass changed f broken, etc.

    The circuit is 135mm in diameter, the frame is 180x180x37mm.

  • 5 - Visual feedback

    Pierre-Loup M.07/30/2025 at 09:52 0 comments

    A ring oscillator is nice ; seeing that it functions is better. Leds on each stage give a nice visual feedback. They are mounted in parallel with the pull-up resistor.

    They probably also account for the speed increase from the calculated RC values, as they are in the path of the capacitor charging.

  • 4 - Slowing down the propagation delay.

    Pierre-Loup M.07/30/2025 at 09:45 0 comments

    As it is, the circuit oscillates far too fast for what we want. We thus need a way to slow it down. One way is to add an RC circuit on the output of each stage : capacitor take time to charge, and this time retards the propagation of the output state of a node to the following input.

    See the updated schematic of the base node with such a RC circuit.


    R3 and C1 are chosen accordingly to the timing required. The time constant of an RC circuit is given by the following formula :

    with: 
        τ in seconds
        R in ohms
        C in farad

    For nine nodes in the circuit, the individual time needed for one gate would be 1/9 = 0.111s. For a 1k resistor, it gives a 111uF capacitor value. I've settled for a 100uF cap, and a 2 kohm potentiometer to make room for fine adjustment. However, I failed to account for quite a few things :
        capacitor charges through the pull-up resistor as well.
        capacitor discharges through the input resistor.
        transistor is saturated when Vbe is above 0.65V.
        low level on output is 0.2V, not 0V.
    Those forgettings causes the chosen values to be a bit faster than intended, but we are close enough to one second.

  • 3 - Creating a ring oscillator from resistors and transistors.

    Pierre-Loup M.07/30/2025 at 09:36 0 comments

    You may have seen it coming : just arrange any odd number of the previous circuit in chain linking inputs to outputs.

    With three of them chained together, the circuit has a measured period of around 0.2us, which is a frequency of 5MHz.

  • 2 - Creating a NOT gate.

    Pierre-Loup M.07/30/2025 at 09:31 0 comments

    A NOT gate is quite easy to make with discrete components : a transistor and two resistors are enough. The transistor is used as a switch : it conduct current, or not.

    • When a low level is applied on the transistor base (the input), it blocks current from flowing though it. The output is then pulled up to VCC by the R2 resistor.
    • When a high level is applied on the transistor base, it conduct current, so its collector becomes "connected" to its emitter. The output is then almost GND (on this specific transistor, Vcesat is 0.2V, so that's the output low level.

  • 1 - what's a ring oscillator anyway ?

    Pierre-Loup M.07/30/2025 at 09:17 0 comments

    A ring oscillator is a circuit that self oscillate, i.e. it oscillate by itself. It's composed of an odd number of NOT gates chained together in a ring arrangement, the last one being fed back to the first. The frequency of oscillation depends of the propagation delay of each gate. Being composed of an odd number of gates, the output of the chain will always be the logical NOT of the input.
    This output, fed back to the input causes the chain to always invert its state.

    If you want to know more, please visit wikipedia (where I borrow this drawing) which explain it better than I do.

View all 6 project logs

Enjoy this project?

Share

Discussions

Dave wrote 08/18/2025 at 15:00 point

IMHO, this ought to be a winner. Why? Yes, it's fun and cool looking. But what puts it over the top is a writeup that's designed to educate the reader. For me, education is what this site is (or should be) all about. Showing off cool projects may get brief attention, but educating readers does something of much greater and lasting value. Great job!

  Are you sure? yes | no

Pierre-Loup M. wrote 08/19/2025 at 10:17 point

That's kind of you. I share your view about educational content, I love to read about how other people solve their problems. :)

  Are you sure? yes | no

Paul McClay wrote 08/13/2025 at 17:18 point

Beautifully crafted. 

Shall we call it a Pierre-Loop?

  Are you sure? yes | no

Pierre-Loup M. wrote 08/17/2025 at 14:09 point

Thank you !

You've just enter the very restricted circle of people who invent innovative puns on my name. :D

  Are you sure? yes | no

Rubem Pechansky wrote 08/13/2025 at 17:06 point

Beautiful!

  Are you sure? yes | no

Pierre-Loup M. wrote 08/17/2025 at 14:08 point

Than you.

  Are you sure? yes | no

khawks wrote 08/13/2025 at 17:06 point

this is pretty cool!

i would like to have my students make this in an afterschool electronic/project club.

  Are you sure? yes | no

Pierre-Loup M. wrote 08/17/2025 at 14:08 point

That would be nice ! It seems doable, maybe with a smaller version of the ring oscillator ?

  Are you sure? yes | no

Bob Found wrote 08/13/2025 at 16:44 point

Really cool project.  You did good.

  Are you sure? yes | no

Pierre-Loup M. wrote 08/17/2025 at 14:07 point

Thank you for your words !

  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