ATU-100 modifications

Part #12 of the "Roger Writes" series - February 2024


While looking for ATU (antenna tuning units) I came across lots of cheap kits on the auction sites. Looking a little closer nearly all of them are based on an open source design By N7DDC. It's a simple design that follows a number of tried and tested principles.

I've also looked at a number of commercial designs:
From my research, there are a few common configurations for automatic tuners:
  1. A switchable L filter - Usually has a series inductor bank, with a single capacitor bank to ground switched between the input and output sides of the inductor.
    From the ATU-100 schematic we can see this is what's used for the ATU-100 (it's also used in most of the LDG and MFJ Auto-ATUs).
  2. A full π filter - Usually has a capacitor bank on the input, an inductor bank in line, and a capacitor bank on the output.
    It's used by most of the SG-2xx range, and many other remote tuners (can probably tune a wider range of antennas)
  3. A T filter - Usually with capacitors in series on the input/output, with an inductor chain to ground in the middle
    Used by many Kenwood internal and external tuners, it's also used by many manual tuners.
Note: The Icom AH-4 actually uses a hybrid design, with 8 capcitor banks switched between the input and output sides, and 2 extra chanels of capcitors just on the output.

The ATU-100

The overall circuit of the ATU-100 consists of a few main sections:

The basic operation, is to:
  1. Wait for minimum transmit power
  2. Measure the forward/backward voltages and calculate the SWR (uses a loop to find the peak measurement for minimal rounding errors)
  3. If the SWR is good, then all done
  4. If taken too long and no good SWR found, then bail with an error
  5. Change the relay settings and then loop to the Measure step
It sounds simple, but searching for a good pattern in a resonable amount of time is complicated. The search algorithms are still changing as new research appears.


I use the ATU-100 for a short while, and the main problem I found was that it frequently retunes, when you change frequency or band. It only has one memory, which is the last used setting. Commercial tuners have many memorys (old ones have dozens, modern ones thousands), by measuring the frequency, the last known good values for that (or nearby) frequencys are used.


Front end

Looking at the commercial schematics available on line, there are a few approaches, but with modern components, it's relativly straight forward. I merged a number of designs, put them into KiCad, and use the built in spice simulator to tune the values (I couldn't find a good model for the 74AC14, so just used a 5M resistor and 5pF capacitor to ground).

Component list: I spent some time tuning the values, I was aiming for the full voltage swing required by the 74AC14 from 1.5MHz to 55MHz with 20V pk-pk in (about 4W). I also wanted to limit the number of high wattage resistors (I don't have many value in my resistor boxes), also it's wasted power! With these values it can cope with 150V pk-pk, which is about 225W.
The multi resistor make up of R2/R3 is to avoid the need for high wattage resistors, R5 is to acheive better biasing of the 74AC14 (should be 2.4V, 18k+16.5k gives 2.39V).

With Counters

With the 74AC14 and 74HC393, and the expanded resistor values we get this:

Some of the older commercial units use a big divider (LDG IT-100 uses 1:32768, SG-237 uses 1:512), then time the high/low pulse time. MFJ designs often use 1:1, but for many PICs the upper input frequency is 16MHz, for others it's 32MHz, so this limits the max freqency. I've gone for a div 4 design, this gives 64MHz maximum input (even for 16MHz devices).
Instead of timing the high/low time, I've used a direct count approach. Using a 16-bit counter, we can count to 65535, so with a div 4 design, we can count for 4ms, and this gives the frequency in kHz. I'm actually using a 16kHz resolution, so counting for 1/16th of this time (so 250usec).

Circuit changes

Most of the boards have a PIC16F1938 pre-soldered, for this PIC, the Timer 1 clock in pin (T1CKI) is fixed as pin 11 (later PICs have Periperal Pin Select, that allows the inputs to be moved between most of the pins).
In the existing design, pin 11 is used for the capacitor I/O relay (this switches the capacitor bank between the input and output side of the inductors). To free up this pin, I cut the track on the top of the board that goes to the bottom left Via, then on the bottom of the board I put a lead between the B0 pad and the Gate of the I/O relay FET. To connect to PIC pin 11, I scraped some of the solder resist from the track and soldered the output of the 74HC393 to it.


Hardware is working, but the SW needs some work...Even using the latest code from below
The latest code uses the tune2 (From Tom) and then Tune (if the result isn't good enough).
But for some frequencies/antennas I can get better (usable) results, depending on from where I start.

Next steps

The Roger Writes series

I research / dabble with lots of things, and figured that if I write my notes here, I can quickly reference them, also, sometimes, they are useful to others!
Here is what I have so far:

This page was lasted updated on Sunday, 24-Mar-2024 13:37:32 GMT

This content comes from a hidden element on this page.

The inline option preserves bound JavaScript events and changes, and it puts the content back where it came from when it is closed.

Click me, it will be preserved!

If you try to open a new Colorbox while it is already open, it will update itself with the new content.

Updating Content Example:
Click here to load new content