TL972 THD+N results revisited

I’ve gotten busy again but had an hour to put together a proper audio amp circuit using the TL972IP, +12v on a single supply rail, and 5x gain.

Below is the result of the QA400 THD and THD+N test I ran.


In the previous post I noted that under full listening audio gain conditions, producing about 500mV output with a signal, the noise floor seemed to be in the range of about -140 dBFS. In this case you can see with a bit more gain, the noise floor raises to about -135 dBFS, but the THD at full gain is only 0.0011% and with noise contribution, around 0.0246%. Further, the dynamic range is about 99 dBFS which is quite good.

My final step will be to try this circuit in place of a LM386 to compare the relative quiet of the background noise using a TL971 single Op Amp or TL972 dual Op Amp circuit with earbuds as well as an external speaker.


TL972 Op Amp Audio Circuit THD+N Test

I was able to quickly put together a unity gain audio amp using an extra filter kit board. For a fair comparison, I will step this up to a gain similar to the LM386 audio outputs we are familiar with and post those results. However, the results for this test were very promising.

Baseline TL972 no signal

As shown above, the noise floor came in at about -138 dBFS. In practical terms, that’s zero hiss in a pair of sensitive ear buds.

TL972 Unity Gain

When applying the 1 kHz signal at a level 0f -10 dBFS, the THD+N came out to 0.0058%, which is excellent. This corresponds to a fairly high level input with a low amplification factor of 1.0. In other words, this is a pleasant volume level in earbuds and the noise contribution was minimal.


TL972 based 650 Hz CW filter THD+N

A quick follow-up to my previous post.

Since I had an assembled 650 Hz CW filter kit handy, I decided to use the QA400 with a 650 Hz tone to make a simple THD/THD+N measurement.

Below is an image capture of the baseline filter board powered-on with no signal input. As you can see, the Bandpass characteristic of the filter will allow noise within its passband to exit the output stage. Beyond the passband, the baseline noise floor sits about -142 dBFS, i.e. where the QA400 nominal noise floor level sits. The center frequency of the filter passband shows up in this image at 662 Hz, which is what I previously had measured by other methods, so this cross-checks that result very nicely.

Baseline TL972 650 Hz BP no signal

Now I add a 650.39 Hz tone (as close to 650 Hz as the QA400 software allowed me) @ a level of -18 dBFS to achieve the nominal measurement output level of -10 dBFS.

As you can see, the THD+N figure of 0.063% is very close to the THD reading of 0.062%, which is expected since the TL972 is a low-noise Operational Amplifier and significantly newer than the LM386 I previously tested.

TL972 650 Hz BP

Next I will construct a TL972 audio amplifier circuit as a direct replacement for a typical LM386 audio circuit, then measure and post those results.


LM386 THD and Noise measurements

I recently purchased a new piece of test equipment; a QuantAsylum QA400 Audio Analyzer. The specs of this unit get close to high-priced audio analyzers from Keysight and Audio Precision. For $200 USD, you get 0.00055% THD inherent, which means the generator wrapped to the input produces a baseline reading like the one below.

Baseline QA400As you can see above, the THD is exceeding spec and the THD+N at 0.002% is exceeding its spec of 0.0038%, both at an input level of -10 dBFS. You will also note that the noise floor of a QA400 sits at about -140 dBFS.

I wanted to measure the THD and THD+N of the ubiquitous LM386N audio amplifier module that is almost guaranteed to be a part of a QRP receiver kit you may own or would buy. The LM386N is also commonly used in low-cost audio amp boards from China via ebay.

The image below shows the result of driving the input of one such LM386 audio amplifier board I bought on ebay several years ago.


The main issue is the noise floor of these amplifiers which sits at about -100 dBFS or 40 dB above the input stage of the QA400. I’ve always felt these amplifiers hissed far too much, even though a -100 dBFS noise floor might seem good on paper.

In a future post, I will offer a better alternative to the LM386 as a low-cost, easy to use audio output stage capable of driving earbuds or an amplified speaker system.


Si5351 Phase Noise and THD Tests using an Agilent E4402B Spectrum Analyzer

There has been some discussion on various forums, and the comments sections of a number of Ham Blogs and on-air QSOs, concerning the Phase Noise of the Si5351 chip being offered in the form of breakout boards.

I recently commented on a post that Bill Meara, N2CQR, put on his SolderSmoke Daily News Blog. I was thinking about both sides of the argument and since I had an SA with a Phase Noise personality, I figured I’d do the measurements.

14 MHz, 300 Hz RBW

Not a bad raw view at a RBW of 300 Hz. The baseline is at -80 dBm with phase noise seen near the carrier at -60 dBm.

Next is the Phase Noise measurement trace. As you can see, the average SSB phase noise came out to -96.95 dBc/Hz.

