Pages created and updated by
Terry Sturtevant
Date Posted:
September 2, 2009
LTSpice Tutorial
While LTSpice is a Windows program, it
runs on Linux under Wine as well. (LTSpice is also called
SwitcherCAD by its manufacturer, since they use it primarily
for the design of switch mode power supplies (SMPS).)
Note: This was written for SwitchedCad III. Now version IV is
available, but the instructions should be the same.
-
-
- Making Sure You Have a
GND
- Getting the Parts
- Placing the Parts
- Connecting the Circuit
- Changing the Name of the
Part
- Changing the Value of the
Part
- Using Net Labels
- Adding your own SPICE Models
or Subcircuits
- Saving
- Printing
-
- Before you do the
simulation
- Choosing a simulation
- Graphing
- Adding/Deleting Traces
- Doing Math
- Labelling
- Finding Points
- Saving
- Printing
-
- DC operating point
- Transient
- AC Analysis
- DC Sweep
- Noise
- Other types of analysis
-
-
Voltage Sources
- DC
- SINE
- PULSE
- EXP
- SFFM
- PWL
- PWL File
- Current Sources
-
-
Opening LTSpice:
- Find LTSpice on the C-Drive. Open SWCad III. The opening
screen will look like this:
.
- Begin a new circuit
- from the file menu, or
- click on the
"New Schematic" icon.

Now you will see this:
.
-
Drawing the circuit:
-
Adding a GND:
This is very important. You cannot do any
simulation on the circuit if you don't have a
ground. To place a ground, you can
- press the 'g' key, or
- use the ground icon,
,
or
- get it from the 'Edit' menu.
If you
aren't
sure where to put it, place it near the bottom of the
drawing.
-
Getting the other
Parts:
- The next thing that you have to do is get some or all
of the parts you need.
- This can be done by
- clicking on the icon for a specific
component;

(This is good for common components such as
resistors, capacitors, etc.)
- clicking on the 'component' button;
,
or
- pressing "F2"; or
- going to "Edit" and selecting
"Component..."
- Once this box is open, select a part that you want in
your circuit. This can be done by typing in the name or
scrolling down the list until you find it.

- Some common parts are:
- res - resistor
- cap - capacitor
- ind - inductor
- diode - diode
- voltage - any kind of power supply or
battery
Anything in [ ] is a
library, which contains many parts.
- To rotate parts so that they will fit in your circuit
nicely, press "Ctrl+R" before placing the part.
If you want to reflect (or 'Mirror') the part,
press "Ctrl+E".
- Upon selecting your parts, click where you want them
placed (somewhere on the grey page with the dots).
Don't worry about putting it in exactly the right
place, it can always be moved later.
Each type of part can be placed multiple times in
succession, and they will be automatically numbered. when
you want to stop placing a particular type of part,
right-click or press 'Esc'.
-
Placing the Parts:
- You should have most of the parts that you need at
this point.
- Now, all you do is put them in the places that make
the most sense (usually a rectangle works well for simple
circuits). To move parts, click on the 'move'
icon,
and then you may select parts and drag
them where you want them.
(When you have a part selected for a move, you can
rotate or reflect it as well.)
- If you have any parts left over, just select them and
press "Delete".
-
Connecting the Circuit:
- Now that your parts are arranged well, you'll
have to attach them with wires.
- Go up to the tool bar and
- select the "Draw Wire" button
, or
- "F3" or
- go to "Edit" and select "Draw
Wire".
- With the pencil looking pointer, click on one end of
a part, when you move your mouse around, you should see
crossed lines appear. Attach the other end of your wire
to the next part in the circuit.
- Repeat this until your circuit is completely
wired.
- If you want to make a node (to make a wire go more
then one place), click somewhere on the wire and then
click to the part (or the other wire). Or you can go from
the part to the wire. You should see a square block when
3 or more wires connect at a point.
- To get rid of the pencil, right click.
-
Changing the Name of the
Part:
- You probably don't want to keep the names C1, C2
etc., especially if you didn't put the parts in the
most logical order. To change the name, right click on
the present name (C1, or R1 or whatever your part is),
then a box will pop up (Enter New Reference Designator),
where you can type in the name you want the part to
have.

