Smith Charts


Square Chart Example

Smith Chart Example

I would like to thank ej-technologies for their kind support:

  they provide a great product for finding just what’s taking so long.  They also provide

which is used to create the install scripts.  I also invested in Apple and Comodo code signing certificates so the installs would go more smoothly.

SimSmith 15p0 is now available for general usage. Executables for windows and OS X are code signed.

If you are just getting started with SimSmith, please (PLEASE?) watch at least two videos:  SimSmithV7 (parts 1 and 2) and IntroToSmithChart.  Things have evolved somewhat since these videos were made but they are a solid start on SimSmith and Smith charts in general.

ADDITIONALLY:  I highly recommend the many videos (14 and counting, I believe) by Larry Benko, W0QE.  His videos are available on youtube and all use more modern versions of SimSmith.

I have stopped testing SimSmith except under OS X.  Some kind folks have done testing on Windows 10.  It is my belief it works under Linux and occasionally someone verifies that for me.

You should always do a system backup before installing any new software.

Here are the most recent release notes to help decide if you’ll upgrade: Release Notes.pdf

Here are the links to the various system dependent SimSmith distributions:

           Version 15.0 packages                                Notes:

        SimSmith_macos_15_0.dmg                       os x, 64 bit                              ‘ixes, 64 bit

        SimSmith_windows_15_0.exe                     windows, 32 bit.

        SimSmith_windows-x64_15_0.exe              windows 64 bit.

If you download SimSmith, please consider joining  the Yahoo Group “SimSmith”.  This will allow you to make suggestions, share techniques and be notified of bugs and releases.

Once you’ve download it, go to ‘Help’ for various articles and written documentation.

Here’s an old Primer: SimSmithPrimer.pdf  Newest one is in the distribution under ‘help’.

Here are some example impedance files:

I try to write down some of the info on SimSmith but I find it difficult to convey the feel of an interactive program using text.  Rather, I make short (10 to 20 minute) videos.  Generally, if there is a new feature I make a video.  As SimSmith evolves, I don’t go back and redo the videos.  This makes the videos obsolete when it comes to tool layout.  The videos are still worth watching because they show what features are available even if subsequent versions moved them around.  Again, for more modern videos, see W0QE (Larry Benko) on youtube.

Legacy videos....    Basic introduction to SimSmith. View this first.     Expanded Intro to SimSmith Basics using Version 7.     Expanded Intro to SimSmith Basics using Version 7.    Advanced Generators and the Function Block.       I look at impedance matching over a range of frequencies.

                                    (Here’s the load model I used in Tutorial2:80mDipole.txt)       I add a feed line and explore chapter 9 of the Antenna Handbook.       I use SimSmith to design a better Dummy Load.       I describe some features of SimSmith... and some idiosyncrasies.       A detailed look at SimSmith’s Function Block.  See the Introduction

                                        to version 7.1 above for a more up to date information.       Transformers, reference traces, S blocks and Session Restore.

                                       (note that the ‘’ has been moved to the

                                        user’s home directory as of 4.13).        Introduces features new to version 5: resizing menus, sweep control

                                    and plot signal selection.        Explains changes made in version 6 and introduces new features.

SimSmithV9.mp4        Highlights of version 9: drag and drop and the N block...

BlueToothExample.mp4        A look at how to use SimSmith to explore a bluetooth (2.4 GHz)

                                    matching circuit.  Shows how to use SimSmith to tune the circuit,

                                    how to move the Smith chart origin, and how to model a balanced

                                    circuit circuit using the RUSE block.  Here’s the


14p1_FileChooser.mp4    Introduction to the File Chooser and other significant 14p1 features.

AntennaZfromTuner.mp4  how to find your antenna impedance given an SWR of 1/1 and your

                                    tuner’s topology, inductance and capacitance  (for example).

downloadAndGettingStarted.mp4 How to download and get started on windows.

                                    Essentially the same on OS-X.   See how SimSmith will start up the

                                    first time and how to get your first circuit working.   See the basic

                                    screens.  Use drag and drop.  Really need to watch

                                    “” and IntroToVersion7 parts 1 and 2 above

                                    right after this.

intoToVersion11.mp4        Features new to version 11 are presented including using the

                                    internal clipboard, markers, plot expressions, and sweep expressions.

                                    Lots to cover, it is pretty big (100M).

accessingElementValuesInFandN.mp4    how to use circuit element parameter values inside

                                    the N and F blocks.  Uses simple Diplexer to show how to have N

                                    block internals track external circuit element values.