Si5351 Phase Noise

Lastly, and probably more telling, was the THD measurement of the carrier and 9 harmonics.

THD and Harmonics

As can be seen above, the notable issue is the THD being 40.67%. However, any low-pass function prior to mixing stages will adequately block most of this harmonic content above 14 Mhz and is a frequent feature of modern superheterodyne architectures.

So while the Phase Noise measurement was not bad at all, the real concern when using what was intended to be a multi-clock generator chip for use in digital systems, is to get the THD down coming into a mixer stage (and after of course) so that the result is closer to a more pure sine wave.


OP Amp based CW audio filter kit

Another byproduct of the Operational Amplifier presentation I did for a recent MN-ARTS meeting was to produce a design and PCB for a Op Amp based audio filter. The first prototype I did was a 4th order Chebyshev Bandpass, but as I ran the designs in the TI FilterPro Desktop software, I settled on the smoother Butterworth response to account for CW QSOs slightly off of a 250 Hz boundary.

The schematic below is the design normalized for common resistor values. the TI FilterPro software has the nice feature that it pins the C values to something common, then varies the R values accordingly. Various options are supported to make the BOM and implementation less idealized. The design point was 650 Hz center frequency, 100 Hz 3dB bandwidth, and a 10 dB voltage gain.

KiCAD schematic

KiCAD schematic

The two-layer PCB that resulted was simple and designed around 100% through-hole parts. I sent this to OSHPark like all my other prototype designs. The TL972 or MCP6022 Op Amps are excellent, inexpensive choices for an audio range active filter as both are low noise/low distortion parts. The PCB was designed for flexibility in it’s use and that is why the audio and power connections are oriented to wires rather than jacks.



The designed gain achieved 8.9dB as a real circuit. Using the FilterPro software, any 4th order active filter, single-ended Bandpass topology will work, regardless of response type and the desired voltage gain. The intent of this design was to provide an add-on for homebrew or purchased rigs with insertion into either the audio chain, or directly driven at low volume levels when used with an amplified external speaker.

The Bode plot of the gain and phase below was produced using a Analog Discovery module by Digilent. The WaveForms software used with the Analog Discovery includes a Network Analyzer virtual instrument (similar to NI LabView). The actual response tracked closely to what was predicted by FilterPro.

Magnitude and Phase from 200 Hz to 2 kHz

Magnitude and Phase from 200 Hz to 2 kHz

There’s enough of a roll-off with just a 4th order active filter to produce excellent results. With the current design point, any kind of receiver (DC, Super Het, SDR) architecture works once the signal has been demodulated to audio.


SDR20 Kit Project

I recently did a presentation for the MN Amateur Radio Technical Society (MN-ARTS) on Operational Amplifiers. During that presentation, I was showing and discussing some of the applications in ham radio for Op Amps and one of them involved the use within SDR’s to perform a Hilbert Transform on the sampled RF in order to pass this onto a DSP function using the PC sound card audio approach used in 1st and 2nd generation SDRs. That prompted a side conversation on the possibility of doing an SDR kit for our November Build-A-Thon.

So I went off to see what I could put together for a minimal SDR kit. Surveying the past and current designs, I came back to the Softrock series of SDR kits once I understood the implications of doing a hardware design that would work with existing SDR software packages like HDSDR, PowerSDR 2.4, SDR#, etc. As the Softrock series by Tony Parks, KB9YIG had been around for a while, I started thinking about simplifying and improving its design in order to reduce the BOM cost and at that same time provide a very functional kit. Below is the 1st board layout that I sent to OSHPark for prototyping.


SDR20 PCB layout

Some of the key changes I made were to use a mini USB-B instead of the bulky full size B connector, powering the entire board from USB, using a SN74CBT3253 analog switch IC, and adding a 5th order Butterworth front-end bandpass filter. One of the reasons the board can be run on USB power alone is that I used lower power components and went with a single-band design rather than a multi-band approach. As this kit was intended to be simpler, and less costly than a Softrock Ensemble for example, a single-band receiver was a good way to reduce the BOM.

One major challenge in reducing the area of the PCB, again to reduce cost, was in the layout while attempting to keep the digital traces away from the analog to reduce spur generation from the broadband nature of the 4x and 1x signals within the digital circuits.

The boards from OSHPark came in Thursday’s mail and I planned a Saturday morning of fun-filled soldering. My main goal was to get the kit assembled to see if I had actually pulled-off a correct layout in 1 rev. Fortunately I had, though I did manage to get the 3.3v LDO regulator symbol backwards on the PCB silkscreen. I’ll take that kind of PCB layout error anyday over cutting traces and adding blue wires. So I was happy to see and hear CW signals when I first put the board into service with HDSDR.

