Oscillator: alternative to xr2206

Hi all,
I need to make a sawtooth oscillator. I'd prefer not to use the 555 to produce the ramp; I've tried several schemes and the results don't satisfy.
I'd prefer to use a chip 2206-like very much (I used it some year ago and the result was very good in term of THD).
I've read in the web that the 2206 has been obsoleted by the producer (Exar).

So I wonder, and asking you, if there's a good alternative to that chip which is as cheap and as easy to implement.

thank you,


Thank you rmetzner49 !

You're welcome. Google "function generator IC" and you'll get a few more. I picked the Maxim because it seemed simpler to use than say, the Analog Devices part.

Except that the MAX038 is being discontinued. However, you can still buy the chips on eBay.

Just in case you need a design that you can make more of.

"This product is Not Recommended for New Designs. Some versions may be No Longer Available or being discontinued and subject to Last Time Buy, after which new orders can not be placed."

I've had pretty good luck with 555 timers using a constant current to charge the capacitor. What types of circuits have you tried?

As far as the Analog Devices parts like the AD9833, I don't know how the linearity would compare with a good old analog ramp/sawtooth generator.

A current mirror is a simple way to provide the constant current for charging.

An Op Amp could also be used, but it should be rail-to-rail output, or at least be able to swing close enough to the V+ rail so it stays constant at 2/3 of V+.

A schmitt trigger and an integrator (two Op Amps) also make a handy triangle wave generator.


Thank you all guys.
Polimorph, I've tried a circuit with 555 without active current source and the sawtooth shape was curvy (too curvy the raising ramp, and the falling one too smoth).

I'll give it a try, and in case I'll be back for questions XD

Sure, the RC charge curve is asymptotic, so it won't be linear.

I've found the constant current source works very well for making a linear sawtooth. Use identical PNP transistors, preferably from the same batch. You may even tape, epoxy, or shrink wrap them together to keep them at the same temperature.

Hi Polimorph,
I've tried this circuit http://www.allaboutcircuits.com/vol_6/chpt_6/8.html, getting the 2 pnp as in contact as possible. One of them is always saturated (Vce close to 0.1V or less). Is that normal ? Do you think I can trust that circuit ? Do you know a better one ? thanks and sorry for my ignorance on this matter.

The XR-2206 is still available, as you said "I'd prefer to use a chip 2206-like very much".
Is there a reason why you are not?

Do you have the collector shorted to the base on the leftmost PNP?

Do you have the collector of the rightmost PNP connected to pins 2, 6, 7, and the capacitor?

Without that 47k resistor? It is only there on the AllAboutCircuits page to switch between constant current and constant resistance charging.

The leftmost PNP should only have about 0.6 to 0.7V dropped across the Base-Emitter junction. It should not be saturated.

Are you certain you have the right leads on the PNP transistors? They often don't have the same pinouts as their complementary NPN transistors, and may vary by manufacturer.

Hi polimorph ,
I've tried to simulate it (multisim).
Referring to your scheme I used BC557A for the two transistors. 100k for R1, 10uF for C1, 200nF for C2. The scheme is in attachment.

The simulation shows a constant output (at 12V about). Maybe the components' values are not optimal, but in any case I guess the constant output is not correct. Did I do something wrong ?

schema.tiff (56.5 KB)

It is better to post graphics as JPG or GIF files.

Just to be clear:
12V to pins 4 and 8
Ground to pin 1
Pins 2, 6, and 7 connected to C1

But you should be looking at the top of C1 for the sawtooth wave. All you'll see on the output is 12V interrupted by a very short downward spike. See my math below to see just how long that will take with the values selected.

The Control voltage pin should have something more like a 1nF capacitor. If you use a CMOS 555 timer, it may take a while for a 0.2uF cap to charge on startup, although after that it won't matter. For the simulation, you can leave it off.

100k and 10uF is a bit slow.

(12-0.7)/100k = 113uA

C1 must charge from 1/3 of Vcc to 2/3 of Vcc, so 4V differential.

V = It/C
t = VC/I
t = 4 * 113u / 10u
t = 45.2 seconds

In a real-world circuit, a generic aluminum electrolytic may have so much leakage current, that the circuit never charges.

This will be a linear function of the resistance, and an inverse linear function of the capacitance. So use a 0.1uF capacitor, and the period will be 0.452 seconds. With a 0.1uF capacitor and 10k, 45.2ms.

Ah... there is a problem with simulators. They don't recreate reality perfectly, and reality isn't perfect.

I made an LTSpice simulation and had to add 10 ohm resistors to the emitters to get it to operate correctly. This is not a bad idea to help balance it in the real world.

555CurrentMirrorRamp.asc (1.43 KB)

Hi polimorph, thank you for you patience. I successfully simulated using LTSpice too (see attach, png this time), taking output at C1. I didn't use the emitter resistor and the result seems good anyway. I'll implement the circuit soon...
thank you so much,


ah, another important question: which is the best way to create a conductive contact between the two transistors ? I've a conductive paste used for CPU, but I need to get the they as close as possibile ant avoid them detaching...

Real circuit OK!
I got 250kHz as I needed. Not thermal contact yet, emitter resistors, ~10mA overall consumption (all the circuit)... see attach. Result seems to me very good, but I'm not an expert so, polimorph do you think it is acceptable (apart the fact that I haven't created thermal contact) ?
The aim of this sawtooth is to feed a modulator to produce a PWM to make a very basic class D amplifier.


Ah, I see. The simulation required the 1M resistor to start.

I'll bet it works fine in the real world without it.

Ah, I see. The simulation required the 1M resistor to start.

Uhm, Actually not, I've just tried to remove it and probing at C1 produces the same result... in attach the .asc

I'll bet it works fine in the real world without it.

yes, it does. I've just finished to solder it on a small board and it works even better.

Thank you for your support polimorph.

funcgen.asc (1.6 KB)

Why was the 1M in the simulation, then?

I usually just put them face-to-face and put a little heat shrink tubing over them. Or superglue them together.

Glad I could help. I've made Class D amps before using 555 timers. Thank you for posting photos.