On Tue, 8 Apr 2025 21:04:25 -0400, "Edward Rawde"
<
invalid@invalid.invalid> wrote:
"JM" <sunaecoNoChoppedPork@gmail.com> wrote in message news:vhabvj1uo56ikdhu8if219rvtfal6lijee@4ax.com...
On Tue, 8 Apr 2025 14:41:44 -0400, "Edward Rawde"
<invalid@invalid.invalid> wrote:
>
"JM" <sunaecoNoChoppedPork@gmail.com> wrote in message news:8099vjhs62eofoioejtlssoa19ifjrdvcg@4ax.com...
On Mon, 7 Apr 2025 22:46:13 -0400, "Edward Rawde"
<invalid@invalid.invalid> wrote:
>
"Edward Rawde" <invalid@invalid.invalid> wrote in message news:vsso97$1imi$1@nnrp.usenet.blueworldhosting.com...
"JM" <sunaecoNoChoppedPork@gmail.com> wrote in message news:tcl2vjp49q4ga21itrpnmr4u3ts06vqffd@4ax.com...
On Fri, 4 Apr 2025 23:55:11 -0400, "Edward Rawde"
<invalid@invalid.invalid> wrote:
>
"JM" <sunaecoNoChoppedPork@gmail.com> wrote in message news:uop0vjp3d13t441ujfboi5aeeg08anm1je@4ax.com...
On Fri, 4 Apr 2025 16:29:27 -0400, "Edward Rawde"
<invalid@invalid.invalid> wrote:
>
"JM" <sunaecoNoChoppedPork@gmail.com> wrote in message news:add0vjdh2gcma0n9pfunq76n04cfbkhtnj@4ax.com...
On Fri, 4 Apr 2025 14:25:29 -0400, "Edward Rawde"
<invalid@invalid.invalid> wrote:
>
"Bill Sloman" <bill.sloman@ieee.org> wrote in message news:vsnufh$2ou7j$1@dont-email.me...
On 4/04/2025 11:33 am, JM wrote:
On Thu, 3 Apr 2025 19:25:33 -0400, "Edward Rawde"
<invalid@invalid.invalid> wrote:
>
"JM" <sunaecoNoChoppedPork@gmail.com> wrote in message news:qq8tujlpciqc2jrd0ibljmjr9pd37ip6hi@4ax.com...
On Sun, 30 Mar 2025 14:54:56 -0400, "Edward Rawde"
<invalid@invalid.invalid> wrote:
>
Not long ago JM posted a 1KHz sinewave oscillator with very low distortion.
It used a 470uF non polarized capacitor which in practice would probably be made from two 1000uF capacitors.
There's nothing wrong with that but I wanted to see whether I could make a working circuit without needing such a
large
capacitor.
....
>
Here's an almost fully practical circuit except for the current sources and sinks.
>
>
I reversed the polarity of the control feedback and applied it to the
inverting input of the first oscilllator stage, removed some
redundant capacitors, and added some filtering to the gain control
signal. Also altered some gain values to improve the dynamics (but
that still has to be addressed).
>
Most real world designs would use a sample and hold circuit to sample
the output at it's maximum point and use that to control the feedback,
similar to the topology I think I posted a while ago. It might be
worthwhile looking at that.
>
>
Thanks. That has the lowest distortion I've seen in a simulation so far.
>
I can't find the sample/hold circuit you mentioned, would you mind reposting it?
>
Thank you for your help with this. It is much appreciated.
>
>
>
>
Is the sample/hold circuit the one below?
>
After much digging I found it in a very interesting thread started by Bill Sloman on 5th February 2025 "The low distortion
oscillator problem".
>
I can't get it to simulate in 24.1.5
something to do with unknown parameter in table{-2m,0,2m,1}
>
Yes. Change the braces to brackets. Example use shown below. H2,3
should be circa -170(ish)dBc. Note that I have switched most op amps
outwith the control loop to simple models so that you can investigate
the control loop in isolation (it's fairly easy to implement the
sampling in hardware and it will be close to this in performance).
Compare the circuit below with one with the original polyphase
sampling (leave in the simple models) to determine any benefit. You
are already beyond the point where real opamps will limit the
performance - in this particular oscillator design.
Version 4
SHEET 1 3020 2548
WIRE -1504 -480 -1504 -512
WIRE -1504 -480 -1552 -480
WIRE -1552 -464 -1552 -480
WIRE -1504 -448 -1504 -480
WIRE -832 -352 -1120 -352
WIRE -144 -352 -752 -352
WIRE -1856 -336 -1952 -336
WIRE -1728 -336 -1792 -336
WIRE -2624 -256 -2624 -272
WIRE -2144 -256 -2144 -272
WIRE -1952 -224 -1952 -336
WIRE -1872 -224 -1952 -224
WIRE -1728 -224 -1728 -336
WIRE -1728 -224 -1792 -224
WIRE -1120 -224 -1120 -352
WIRE -832 -224 -1120 -224
WIRE -512 -224 -752 -224
WIRE -2144 -112 -2144 -176
WIRE -2144 -112 -2496 -112
WIRE -1952 -112 -1952 -224
WIRE -1952 -112 -2144 -112
WIRE -1856 -112 -1952 -112
WIRE -1728 -96 -1728 -224
WIRE -1728 -96 -1792 -96
WIRE -1664 -96 -1728 -96
WIRE -1520 -96 -1584 -96
WIRE -1456 -96 -1520 -96
WIRE -1312 -96 -1376 -96
WIRE -1248 -96 -1312 -96
WIRE -1120 -96 -1120 -224
WIRE -1120 -96 -1168 -96
WIRE -1088 -96 -1120 -96
WIRE -944 -96 -1008 -96
WIRE -864 -96 -944 -96
WIRE -704 -96 -784 -96
WIRE -656 -96 -704 -96
WIRE -512 -96 -512 -224
WIRE -512 -96 -592 -96
WIRE -448 -96 -512 -96
WIRE -336 -96 -368 -96
WIRE -288 -96 -336 -96
WIRE -144 -96 -144 -352
WIRE -144 -96 -224 -96
WIRE -1856 -80 -1888 -80
WIRE -1888 -48 -1888 -80
WIRE -144 -16 -144 -96
WIRE -1520 16 -1520 -96
WIRE -1456 16 -1520 16
WIRE -1120 16 -1120 -96
WIRE -1088 16 -1120 16
WIRE -704 16 -704 -96
WIRE -656 16 -704 16
WIRE -336 16 -336 -96
WIRE -288 16 -336 16
WIRE -1312 32 -1312 -96
WIRE -1312 32 -1392 32
WIRE -944 32 -944 -96
WIRE -944 32 -1024 32
WIRE -512 32 -512 -96
WIRE -512 32 -592 32
WIRE -144 32 -144 -16
WIRE -144 32 -224 32
WIRE -1456 48 -1520 48
WIRE -1088 48 -1120 48
WIRE -656 48 -704 48
WIRE -288 48 -320 48
WIRE -1888 80 -1888 48
WIRE -1856 80 -1888 80
WIRE -1120 80 -1120 48
WIRE -704 80 -704 48
WIRE -320 80 -320 48
WIRE -1728 96 -1792 96
WIRE -1664 96 -1728 96
WIRE -1520 96 -1520 48
WIRE -1520 96 -1584 96
WIRE -2624 112 -2624 -176
WIRE -2272 112 -2624 112
WIRE -1952 112 -2272 112
WIRE -1856 112 -1952 112
WIRE -1520 128 -1520 96
WIRE -2624 224 -2624 112
WIRE -2496 224 -2496 -112
WIRE -2272 224 -2272 112
WIRE -2144 224 -2144 -112
WIRE -1952 224 -1952 112
WIRE -1872 224 -1952 224
WIRE -1728 224 -1728 96
WIRE -1728 224 -1792 224
WIRE -912 240 -1056 240
WIRE -1520 256 -1520 208
WIRE -2688 272 -2720 272
WIRE -2384 272 -2432 272
WIRE -2336 272 -2384 272
WIRE -2048 272 -2080 272
WIRE -2720 304 -2720 272
WIRE -912 304 -912 240
WIRE -2048 320 -2048 272
WIRE -1952 320 -1952 224
WIRE -1856 320 -1952 320
WIRE -1728 320 -1728 224
WIRE -1728 320 -1792 320
WIRE -768 320 -864 320
WIRE -512 320 -512 32
WIRE -512 320 -768 320
WIRE -2624 352 -2624 320
WIRE -2560 352 -2624 352
WIRE -2496 352 -2496 320
WIRE -2496 352 -2560 352
WIRE -2272 352 -2272 320
WIRE -2208 352 -2272 352
WIRE -2144 352 -2144 320
WIRE -2144 352 -2208 352
WIRE -2384 416 -2384 272
WIRE -2064 416 -2384 416
WIRE -1920 416 -1984 416
WIRE -1824 416 -1920 416
WIRE -1552 416 -1744 416
WIRE -1456 416 -1552 416
WIRE -1296 416 -1392 416
WIRE -2384 432 -2384 416
WIRE -1920 432 -1920 416
WIRE -1920 512 -1920 496
WIRE -1552 528 -1552 416
WIRE -1456 528 -1552 528
WIRE -1296 528 -1296 416
WIRE -1296 528 -1392 528
WIRE -144 528 -144 32
WIRE -144 528 -848 528
WIRE -2384 544 -2384 512
WIRE -1776 544 -1888 544
WIRE -1888 576 -1888 544
WIRE -1136 576 -1216 576
WIRE -1024 576 -1056 576
WIRE -1968 592 -2800 592
WIRE -1776 592 -1776 544
WIRE -768 592 -848 592
WIRE -688 592 -768 592
WIRE -592 592 -688 592
WIRE -1552 608 -1552 528
WIRE -1504 608 -1552 608
WIRE -1392 608 -1440 608
WIRE -1296 608 -1296 528
WIRE -1296 608 -1312 608
WIRE -1216 608 -1216 576
WIRE -1216 608 -1296 608
WIRE -2560 640 -2560 352
WIRE -2208 640 -2208 352
WIRE -1216 640 -1216 608
WIRE -768 640 -768 592
WIRE -592 640 -592 592
WIRE -688 656 -688 592
WIRE -512 656 -512 320
WIRE -512 656 -544 656
WIRE -2800 672 -2800 592
WIRE -2736 672 -2800 672
WIRE -2064 672 -2064 656
WIRE -1968 672 -1968 592
WIRE -1968 672 -2032 672
WIRE -1888 672 -1888 656
WIRE -1888 672 -1968 672
WIRE -2624 688 -2672 688
WIRE -2096 688 -2144 688
WIRE -2736 704 -2800 704
WIRE -1968 704 -2032 704
WIRE -1888 704 -1888 672
WIRE -1776 704 -1888 704
WIRE -1888 720 -1888 704
WIRE -1776 720 -1776 704
WIRE -1296 720 -1296 608
WIRE -1296 720 -1376 720
WIRE -1552 736 -1552 608
WIRE -1440 736 -1552 736
WIRE -1216 736 -1216 720
WIRE -592 736 -592 720
WIRE -544 736 -544 704
WIRE -544 736 -592 736
WIRE -1312 752 -1376 752
WIRE -768 768 -768 720
WIRE -688 768 -688 720
WIRE -592 768 -592 736
WIRE -1312 800 -1312 752
WIRE -1888 832 -1888 800
WIRE -1776 832 -1776 784
WIRE -1216 848 -1216 800
WIRE -2800 864 -2800 704
WIRE -2720 864 -2800 864
WIRE -2560 864 -2560 736
WIRE -2560 864 -2640 864
WIRE -2208 864 -2208 736
WIRE -2128 864 -2208 864
WIRE -1968 864 -1968 704
WIRE -1968 864 -2048 864
WIRE -2560 976 -2560 864
WIRE -2128 976 -2560 976
WIRE -1904 976 -2048 976
WIRE -2208 1088 -2208 864
WIRE -2128 1088 -2208 1088
WIRE -1904 1088 -2048 1088
WIRE -2560 1152 -2560 976
WIRE -2208 1152 -2208 1088
FLAG -704 80 0
FLAG -320 80 0
FLAG -1408 704 vcc
FLAG -1408 768 vee
FLAG -1056 0 vcc
FLAG -1056 64 vee
FLAG -624 0 vcc
FLAG -624 64 vee
FLAG -256 0 vcc
FLAG -256 64 vee
FLAG -1216 848 vee
FLAG -144 -16 output
FLAG -2064 720 vcc
FLAG -2064 656 vee
FLAG -2208 1232 vee
FLAG -2560 1232 vee
FLAG -2384 544 0
FLAG -2048 320 0
FLAG -2720 304 0
FLAG -2144 -272 vcc
FLAG -2624 -272 vcc
FLAG -1824 128 vcc
FLAG -1824 64 vee
FLAG -1888 48 0
FLAG -1824 -128 vcc
FLAG -1824 -64 vee
FLAG -1888 -48 0
FLAG -2704 720 vcc
FLAG -2704 656 vee
FLAG -1904 1088 vmod+
FLAG -1312 800 0
FLAG -1552 -464 0
FLAG -1504 -592 vcc
FLAG -1504 -368 vee
FLAG -1776 592 0
FLAG -1888 832 vee
FLAG -1776 832 0
FLAG -1424 0 vcc
FLAG -1424 64 vee
FLAG -1520 256 0
FLAG -1904 976 vmod-
FLAG -1120 80 0
FLAG -1920 512 0
FLAG -592 768 0
FLAG -688 768 0
FLAG -768 768 0
FLAG -912 384 0
FLAG -864 368 0
FLAG -768 320 vmod-
FLAG -1056 240 vmod+
SYMBOL res -992 -112 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R1
SYMATTR Value 10K
SYMBOL res -768 -112 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R2
SYMATTR Value 16K
SYMBOL res -352 -112 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R3
SYMATTR Value 16K
SYMBOL cap -592 -112 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C1
SYMATTR Value 10n
SYMBOL cap -224 -112 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C2
SYMATTR Value 10n
SYMBOL res -736 -368 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R4
SYMATTR Value 10K
SYMBOL res -736 -208 M270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R5
SYMATTR Value 1.8Meg
SYMBOL cap -1392 512 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C3
SYMATTR Value 1u
SYMBOL res -1232 736 M180
WINDOW 0 36 76 Left 2
WINDOW 3 36 40 Left 2
SYMATTR InstName R10
SYMATTR Value 330K
SYMBOL res -1152 -112 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R9
SYMATTR Value 10k
SYMBOL res -1408 624 R270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R6
SYMATTR Value 47k
SYMBOL cap -1440 592 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C4
SYMATTR Value 10u
SYMBOL OpAmps\LT1679 -1408 736 M0
SYMATTR InstName U3
SYMBOL res -2144 848 M90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R23
SYMATTR Value 1k
SYMBOL npn -2144 640 M0
SYMATTR InstName Q4
SYMATTR Value 2N3904
SYMBOL res -2144 1072 M90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R24
SYMATTR Value 540K
SYMBOL current -2208 1152 M0
SYMATTR InstName I1
SYMATTR Value 1m
SYMBOL res -2032 960 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R26
SYMATTR Value 540K
SYMBOL current -2560 1152 R0
SYMATTR InstName I2
SYMATTR Value 1m
SYMBOL res -2368 416 M0
SYMATTR InstName R27
SYMATTR Value 300
SYMBOL res -1968 432 M270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R30
SYMATTR Value 15K
SYMBOL current -2144 -256 M0
SYMATTR InstName I3
SYMATTR Value 650u
SYMBOL current -2624 -256 M0
SYMATTR InstName I4
SYMATTR Value 650u
SYMBOL res -1776 240 M270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R31
SYMATTR Value 1k
SYMBOL res -1776 -240 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R34
SYMATTR Value 1k
SYMBOL cap -1792 304 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C13
SYMATTR Value 33p
SYMBOL npn -2080 224 M0
SYMATTR InstName Q2B
SYMATTR Value {BN}
SYMBOL npn -2432 224 M0
SYMATTR InstName Q2A
SYMATTR Value {BN}
SYMBOL npn -2336 224 R0
WINDOW 3 55 69 Left 2
SYMATTR Value {BN}
SYMATTR InstName Q1B
SYMBOL npn -2688 224 R0
WINDOW 3 53 71 Left 2
SYMATTR Value {BN}
SYMATTR InstName Q1A
SYMBOL res -2624 848 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R35
SYMATTR Value 1k
SYMBOL npn -2624 640 R0
SYMATTR InstName Q3
SYMATTR Value 2N3904
SYMBOL cap -1792 -352 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C14
SYMATTR Value 33p
SYMBOL voltage -1504 -608 R0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V3
SYMATTR Value 15
SYMBOL voltage -1504 -464 R0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
SYMATTR InstName V4
SYMATTR Value 15
SYMBOL res -1904 704 R0
SYMATTR InstName R17
SYMATTR Value 10k
SYMBOL res -1904 560 R0
SYMATTR InstName R20
SYMATTR Value 5k
SYMBOL cap -1792 720 R0
SYMATTR InstName C10
SYMATTR Value 10n
SYMBOL res -1360 -80 M270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R21
SYMATTR Value 4K7
SYMBOL res -1568 -80 M270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R22
SYMATTR Value 1k
SYMBOL res -1568 112 M270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R25
SYMATTR Value 1k
SYMBOL res -1504 112 M0
SYMATTR InstName R28
SYMATTR Value 4k7
SYMBOL OpAmps\LT1679 -2704 688 M180
WINDOW 3 18 51 Left 2
SYMATTR InstName U10
SYMBOL OpAmps\LT1679 -2064 688 R180
WINDOW 3 16 46 Left 2
SYMATTR InstName U7
SYMBOL schottky -1456 400 M90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName D1
SYMATTR Value BAT54
SYMATTR Description Diode
SYMATTR Type diode
SYMBOL diode -1232 736 R0
SYMATTR InstName D3
SYMATTR Value 1N914
SYMBOL res -1728 432 M270
WINDOW 0 32 56 VTop 2
WINDOW 3 0 56 VBottom 2
SYMATTR InstName R7
SYMATTR Value 15K
SYMBOL res -1040 560 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R12
SYMATTR Value 110k
SYMBOL g -592 624 M0
WINDOW 3 -255 133 Left 2
SYMATTR Value table(-2m,0,2m,1)
SYMATTR InstName G1
SYMBOL cap -672 656 M0
SYMATTR InstName C6
SYMATTR Value 2p
SYMBOL res -752 624 M0
SYMATTR InstName R13
SYMATTR Value 1
SYMBOL SpecialFunctions\sample -928 560 M0
SYMATTR InstName A1
SYMBOL e -912 288 M0
SYMATTR InstName E1
SYMATTR Value -1
SYMBOL cap -1936 432 R0
SYMATTR InstName C5
SYMATTR Value 1u5
SYMBOL OpAmps\opamp -1056 -32 R0
SYMATTR InstName U5
SYMATTR SpiceLine Aol=5Meg
SYMATTR SpiceLine2 GBW=60Meg
SYMBOL OpAmps\opamp -624 -32 R0
SYMATTR InstName U6
SYMATTR SpiceLine Aol=5Meg
SYMATTR SpiceLine2 GBW=60Meg
SYMBOL OpAmps\opamp -256 -32 R0
SYMATTR InstName U8
SYMATTR SpiceLine Aol=5Meg
SYMATTR SpiceLine2 GBW=60Meg
SYMBOL OpAmps\opamp -1424 -32 R0
SYMATTR InstName U2
SYMATTR SpiceLine Aol=5Meg
SYMATTR SpiceLine2 GBW=60Meg
SYMBOL OpAmps\opamp -1824 -160 R0
SYMATTR InstName U4
SYMATTR SpiceLine Aol=5Meg
SYMATTR SpiceLine2 GBW=60Meg
SYMBOL OpAmps\opamp -1824 160 M180
SYMATTR InstName U9
SYMATTR SpiceLine Aol=5Meg
SYMATTR SpiceLine2 GBW=60Meg
TEXT -2080 -600 Left 2 !.tran 0 5 0 1u uic
TEXT -2080 -632 Left 2 !.options plotwinsize=0 numdgt=15
TEXT -3208 -592 Left 2 !.MODEL BCM847BS NPN IS = 1.822E-14 NF = 0.9932
ISE= 2.894E-16 NE = 1.4 \n+ BF = 324.4 IKF = 0.109 VAF = 82 NR =
0.9931 ISC = 9.982E-12 NC = 1.763 \n+ BR = 8.29 IKR = 0.09 VAR = 17.9
RB = 10 IRB = 5E-06 RBM = 5 RE = 0.649 \n+ RC = 0.7014 CJE = 1.244E-11
VJE = 0.7579 MJE = 0.3656 TF = 4.908E-10 \n+ XTF = 9.51 VTF = 2.927
ITF = 0.3131 PTF = 0 CJC = 3.347E-12 VJC = 0.5463 \n+ MJC = 0.391 XCJC
= 0.6193 TR = 9E-08 CJS = 0 VJS = 0.75 MJS = 0.333 \n+ XTB = 0 XTI = 3
EG = 1.11 FC = 0.979
TEXT -2088 -456 Left 2 !.param BN=847
TEXT -2088 -488 Left 2 !.model 847 ako:BCM847BS
TEXT -2080 -552 Left 2 !.lib opamp.sub