Below is the populated PCB, with an SI570 on the bottom layer near the ATTINY-85 micro sitting in the 8-pin DIP socket.

Built-out SDR20 board

Built-out SDR20 board

I prefer to use PowerSDR 2.4.4, just I had with the Softrock I built about 2 years ago, primarily due to it’s superior DSP software capabilities and clean sound. Below is a capture of a QSO on 14.156 I was listening to this morning.

QSO on 14.156

QSO on 14.156

The noise level was running about S-6 and one of the hams was running a FlexRadio SDR himself which had outstanding audio on TX, and I was able to widen the IF to 2.9 kHz and enjoy a crystal clear morning QSO.

More to come as I make a few minor revisions to the board and write-up the build instructions.



Using a TVS to suppress MOSFET motor drive switching spikes

I was playing around with a DC motor speed control this weekend and came up with a decent solution to the rather high spikes produced during the on-off switching transition. Using a PWM generated with a 555 timer and leveled-up and cleaned using a Schmitt Trigger chip (74HC14), I was driving a Fairchild FQP30N06L 60V N-channel MOSFET. Below is the Drain to Source waveform, and as you can see, I have 75V spikes, high input impedance mode.

Before TVS added Drain to Source

Before TVS added Drain to Source

I tried a few standard techniques to suppress the spike, but then thought to try one of the TVS diodes I sell, a SA12AG, which clips at about 14V. Below is the trace, with the Drain on channel 1 now and the trigger pulse on channel 2. As you can see with a 10V/div scale for channel 1, the transients are indeed clipping right at 14v, bringing the overshoot to a more reasonable level and the DC motor running a bit more smoothly at low speeds.

After addition of SA12G TVS diode

After addition of SA12AG TVS diode


Agilent E4402B Repair

A few months ago I was able to pick-up a few spectrum analyzers at reasonable prices. These were a HP 8591E (1.8 GHz) and an Agilent E4402B (3 GHz); both with tracking generators. The 8591E was in really nice physical condition and worked perfectly. Here is that unit on my bench with a 900 MHz tone shown being driven by my Fluke 6060B RF generator.

8591E SA-small









The E4402B on the other-hand looked a bit more used and was not operational on the receive side, though the tracking generator seemed to be OK. The E4402B was not functional with a steady tone at 800 MHz with no input. The board from China was $1700 and $3000 from Agilent. Fortunately this video by Shahriar over on The Signal Path Blog gave me hope that the problem was an Agilent prescaler part that was directly substituted by a Hittite HMC365S8GE DC-13 GHz prescaler IC.

That did in fact fix the issue with the main RF board. Below is the result showing the E4402 being aligned

E4402B SA Align









and then post-alignment.

E4402B SA









Next will be the RTC/NVRAM module because the unit is 13 years old base on the date of manufacture and the NVRAM battery cell is gone. As a result, the calibration settings cannot be stored and clock settings do not persist across a power cycle. Luckily, Agilent used a STMicro part with an innovative removable crystal and lithium battery module they call SNAPHAT. The 28-pin RTC/SRAM module has 4 female pin sockets as part of the package and the crystal and battery module plugs into and snaps onto the IC. The part number for just the battery unit is M4T28-BR12SH1 and was available via DigiKey.

Update (10/15/2014): Just installed the SNAPHAT part in and re-calibrated the unit, set the Date/Time, etc. All good with no more errors or messages – done.



Heathkit SB-200 purchase

This last Saturday morning a post was sent out on the NLRS reflector alerting members to a moving sale. Listed with other items was a Heathkit SB-200. This was the kind of amplifier I was looking for as long as it wasn’t too abused or damaged. As it turned out, it was in fine shape actually, just a bit dusty inside, but nothing excessive. Quite humorously, all of my used HF gear has come via NLRS, which is a VHF and above weak signal club.

SB-200 front


The unit still had the original Cetron 572B tubes in it, which made it a good find indeed.

SB-200 top


I contacted the previous owner who informed me that only the supply capacitors had been changed while he owned it. As the picture above shows, this is a clean unit and did not show signs of excessive use. The Ham I purchased the unit from said it had not been on the air for probably 6 years, so I was a bit hesitant to plug it in a fire it up, but if it needed repairs it would certainly show it.

Quite fortunately, the unit had no issues when it was switched on. Further, it ended-up producing 300+ watts with about 50 watts in from my Icom 765.

There are only 2 noticeable improvements needed up front; the original fan is understandably not very quiet, and both of the doorknob caps probably need to be changed as the tuning ranges on the front panel are pretty far off from what is silk screened. I have to investigate the latter issue a bit as this may not be too far from typical experience for this model.

If/when I do some refurbishing, I’ll do some posts on that work.