- Please note that if you double click on the part or
its value, no box will appear.
-
Changing the Value of
the Part:
- If you only want to change the value of the part (if
you don't want all your resistors to be 1K ohms), you
can right click on the part, (not the name), and
a box title by the part name (such as
"Resistor") will appear. The number of fields
in the box will depend on the type of part it is. Type in
the new value and press OK. Use u for micro as in uF =
microFarad.

-
Using Net
Labels:
- These are important if you want to user your own
identifiers for points
in the network
where you want to determine voltages
rather than
having
to work with the node numbers that LTSpice assigns.
- To add net labels,
- press "F4", or
- click on
the "Label Net" icon
, or
- select "Edit/Label Net" from the menu.
When you do this, a window will pop up where you assign
the label you want to use for the net.

-
Adding your own
SPICE Models or Subcircuits
How to add a model to LTspice (SwitcherCad)
This assumes you want to add a new model for a new device similar to
one in
the existing library.
- Look under C:\Program Files\LTC\SwCADIII
(or C:\Program Files\LTC\LTspiceIV)
- Go to the directory lib\cmp
- Look at the list of standard devices to figure out which kind you
want, such as:
- standard.bjt
- standard.dio
- standard.jft
- ...etc...
Each line in each of these files has a model for one device.
- Add a line with the .model
line for your device to the end of the appropriate file using a text
editor.
Now when you open LTSpice, you should be able to pick the device you've
added as though it was one of the existing models.
How to add a subcircuit model to LTspice (SwitcherCad)
Sometimes you need to add something which is more complicated than
simply a model.
In this case you can add add a subcircuit model for a device.
You'll save a bit of time if the new device at least looks
similar
to
one in
the existing library.
Otherwise you may have to draw a new symbol.
(Suppose the file that contains the model you want to use is called
1N5338B.LIB and the model you want to use
is a subcircuit called 1N5338B.)
- Look under C:\Program Files\LTC\SwCADIII
(or C:\Program Files\LTC\LTspiceIV)
- Put the file 1N5338B.LIB
in the subdirectory lib\sub
.
- Go to the directory lib\sym
- Find a component similar to what you want. That way you won't have
to draw the symbol from scratch.
For instance,
if I were adding a new zener diode, I see there's a component
zener.asy.
- Copy zener.asy to 1N5338B.asy.
(1N5338B will be the name of the new zener diode model I want to
use.)
- Open 1N5338B.asy in a text editor, and make the
following changes:
- change SYMATTR Prefix D
to SYMATTR Prefix X
(This says that the model we're using is a
.subckt.)
- change SYMATTR Value D
to SYMATTR Value 1N5338B
(This says that the name that will show up on the schematic is
1N5338B.)
- add a line
SYMATTR ModelFile 1N5338B.LIB
(This says that the name of the file containing the subcircuit
we're using is
1N5338B.LIB.)
- add a line
SYMATTR SpiceModel 1N5338B
(This says that the name of the subcircuit
we're using is
1N5338B. You can see this by looking
at the first line of the file:
.SUBCKT 1n5338b 2 1
This tells the name of the model and that it has two pins.)
Now when you open LTSpice, you should be able to find the component
you have added, and use it like any of the ones that are built-in .
-
Saving:
- To save the circuit, use the save button
on the tool bar or any other method
you would normally use to save files.
-
Printing:
- To print, you may use the menu or the print icon
as
usual.
-
Simulation:
-
Before you do the simulation:
- You have to have your circuit properly drawn and
saved.
- There must not be any floating parts on your page
(i.e. unattached devices).
- You should make sure that all parts have the values
that you want.
- There are no extra wires.
- It is essential that you have a ground in
your circuit.
-
Choosing a simulation:
- Click on the Simulate button on the tool bar
or use the "Simulate/Edit Simulation Cmd"
command.

- Enable whatever type(s) of anlysis you want using the
Edit Simulation Command window.
The last one you choose is the one which will be done
when you simulate.
- Click on the Simulate button on the tool bar
or use the "Simulate/Run" command.
- It will check to make sure you don't have any
errors. If you do have errors, correct them.
-
Graphing:
- Go to the "View" menu:
-
Adding/Deleting Traces:
- Use "Visible Traces" or
on the toolbar to select
all the traces you want.
- The add traces window allows you to choose varaious
signals from the circuit, or to create mathematical
expressions involving them.
- To delete a trace, select its title on the
graph and press "Delete".
-
Doing Math:
- In Visible Traces, there are functions that can be
performed, these will add/subtract (or whatever you
chose) the lines together.

- Select the signal(s) that you wish to have
displayed.
- There are many functions here that may or may not be
useful. If you want to know how to use them, you can use
LTSpice's Help Menu.
-
Labelling:
- Click on Text Label
on top tool bar.
- Type in what you want to write.
- Click OK
- You can move this around by single clicking and
dragging.
-
Finding Points:
- Click on the name of the trace you
want to look at and then a cursor window will appear,
showing
information about the point currently selected.
.
- You can use the cursor keys to move back and forth
through the data points.
-
Saving:
- To save your probe you need to go into the tools menu
and click display, this will open up a menu which will
allow you to name the probe file and choose where to save
it. You can also open previously saved plots from here as
well.
-
Printing:
- Select Print in Edit or on the toolbar
.
- Print as usual.
-
Simulation Commands
-
DC Operating Point

- This is a simple, but incredibly useful analysis. It
will not give you anything to plot, but it will indicate
the voltages at all nodes and currents through all
devices in the circuit.
-
Transient

- The transient analysis is probably the most important
analysis you can run in LTSpice, and it computes various
values of your circuit over time. Two very important
parameters in the transient analysis are:
- Stop Time.
- Time to Start Saving Data
- Maximum Timestep
- (various
checkboxes....later)
- The ratio of Stop Time: Maximum
Timestep determines how many calculations
LTSpice must make to plot a wave form. LTSpice always
defaults the start time to zero seconds and going until
it reaches the user defined final time. It is incredibly
important that you think about what timestep you should
use before running the simulation, if you make the
timestep too small the probe screen will be cluttered
with unnecessary points making it hard to read, and
taking extreme amounts of time for LTSpice to calculate.
However, at the opposite side of that coin is the problem
that if you set the timestep too high you might miss
important phenomenon that are occurring over very short
periods of time in the circuit. Therefore play with step
time to see what works best for your circuit.
- You can set a step ceiling which will limit the size
of each interval, thus increasing calculation speed.
Another handy feature is the Fourier analysis, which
allows you to specify your fundamental frequency and the
number of harmonics you wish to see on the plot. LTSpice
defaults to the 9th harmonic unless you specify
otherwise, but this still will allow you to decompose a
square wave to see it's components with sufficient
detail.
-
AC Analysis

The AC analysis allows you to plot magnitude and/or phase
versus frequency for different inputs in your
circuit.
-
Type of Sweep
In the AC anlysis menu you have the choice of three
types of analysis:
- Linear,
- Octave and
- Decade.
These three choices describe the X-axis scaling
which will be produced in probe. For example, if you
choose decade then a sample of your X-axis might be
10Hz, 1kHz, 100kHz, 10MHz, etc.... Therefore if you
want to see how your circuit reacts over a very large
range of frequencies choose the decade option.
- You now have to specify at how many points you want
LTSpice to calculate frequencies, and what the start and
end frequency will be. That is, over what range of
frequencies do you want to simulate your circuit.
- Number of points
- Start Frequency
- Stop Frequency
-
DC Sweep
- The DC sweep allows you to do various different
sweeps of your circuit to see how it responds to various
conditions.
- For all the possible sweeps,
- voltage,
- current,
- temperature, and
- parameter and global
you need to specify a start value, an end value,
and the number of points you wish to calculate.
- For example you can sweep your circuit over a voltage
range from 0 to 12 volts. The main two sweeps that will
be most important to us at this stage are the voltage
sweep and the current sweep. For these two, you need to
indicate to LTSpice what component you wish to sweep, for
example V1 or V2.
- Another excellent feature of the DC sweep in LTSpice,
is the ability to do a nested
sweep.
- A nested sweep allows you to run two simultaneous
sweeps to see how changes in two different DC sources
will affect your circuit.
- Once you've filled in the main sweep menu, click
on the nested sweep button and choose the second type of
source to sweep and name it, also specifying the start
and end values. (Note: In some versions of LTSpice you
need to click on enable nested sweep).
Again you can choose Linear, Octave or Decade, but also
you can indicate your own list of values, example: 1V 10V
20V. DO NOT separate the values with
commas.
-
Noise
- LTSpice will simulate noise for you either on the
output or the input of the circuit. These noise
calculations are performed at each frequency step and can
be plotted in probe.
- The two types of noise are:
- Output for noise on the outputs
and
- Input for noise on the input
source.
- Type of Sweep (same as for AC
analysis)
- Number of points... (same as for
AC analysis)
- Start Frequency (same as for AC
analysis)
- Stop Frequency (same as for AC
analysis)
- To use input noise you need to tell LTSpice where you
consider the 'input' in your circuit to be, for
example, if your voltage source is labelled
'V1'.
-
DC Transfer

-
Other types of
analysis There are other SPICE analyses possible.
Eventually I might get them in here, including
- parametric
- fourier
- sensitivity
-
Types of Sources
-
Voltage Sources A voltage
source can be configured in many possible ways. Right
clicking on one will bring up the "Independent Voltag
Source" window.
The options which show up in the window will change as the
function selected changes.
-
(none)

- This is your basic direct current voltage source
that simulates a simple battery and allows you to
specify the voltage value.
-
SINE

- A few things to note about the alternating
current source. First, there are two possible
analyses which can be done and so there are two sets
of parameters.
For an ac analysis, the parameters are:
- AC Amplitude which is the
peak value of the voltage.
- AC Phase which is the phase
angle of the voltage
For a transient analysis, the parameters are:
- DC offset is the DC offset
voltage. It should be set to zero if you need a
pure sinusoid.
- Amplitude is the undamped
amplitude of the sinusoid; i.e., the peak value
measured from zero no DC offset value.
- Freq is the frequency in Hz
of the sinusoid.
- Tdelay is the
time delay in seconds. Set this to zero for the
normal sinusoid.
- Theta is the damping factor.
(Not the phase angle!) Also set
this to zero for the normal sinusoid.
This is used to apply an exponential decay to the
sinusoid; theta is the decay constant in
1/seconds.
- PHI is the phase advance in
degrees. Set this to 90 if you need a cosine wave
form.
- Ncycles is the
number of cycles of the pulse that should happen.
Leave it as zero if you want ongoing pulses.
For this analysis, LTSpice takes it to be a
sine source, so if you want to simulate a cosine
wave you need to add (or subtract) a 90° phase
shift. Note that the phase angle if left
unspecified will be set by default to 0°
-
PULSE

- PULSE is often used for a transient simulation of
a circuit where we want to make it act like a square
wave source. It should never be used in a frequency
response study because LTSpice assumes it is in the
time domain, and therefore your probe plot will give
you inaccurate results.
- Vinitial is the
value when the pulse is not "on." So
for a square wave, the value when the wave is
'low'. This can be zero or negative as
required. For a pulsed current source, the units
would be "amps" instead of
"volts."
- Von is the value
when the pulse is fully turned 'on'. This
can also be zero or negative. (Obviously, V1 and
V2 should not be equal.) Again, the units would
be "amps" if this were a current
pulse.
- Tdelay is the
time delay. The default units are seconds. The
time delay may be zero, but not negative.
- Trise is the rise
time of the pulse. LTSpice allows this value to
be zero, but zero rise time may cause convergence
problems in some transient analysis simulations.
The default units are seconds.
- Tfall is the fall
time in seconds of the pulse.
- Ton is the pulse
width. This is the time in seconds that the pulse
is fully on.
- Tperiod is the
period and is the total time in seconds of the
pulse.
- Ncycles is the
number of cycles of the pulse that should happen.
Leave it as zero if you want ongoing pulses.
- This is a very important source for us because we
do a lot of work with the square wave on the wave
generator to see how various components and circuits
respond to it.
-
EXP

- The EXP type of source is actually a
- Note that the normal usage of this source type is
...
-
SFFM

- The SFFM (Single Frequency FM) type of source is
actually a
- Note that the normal usage of this source type is
....
-
PWL (Piece-Wise
Linear)

- The PWL source is a Piece Wise Linear function
that you can use to create a wave form consisting of
straight line segments drawn by linear interpolation
between points that you define. Since you can use as
many points as you want, you can create a very
complex wave form This source type can be a voltage
source or a current source.
- The syntax for this source type is flexible and
has several optional parameters. The required
parameters are two-dimensional points consisting of a
time value and a voltage (or current) value. There
can be many of these data pairs, but the time values
must be in ascending order, and the intervals between
time values need not be regular.
-
PWL File

- The PWL source is a Piece Wise Linear function
that ....
-
Current Sources
- For any of the previous discussed voltage sources,
there exist the exact source except that they produce
current. There is one thing that should be mentioned;
current sources in LTSpice get a little confusing. For
those current sources whose circuit symbol has an arrow,
you have to point the arrow in the direction of
conventionally flowing current. This applies to all
current sources, including AC and DC. Therefore placing
the current source in the circuit backwards with
seemingly incorrect polarities will give the correct
results.
- An interesting little feature under the
markers menu is the ability to add
markers to your circuit so you can see where the current
and voltage have imaginary values in the circuit, and the
phase of your source at any point in the circuit.
-
References and Links
-
Introduction to SwitcherCAD
(another name for LTSpice)
[PDF; Petr Kropik]
This has a good step-by-step guide, including information
about files and SPICE directives.
-
LTSpice introductory manual
(adding components)
[PDF; Aalborg University, October 2005]
This has useful information
about how to add libraries and models.
-
SPICE overview
(lots of detail)
[University of Pennsylvania]
Since this is about SPICE itself, rather than any
particular version, such as PSpice or LTSpice,
the information is very widely applicable.
-
LTSpice Getting Started Guide
(from the manufacturer)
[PDF; Linear Technology 2008]
This looks like it was adapted from a PowerPoint
presentation, so it has lots of screen shots.
-
SWCADIII (Another LTSpice tutorial)
(very detailed)
[PDF; Aalborg University]
This starts off with a lot about Switch Mode Power Supplies,
i.e. what Linear Technology designed it for, but gets into
lots of other stuff as well. (It's 257 pages long, so there
really is a lot of stuff there.
-
Intro to LTSpice
(lots of screen shots)
[PDF; South Dakota School of Mines and Technology]
Shorter than some of the others, but lots of screen
shots
-
Other kinds of analysis
(blog)
[ Chris Cross]
This includes an example of varying temperature for an analysis.
-
Other kinds of analysis
(blog)
[ Chris Cross]
This includes an example of using WAV files for input
and output of simulations.
-
Diagonal symbols
(for common components; resistor, capacitor, inductor, didode)
I think that sometimes it would be nice to be able to draw
things like bridge circuits in the way they're normally
shown, rather than with all components either horizontal
or vertical, so I created diagonal versions of the basic
components.
-
McGraw-Hill tutorial that includes a PowerPoint
presentation and lots of circuit files.
- For the more obscure questions you might have go right to
the source at Linear Technology©
http://www.linear.com/designtools/software/switchercad.jsp
**Most of the pictures and screen shots came from Linear
Technology© LTSpice version 2.24i
Not related to LTSpice specifically, but there is a
tutorial on using LaTeX to typeset technical documents
at
http://denethor.wlu.ca/latex