monitoringNBlockInternals.mp4    how to debug your complicated N block circuits.  Various

                                   ways to find out what’s happening inside the N block.  Kind of rambles.

gangedElements.mp4    how to gang elements.  How to have SimSmith automatically assign

                                    the values of some circuit elements based on the values of other


theLMatchingCircuitElement.mp4    using the new L ‘Matching’ circuit element to provide

                                automatic impedance matching and modeling of L network automatic


understandingThePI-LNetwork.mp4 explore how the Pi-L network behaves using the L

                                    matching circuit element new to Version 11p5.

suppressingThe2ndHarmonic.mp4    A case study on how to suppress second harmonics

                                using coax stub and feed lines to create a filter.  This video is quite long

                                and needs some work.  Still, it is a useful example of the kinds of

                                exploration possible with SimSmith when solving real world examples.

                                This is really big (141 Meg).

ExpressionSyntax.mp4  The F block syntax has changed a little.  If you use F blocks you

                                definitely need to see this.  If you use N blocks or G equations you would

                                benefit greatly but it will have less impact on you.

RUSE.mp4   version 12p3 introduces ‘RUSE’, a “Really Ugly Schematic Editor”.  It lets you

                                draw your circuit for the N block rather than writing it by hand.  It is very

                                simple minded but makes doing ‘complex’ N blocks much easier to

                                develop and modify.


    15o9    3-17-17

            Added rudimentary filter calculators.  SS can now compute the element values for

            Butterworth, Bessel, and Chebyshev filters of any size (well, Bessel only up to 10).

            Added ‘value edit line’: click on a parameter and edit it in a line up above the circuit.

            Deprecated RMSOf, AngleOf, WaveformOf, and PeakOf.   Added ‘totalPower’ to

            compute the total power of a signal when Harmonics are being used.  Reinstated

            Scattering Parameter chart support.  Added ‘SWR’ lines on square chart.

    14p15    1-10-17

            Fixed a few annoyances.  Biggest was bug when cutting/pasting labels in RUSE


    14p14    12-15-16

            This release added a few features and cleaned up a bunch of piddly stuff.  Various

            enhancements: added ‘Bandwidth Report’ to chart report sheets, ‘maxv’ to

            to transmission line models, reworked ‘wave’, ‘rms’, and ‘peak’ plotting, refined

            startup proceedure, changed ‘simplified transmission line model’, added block

            comments, added ability to plot ‘Gamma with SWR axis’ (EZNEC style SWR chart;

            I hope that doesn’t infringe on Roy’s work too much).  Other various things.

    14p11 10-25-16

            This release is all about making circuits easier to read.  It:

                1) Changes main circuit element naming conventions to reflect component type.

                2) Allows the user to specify the name of a circuit element.

                3) Automates the naming of parameters for RUSE block components.

            NOTE: significant changes were made to the RUSE block.  Now, by default, when

                you add a component it will have a value ‘-’.  If you leave the ‘-’ alone, a parameter

                with the same name as a component will be created.  You can replace the ‘-’ with

                simple editing.  You can restore the ‘-’ at any time with simple editing.

            There were a few bug fixes thrown in.

    14p10 10-17-16

            Fixed bug which caused ISOLATION block crashes, simplified use of cloneG,

            added ‘gamma’ and ‘swr’ extensions to transmission lines.

    14p9    9-20-16

            Worked a bit more on ‘hidden dialog’ problems.   Added Voltage Controlled Current

            Source to RUSE to enable hybrid Pi models.  Added ‘defaultV’ parameter to

            preferences menu.  Removed arrow navigation from file chooser.  Added ‘cloneG’ to

            voltage equation for isolate block.

    14p7    8-30-16

            ‘Fixed’ dialog problems with save and undo...  added more color support, improved

            RUSE editor a bit, improved integration with OS X and Linux, added more color

            support, abandoned 32 bit support.

    14p6    7-17-16

            Almost too much to mention.   Improved RUSE (and N) block internals for ‘plot’. 

            G.MHz can now be ‘multi-valued’ so you can plot the ‘path’ of multiple frequencies.

            Added access to current, votage, impedance, and power for literally all components

            including those in a RUSE or N block.  Enhanced the RUSE editor somewhat... and

            at least 40 other ‘major’ and ‘minor’ enhancements and fixes.

    14p3    30-11-16

            Improved low frequency transmission line model.  Expanded inductor coupling to

            allow differing k factors for mulitple winding inductors.  Fixed but in autotransformer

            when dealing with non-unity k factors.  Added support for SARK antenna analyzer.

            Improved RUSE auto-wirer to product more readable schematics.

    14p2    2-6-16

            Fix bug with autotransformers.  Put in weak checks (not reliable) to warn about

            dropping drags in useless places.  NOTE: YOU CANNOT DROP COMPONENTS



    14p1    2-4-16

            Lots (and lots) of features added.  Most significant is the new File Chooser.  See

            the video about for details.  Other highlights:  Added ‘view’ pane above the circuit

            which shows whatever the mouse points to in a larger font, added rotate command,

            fixed various bugs in Markers and added ‘value’ fields to markers,  fixed square chart

            zooming and panning, added ability to use AC6LA data in F and N blocks.  See

            release notes and other documents for details.

    12p3    12-14-15

            Added a schematic editor for N blocks (see RUSE video).  Added ‘instrumentation’

            for N block internals.  Extended N and F block variable names and autogeneration of

            parameters for N, F, and G blocks.  Added rudimentary ‘time domain’ functions so

            you can see waveforms.  Added rudimentary support for ‘non sinusoidal’ drive

            functions.  Added ‘parameter report screen’ for extracting Y and Z parameters.  Added

            ability to write Y and Z touchstone files.  Added ‘file’ support to N block components.

            Added horizontal zooming to Square charts.

    11p10  8-17-15

            Add a slew of features to make tuning easier (arrows, wheels, etc).  Increased

            precision for parameters.

                Added an ‘abort’ button for long sweeps and improved sweeping speeds.  Fixed

            sweep pruning with load files.

                Added the ‘autoTransformer’. 

                Added ability to write data so you can use things like GNUPLOT and EXCEL.

                Lots more, please read the release notes.

    11p8    6-7-15

            Improved window control, added arrow and wheel tuning, added increased precision,

            added support for ‘wheel-less’ mice.

    11p7     5-25-15

            interestingly... no bug fixes, just adding some safe guards, added to colors to the

            circuit menu, moved the error window default location, stuff like that.

    11p6    5-15-15

            fixed problem with transformer having power gain.  Fixed reading touchstone files

            problem,  changed ‘reverse power’ from the load.

    11p5     5-14-15

            Added the L Matching circuit element.  Fixed general bugs.  Did a bunch of videos.

    11p3     4-4-15

            Added “Markers”, “Sweep Expressions”, and general purpose “Plotting”.  Added

            options for displaying power usage.

    10p2    12-2-14

            Better Smith and square chart zooming and panning, fixed a bunch of

            ‘bugs/misfeatures’, added MMANA support, fixed a few internal bugs with N

            and F blocks, added multipliers to xMtch, useZo, etc, added ‘curves’ to N and F

            block plotting, removed Scattering Parameters square chart (lack of interest).

            See ReleaseNotes.pdf for details.

    9p9    2-13-14

            Fixed lots of little problems.  Changed square chart zooming to be ‘continuous’,

            added ‘click/drag’ for panning the Smith chart (click well away from any trace and

            drag the chart).  Click/drag panning for Square chart, click on axis and move ti up

            or down.  Added generic ‘exception handler’, please follow directions if you run into

            a problem.  See ‘help/latest release notes’ for more details.

    9p8    1-28-14

            Fixed a problem with the Power Lost report and plotting in the Square chart.

            Fixed problem with matrix evaluation... seems I had broken it after alll...

    9p6    1-22-14

            Fixed a few system dependent startup problems, improved matrix evaluation

            (and hopefully didn’t break it, please be wary).

    9p5    1-18-14

            MAJOR CHANGES: added file drag and drop, got undo to work better, added

            Netlist block.  Improved Smith chart zooming, cleaned up graphics.  Packaged

            in the JRE and all documentation.  See ‘help/release notes’s for more details.

            Removed ‘printing’ and substituted writing (and capturing) screen images.  Captures

            don’t work on OS X running java 7 so the option to include ‘capture’ in the top

            toolbar must be enabled in the ‘file/preferences’ menu.

            There are a few esoteric problems on XP an OS X 10.5.8 which probably

            won’t be fixed.

            Linux distribution hasn’t has much test mileage. See SimSmithV9.mp4 above.

            VERSION 9p5 can generate .ss files incompatible with earlier versions.  It now

            names the backup file in a version specific way.  You’ll get warned about missing


           THIS VERSION HAS KNOWN PROBLEMS with WIndows VISTA.  So far, no one

            has stepped forward to help debug it.

    8.3    MAJOR CHANGES.  This release reworked significant parts of the computational

            internals.  Use this release only if you’re confident you will notice any bad behavior.

                The release notes are extensive and are here: Version8ReleaseNotes.pdf

            Here is the ‘jar’ file: SimSmith-8.3.jar I won’t package up version 8 until I (and others)

            have used it for a while and it proves reasonably reliable.

            VERSION 8.3 GENERATES “.ss” files incompatible with earlier versions

            of SimSmith.  To go back you’ll need to delete “”

            in your home directory.

    7.8    Cosmetic changes.  Also added AC6LA transmission lines to F block.  Component

            labels are no longer changed when you re-arrange the elements in the circuit.

    7.7    Added support for AC6LA style transmission lines.  Changed warning box to

            make it more readable.  Fixed graphing problem in SWR plots.

    7.6    Jan 8, ’13    Added support for ‘meters’ (at last).  Changed the sweep menu to

            make its operation a little easier to explain.  Added a ‘PATH/SWEEP’ button to

            the Smith chart.  Please see SimSmith primer (above) for details.

    7.4    Dec 5, ’12    Minor fixes in graphics display.  Added ‘wrappers’ for windows,

            and OSX.  No wrapper yet for Linux.

    7.2:    Nov 12, ’12  Fixed several bugs involved with equation editing.

    7.1    Improved Function block support.  Added equations to the ‘Generator’ block.

            See VenerableAppendix.pdf for equation Syntax.

    7.0:  Drag tuning deserved its own major release number.  Addition of preferences to

            set things like default Q values for inductors and capacitors.  Had to play around

            (Again) to get international number formats to work.  Please report any problems.

            Here are some cursory release notes: SimSmith 7 Release Notes.docx


    1.1    changed to ‘clicking’ in charts to show information

    1.4    fixed problems with “Save” and “Load” for transmission line segments

    1.6    added support for reading “cocoaNEC” nec2 output files for ‘loads’.

            added ‘db’ indicator for “powerIn” in SWR chart.

            fixed a few cosmetic things.

    1.8   (and 1.7) fixed cosmetic things.  The big ones were ‘scan frequency’....

            the frequency didn’t always fit and the most significant digits were dropped.

    1.9   A few cosmetic changes, fixed calculation of Q for inductors.

    1.11 Just cosmetic again.

     2.0  I had problems with Ubuntu performance (very sluggish editing) in

            early releases, this release should fix any such problems.  My sincere

            thanks to Eldon Brown (WA0UWH) for providing testing for the rewrite.

            This effort required a complete rewrite of the “Smith chart” graphic.

                I added three features:  a button to hyperlink you to this page,  an ‘x’

            at the ‘generator frequency’ on the SWR plot, and a vertical marker at the

            report frequency, also on the SWR plot.

    3.3   Yes, lots of work in between.  I added ‘standard values’ for resistors, capacitors,

            and inductors.  There are built in ‘standard values’ and you can load your own

            standard value files as well.  There are three new tuning buttons:

            “previous”, “closest”, and “next” which are immediately below the old tuning

            buttons.  There are also three new buttons for loading your own ‘standard values’.

            The built-in standard values for resistors is a 5% chart I fond on the web.

            The SimSmith Primer document above has been updated to show the file format

            which is pretty obvious.  Here’s an example:  SimSmith.RES

    3.4   A quick update to add a ‘Pin’ field to the schematic components.  Assuming 1 watt

            is delivered by the generator, “Pin” indicates how much power makes it to the

            component.  For a lossless network then, the Pin at the load should say “1”.

            Practical circuits will have a power at the load of less than 1.

    3.5   Fixed version string... 3.4 said it was version 3.5 (sigh).

    4.2   Added a ‘library’ function, added a few components (including a transformer),

            changed ‘save/load’ operation, and added a ‘print’ function.

    4.3   Added support for W7AY’s AAPlot Mac OS-X application.  SimSmith can now

            read the impedance data set from ‘Rig Expert’ antenna analyzers.

    4.4   Fixed some cosmetic bugs.

    4.8    Fixed various cosmetic and operational esthetics.  Introduced the support for

            touchstone file formats for Scattering Parameters.    You can specify the load

            using a touchstone “.s1p” file.  (SimSmith looks at the extension and, seeing

            “.s1p” will attempt to read the file as a touchstone s1p file.

                I also introduced the “S” circuit element.  You can specify the scattering

            parameters for the S block using touchstone “s2p” files.  Only s2p “Scattering

            Parameter” formats are supported, no ABCD or Y or Z parameterization yet.

            This release took lots of editing so I won’t release it as main line for some time.

    4.9   I cleaned up a couple of bugs in S blocks.  I added the ability to reverse S blocks.

            I added the ability to change how transformer traces are drawn on the Smith Chart.

    4.10 I put in the code to ‘tolerate’ Version 2 of the touchstone files.  Basically, I simply

            confirm that the options are what would be supported by version 1.1.

    4.12 April4-2012

            This was a major undertaking and should probably have been 5.0!  SimSmith can

            now read in load files and display them directly on the SWR and Smith charts.  Any

            of the supported load files can be used.  You can also write touchstone S1P files

            so that you can save a circuit analysis for future reference. 

                I COMPLETELY CHANGED THE DISK FILE FORMAT.  I believe I left

            in the ability to read old files but all files are saved in the new format.

                I changed transformers so there are two views, one for coupled inductors with

            variable coupling and one for a simple transform with k assumed to be 1.  In this

            second transformer you can specify the turns ratio directly.

                SimSmith now keeps a copy of your circuit on the disk called

            “”.  This file is updated whenever you make a circuit change.

            It is read in when SimSmith starts up so you can resume your session as it was

            when you exited.  You can load a different file at startup if you invoke SimSmith

            from the command line.  On OSX you would type

                        java -jar SimSmith-4.12.jar filename

            I highly recommend you glance over the SimSmith Primer (near the top of this

            page) and look through the video “NewTo4.12” to get an overview.

    4.13 April-7-2012

            Moved ‘’ to the user’s home directory.

    4.14 Fixed circuit load problem.


    5.0    May 21, 2012....

            This was a substantial rewrite of the whole user interface.  Nearly everything is

            scaled correctly so things remain readable even when small.  The menus can be

            resized to make room for bigger circuits or bigger charts.  Version 5 provides

            much better control of what gets plotted and allows for sweeping of variables

            other than frequency.

    5.1    May 22, 2012

            Fixed SWR report in SWR Chart.

    5.3    June 18, 2012

            Added a ‘notes’ block.  Click on “file>show Notes Block”.  It should appear around

            the tuning buttons.  If not, click “help>recover Notes Block”.  Move the block by

            dragging the upper left corner, resize by dragging other corners.

                You can now use ‘load’ files to control sweeping.  The frequencies specified in

            the load file are used exactly... no interpolation is performed.  When you specify

            a load file, it is generally added to the sweep menu.

                The SWR and Smith charts are now both shown: one ‘large’ and one ‘small’.

            Clicking on the small one makes it large....

                Added the ‘frequency’ to traps.  Modifying the frequency or the capacitance will

            update the inductance.  Updating the inductance will change the frequency only.

                Added ‘Z’ blocks.  You can specify the value of Z explicitly or using a load file.

                Changed the precedence in the ‘F’ block a little to make it possible to write things

            like “10+10j” instead of “10+j10”.  As usual, if you see unusual behavior, fully

            parenthesize your equation.

    5.4    June 19, 2012

                 Added the “Generator” as a plotting option.  Best to select it when plotting the

           final result.

                Fixed a bug in the ‘sweep generator’ menu editor.

    5.5    June 26, 2012

                Added transformer “interwinding” capacitance.  Reworked code for transformer

            model.  Please report an problems.

                Fixed “PGain” plotting and reporting problem.

                Fixed “Load Component” R and X reporting.

    5.6    July 22, 2012

                Fixed bug where SimSmith crashed if an ‘reference’ file was missing on


    5.7    Aug 12, 2012

                Fixed problem reading nec2 files (which took forever), added support for nec4.1

            and nec4.2.  Fixed problem with “f” suffix in numbers (femto).  The ‘f’ was ignored.

    6.2    Sep 8, 2012

                Fixed a variety of bugs with Q and transmission line losses.

                Show parameters being edited as ‘pink’ until edit is complete.

                Added user selected scales to Power Gain and SWR plots.

                Added magnification for Smith chart.

                Added ‘Q’ arcs in Smith chart.

                Added new generator models: ‘fixedV’ for power amps with no matching, ‘xMtch’ for

           power amps with a transmatch, and ‘useZo’ for filter design.

                Moved ‘load files’ from components to sweep menu only.

                Added more print options for generating documentation.  Now everything is scaled

            to fit the print page.  Useless parts of the screen are not printed (things like plot

            menus and hidden references).

                Added ‘z’ to the Function block so you can access the working impedance.

                Added a ‘Notes’ block... click on ‘file’ ‘show notes block’...

    6.4:    Sep 18, 2012

            Fixed problem with commas as decimal separators.

            Improved sweeping speed.

            Added new ‘Z’ operator... lets you tune and compare multiple circuits at the

                same time.

            Fixed bug in transformer where SimSmith crashed if you switched to ‘simplified’.