A Digital Vacuum Tube Analyzer and Curve Tracer

Part One: What it Does

Note: This article describes a project that I built for myself. It is not a product that I am manufacturing or offering for sale. For various reasons, I am not releasing the schematics, PCB layouts, firmware, or software used in this project.

This is the first of two articles. This article describes the functionality and features of the tube analyzer. Part two discusses its design and implementation.


When designing guitar amps and other pieces of electronic equipment using vacuum tubes, we make heavy use of the datasheets published by the tube manufacturers. Datasheets specify recommended operating conditions for the tubes, with typical values of characteristics such as transconductance, plate resistance, and amplification factor. They also contain plots that are helpful to designers using graphical methods such as load lines. Unfortunately, datasheets tell us little about the actual tubes we use in the real world. All of the manufacturers from the golden age of tubes are long gone. The tubes manufactured today are made by different companies in different parts of the world, and consistency and quality control are known to be poor in general. Even new old stock tubes from the original manufacturers may have degraded over time due to loss of vacuum, poor storage conditions, etc.

I have long wished for a tool that could tell me everything I want to know about the actual real-world tubes that I use. I started playing around with this idea and breadboarded a working prototype more than five years ago, in 2012. By the mid-2017 I had refined the design to the point where I could build a piece of test gear capable, accurate, and reliable enough for everyday use. In this article I will describe the tube analyzer primarily from the user's point of view, without going into detail about its implementation. In a follow-up article I'll say more about the inner workings of the device.


Almost every piece of information in a tube datasheet is derived from measurements taken in the same general way:

  1. Apply specific voltages to the electrodes of the tube under test.
  2. Measure the currents into or out of the electrodes.
There are many kinds of tubes: diodes, triodes, tetrodes, pentodes, mixers, pentagrid converters, multiple-unit tubes, etc. Examining all of these varieties of tubes, we find that there are two general classes of electrodes: The tube analyzer has specialized power supplies for driving these two classes of electrodes.

For the plates and screen grids, there are two identical high-voltage positive supplies. Each supply can output any voltage from 5 to 500 volts (accurate within a volt or two) at a current up to 500 mA. At the same time, each high-voltage supply can accurately measure the current it is providing to the tube electrode it is connected to.

For biasing control grids and suppressor grids, there are two identical low-voltage negative supplies. Each supply can provide any negative voltage from 0 to -100 volts. The low-voltage supplies can be controlled with a resolution of 0.1 volt, and they are very precise. The low-voltage supplies are not designed to source much current, and they are not able to measure the current they supply. Since control and suppressor grids don't draw current at negative voltages, this isn't much of a limitation in practice.

The two high-voltage supplies and the two low-voltage supplies are sufficient to analyze practically any kind of vacuum tube. For example, a true pentode such as the EL34 uses the high-voltage supplies for its plate and screen grid, and the low-voltage supplies for its control and suppressor grids. Both units of twin triodes such as the 12AX7A can be tested simultaneously. The plates are powered by the high-voltage supplies and the grids are powered by the low-voltage supplies.

Complex special-function tubes such as pentagrid converters and hexodes have many grids. But in these tubes some of the grids are connected internally and are not brought out to separate tube pins. Even these complicated tubes can be fully exercised with just two high-voltage and two low-voltage supplies.

Triode-pentode tubes such as the 6BM8/ECL82, the 6U8A, and the 6GH8A present a challenge. Testing such tubes all at once would require three high-voltage supplies to power the two plates and the pentode screen grid. Triple-triode compactron tubes are challenging, as well. However, the tube analyzer can still test these types of tubes by exercising the individual units one at a time.

Vacuum tubes have heaters or filaments which must be powered correctly. Although most guitar amp tubes have 6.3 volt heaters, rectifiers generally need 5 volts and car radio tubes often need 12.6 volts. Many antique radio tubes had 2.5 volt heaters, and televisions with series heater strings used tubes with oddball voltages, e.g., 8.4 volts for the 8FQ7. In addition, early tubes required their filaments to be powered by DC rather than AC. To meet all these requirements, the tube analyzer has a regulated DC power supply for the heaters. The heater supply can generate any heater/filament voltage from zero to 15 volts. It can supply up to 3.2 amps of current, which is enough for every kind of tube I've found except huge industrial transmitting tubes.

The heater supply measures and monitors the heater current it is providing. This enables it to protect itself from the large initial current surges of cold heaters. It ramps up its voltage slowly at first, keeping the current within its safe range as the tube is warming up. The supply also protects itself against shorted heaters, again by limiting the current to a safe value.

