This free-running oscillator circuit generates a triangle waveform, the rising and falling slopes of which may be set by completely independent controls. Simultaneously the 555 output (pin 3) provides a rectangular waveform at low impedance that is synchronised with the triangle waveform. Assuming the 555 output is low, the output of constant-current source 01 is shorted to earth via diode D3. and diode D5 is reverse biased. During this time current source 02 linearly discharges the timing capacitor C through D6, D4 being reverse biased. Eventually the voltage on C falls to 1/3Vcc (set by the internal potential divider that biases the two comparators in the 555) and the 555 output goes high. Now the output of 02 is shorted away from the timing capacitor, and 01 is allowd to linearly charge it up; when the capacitor voltage reaches 2/3Vcc the 555 Output goes low again, and the cycle repeats. The biasing networks R1D1 and R2D2 compensate for the changes in