The Zen of Clock Modules
This is the clock module section of the Module 1027 Clocked Sequential Control of the ARP 2500 modular synthesizer, circa 1970.
Clock modules provide pulses that trigger the events of a piece. This can be sequencer steps, note on/offs, or any other element that repeats in time.
This ARP clock illustrates the basic clock components: The top knob controls the clock rate, or the duration between the clock pulses. The knob below controls the pulse width, or on-time. This would control, for example, the period a note might sound (the %On time) and the relaxation period between the notes. A reduced %On plays staccato; a full %On plays legato. The lamp just to the right of the knob glows for the duration of the %On to give visual feedback of both the clock rate and the relative on/off periods.
Finally, the two buttons below turn the clock on or off. Clocks are quite simple, but very Zen: their simplicity is apparent but deceptive, and well worth mastering because they are the master control modules.
The basic Clock module in ArtWonk functions the same:
The Dur (duration) input determines the pulse rate, or how fast the clock ticks. The %On input determines the pulse width. The Hold input controls whether the clock is on or off. And the Out output value cycles between 1 and 0, giving both visual feedback and a value that can be applied to other modules.
Two Kinds of Clocks
Clock modules like the one above actually mark two events, the leading edg of the clock pulse, which is the the moment of transition from 0 to 1 at the output and marks the start of the clock On cycle; and the falling edge, the transition from 1 to 0, marking the start of the clock Off cycle.
The Deeper Meaning of Clocks
Apart from how clocks function is what clocks do. Essentially clocks mark an event.
Probably the most basic concept to grasp when working with real time algorithmic music software such as ArtWonk, is that ArtWonk itself is a clock because it runs in discrete time steps. The Main Loop clock, which you control with the Main input to the System module,