All of the power supplies are controlled digitally; there are no knobs to turn.

The tube analyzer has sockets for nearly any kind of tube base. For pre-octal antique tubes, it has sockets with 4, 5, 6, and 7 pins. It has 7-pin and 9-pin minature sockets, and of course an octal socket. I also have adapters allowing loctal and novar tubes to be tested.

The tube analyzer has a USB port to connect it to a personal computer running Windows, MacOS, Linux, or FreeBSD. Most of the intelligence of the device resides in the software that runs on the PC. It has a graphical user interface (GUI) with a toolbar, a configuration area, and a large area for displaying plots and other results. The screenshot at right is a typical view of the GUI after plotting the plate curves for a 6550A beam power tube.

To protect the PC from any possible malfunction in the device, the USB port is optically isolated from the rest of the tube analyzer circuit. There is no electrical connection whatsoever between the high-voltage electronics and the PC.

A simple patch panel is used for connecting the pins of the tubes to the signals in the tube analyzer. The panel has 9 leads connected respectively to pins 1 through 9 of all tube sockets. Each lead ends in a tip plug. Adjacent to these leads are tip jacks for each of the possible tube electrodes (cathode, anode, grid 1, etc.). Configuring the patch panel is simple and takes just a few seconds. For example, if pin 5 of the tube is the control grid, the user plugs lead number 5 into the jack labled "G1".

The software includes a growing database of common tubes. The database contains information about most tubes found in guitar amps, radios, and other electronic gear. For tubes in the database, the GUI displays the patch panel configuration in a diagram that is laid out just like the actual patch panel. The example at left shows the patch panel diagram for the EL34 power pentode. The tube database also contains the operating point for measuring tube characteristics, and datasheet values for transconductance, plate resistance, amplification factor, and plate current. These values are automatically loaded into the tube analyzer configuration when the tube is selected from the database.

Measuring Tube Characteristics

The tube analyzer can display various tube characteristics numerically at a specified operating point. This is useful for matching tubes and for quickly checking how "good" a tube is. The results are displayed in tabular form as shown at right. This example is from a used 12AU7A twin triode that is in excellent condition. The percentages in parentheses are relative to the ideal values, taken from the tube database. Here we see that the plate current and transconductance are both slightly below the ideal values, indicating some degradation of the tube. The plate resistance is also somewhat high, again indicating some tube wear. The values shown are very good, however, and a traditional tube tester would report the tube as being in excellent condition.

Interestingly, the amplification factor (Mu) remains essentially constant throughout the lifetime of a tube. As the tube wears out, the transconductance decreases and the plate resistance increases. The product of the two, which is the amplification factor, does not change. That is because the amplification factor is mainly determined by the internal geometry of the tube, which doesn't change as the tube ages.

The example at left is from a used 6L6GC beam power tube, also in good condition. Several additional parameters are measured for tetrodes and pentodes. You might notice that the amplification factor is omitted for this tube. Amplification factor has very little relevance for tetrodes and pentodes, and it is difficult to measure accurately because it is so high. For that reason, tube datasheets for tetrodes and pentodes rarely specify the amplification factor. The plate resistance for screen grid tubes is likewise often very high and difficult to measure; however we display its value when it is 100 kΩ or less.


The screenshot at right shows how plots are configured in the tube analyzer. At the top, a preset from the tube database can be selected to load values from the datasheet into the configuration. If no preset is chosen, the user can still configure any plot manually.

Next comes a section where the user can set the heater voltage and turn the heater on or off. When the heater is on, its current is monitored and displayed in this section.

The user sets the general type of tube in the Tube Type section. The possible choices are:

The Tube Type selection informs the tube analyzer how many high-voltage and low-voltage grids the tube has. For our purposes, a tetrode is any screen grid tube that does not have a suppressor grid on a separate tube pin. Thus, the 6550 and 6L6 are considered to be tetrodes, while the EL34 is considered to be a pentode.

In the Sweep section, the user selects a tube electrode whose voltage is to be swept from zero volts to a specified final value. In this example, we will sweep the anode voltage from 0 to 400. In most cases, the swept voltage becomes the X-axis of the plot.

In the Step section, the user can optionally choose an electrode to be stepped through a list of voltages. Each step generates one curve on the plot. Here we are plotting a set of plate curves, so the control grid is stepped through the values 0, -5, -10, …, -35 volts. If desired, the user can edit the list to remove certain values or add extra values.

Any remaining tube electrodes are assigned constant voltages in the Set section. In this exaample we are configuring the screen voltage at 250 volts. For tetrodes and pentodes, the user can also choose normal mode (screen voltage held constant), triode mode (screen voltage the same as plate voltage), or several different variants of ultralinear operation.

Finally, the Limit section allows the user to set optional limits on the plate current and/or the plate dissipation to avoid over-stressing the tube under test. If a limit is exceeded while plotting a curve, the curve is aborted at that point. Setting these limits can help protect precious or fragile tubes. However, the limits are usually not necessary. For each measurement, the voltages are pulsed onto the tube electrodes for just a fraction of a millisecond. Even though the peak current and/or power may be very high, the overload condition is so brief that it cannot damage most kinds of tubes.

The tube analyzer generates several kinds of plots during a test, depending on the sweep electrode. When the sweep electrode is the anode, it generates plots for:

When the control grid is swept, it generates plots for: The user can view any of the generated plots via tabs above the plot display. Here are some sample plots. Hover over an image for a brief description; click to enlarge.

Saving Plots and Datasets

The user can save data from the tube analyzer in several formats. The simplest method is to save the plot image itself. Currently the tube analyzer can save its plot images in Portable Network Graphics (PNG) format or in Scalable Vector Graphics (SVG) format. PNG files are handy for general purpose use such as printing plots or embedding them in documents. SVG files are more flexible, because they can be displayed efficiently at any size without loss of information or detail. Most of the plots in this article are in SVG format, and the same image file is used for the thumbnail images and the full-size versions.

It is also possible to save raw measurements in so-called TubePlot Data (TPD) files. A TPD file contains every data point that was measured in the most recent plotting operation. TPD files are saved in standard JSON format which can easily be read and manipulated by other software. These files enable the user to perform subsequent post-processing of the measured tube data. An example is shown at right. Here I wrote a simple program (90 lines of Python code) to generate a set of composite plate curves for analyzing a push-pull output stage. In the example, data from a single tube was used for both tubes of the push-pull circuit. But TPD files from two different tubes could be used as easily, allowing one to explore the effects of using tubes that are not well-matched.

Extrapolating to Higher Voltages

The tube analyzer's high-voltage limit of 500 volts is more than adequate for most purposes, but occasionally the user might need data for higher voltages. This is particularly the case when analyzing audio output stages. Typically, the plate voltage of an output tube will swing from near zero up to almost twice the supply voltage. In a guitar amp with push-pull 6L6GC tubes, the plate voltage might swing up to 900 volts at full power.

Although the tube analyzer cannot directly measure tube data at such high voltages, it does have the ability to estimate the data reasonably accurately. It does this by an extrapolation technique often referred to as "conversion factors". Conversion factors are explained in Chapter 2, Section 6 of the Radiotron Designer's Handbook, 4th edition. An example will show the basic idea. Suppose we want tube data at a plate voltage of, say, 750 volts. We cannot measure it directly. Instead, we take a measurement with 500 volts on the plate, while scaling down all other electrode voltages by the same factor. Then we scale the measured currents up using a 1.5-power rule that is based on the physics of vacuum tubes. The result is a reasonable approximation of the current we would measure at 750 volts.

The tube analyzer performs this extrapolation automatically whenever the user requests data at voltages beyond what the hardware can supply. The plot at right shows an extrapolation of the 6L6GC plate curves to 750 volts. It's not perfect, but it's good enough for rock & roll.


Besides having been a fun and challenging project to design and build, the tube analyzer has proven to be a very useful tool. Unlike a traditional tester that simply says a tube is "good" or "bad" or "weak", the tube analyzer tells me exactly how the important characteristics compare to their ideal values. Whereas most tube testers offer only a small number of fixed operating points for testing all tubes, the tube analyzer can reproduce the exact conditions that were used by the manufacturers in preparing their datasheets. In addition, the tube analyzer can perform tests under non-standard conditions such as those found in real equipment.

The device is also great for matching tubes. Tubes can be matched easily for both plate current and transconductance at any desired operating point.

The plots generated by the tube analyzer are useful for checking out older tubes that are not well understood. They are also helpful for tube matching, especially for finding twin triodes that are well matched for use in phase inverters. Finally, the ability to generate plots for any operating condition is a great aid when designing amplifiers.

The software continues to evolve as I add new features. Like most interesting projects, it will probably never be completely finished.

Copyright © 2018 John D. Polstra. All rights reserved.