Adding Library Component in LTspice. PCB Layout, EDA & Simulations: 6: Oct 11, 2020: Adding transistor library to LTSpice: Software & IDEs: 21: Jul 27, 2020: LTSpice XVII - could not open library file 'XXXX.cir' - PCB Layout, EDA & Simulations: 9: Apr 9, 2020: H: I was looking for a cmos logic library for LTSpice XVII. Digital Design: 6: Mar. LT spice uses a new directory, stored in documents LTspiceXVII lib (not in C: program files lt spice lib). Make sure you modify the files there and not in the program directory which has a dual structure, but LT spice uses the files stored in documents folder. 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. Here are three different methods. Method 1: Modify Libraries This method makes sense if you are working on your own computer, where you can update your own libraries and use them again.
LTspice comes with a wide range of symbols. You can create new symbols, both as functional or non-function parts or even editthe existing symbols. New symbols are often contributed to the yahoo LTspice user group so it is worth checking first to see if there is already a suitable symbol.
LTSpice Library Files
If you are running Microsoft windows then the library files in LTSpice are stored at C:Program FilesLTCLTspiceIVlib
Ltspice Add Model Component Library
The 'lib' folder, (screenshot below) contains 3 sub-folders called sym, lib, and sub. You can bookmark this location for futureuse. Click Favorites and add a suitable name.Folder Details
cmp Contains standard model data for passive components, diodes, transistors, FET's etc
sub Contains subcircuit data. Files are ASCII text and end in .mod .sub or .lib
sym Contains circuit symbols ending in extension .asy
Creating a New (Non-Functioning) Schematic Symbol
Please note, all subsequent screenshots are taken from LTspice running on Linux. Appearence may look slightly different, but allsteps are the same, independent of the platform used.
The example below shows how to create a non-functional 'meter symbol. Begin by starting LTspice and click on File, New Symbol:
In Figure 1 the circle with the cross is the symbol origin. When inserting the symbol into a schematic the symbol will be rotated about the origin.Note If the first pin is fixed to the origin, then the symbol will be rotated around this point, this is useful for any component that is drawn at 45 °, as they can be rotated to form a bridge.
Ltspice Mac Add Library
The first pin is given netlist number 1. The label of the pin can be set to any name. I could have chosen '+' and '-' but as thiscomponent is non-functional, the default name is 'A'. If creating a symbol for a part that has subcircuit data, then the order of the pins must follow the same order as the subcircuit data. The pin label can be displayed at the top, bottom, left or right of the pin. The text can also be displayed vertically or not shown at all.Now a connecting line is drawn between the first pin and the circle. It is easier to use the zoom function to make more accurateplacement of lines. The zoom function is the magnifying glass with a '+' symbol, just below the view menu.The symbol is now complete. As the symbol is not included with LTspice it is advisable to make a backup of your work.I just create an LTspice folder, with sub-folders called my_symbols, my_ccts. To save the symbol, go to the file menuand choose 'Save As' (figure 15). Use a descriptive name, and all symbols in LTspice must end with the extension .asy
Adding your symbol into LTspice
To include your symbol in LTspice, save it in the LTspice library. For windows users the location will be
C:Program FilesLTCLTspiceIVlibsym The image above shows location C:Program FilesLTCLTspiceIVlib, clicking sym folder contains all the schematicsymbols.
Warning Each symbol MUST have a unique name, otherwise the existing symbol will be replaced.
Also note: If you create a schematic using a custom symbol and send it to someone else, thenyou MUST also include the new symbol with the schematic. If you forget, then the missing symbol will show as empty space.
Closing LTspice, (if open) and restarting will cause the program to read the new symbols. Pressing F2 brings up the componentbrowser, and your new symbol should now be available for use.
A note about Drawing Scale
After designing a new symbol, you may find that it is disproportionate large or smaller than other components. There is no way to scale components, so it will need to be redrawn. However, if you copy an existing symbol from the LTspice symbol directory,and rename it, you can use the symbol elements, (circles, lines, rectangles etc) as a guide, to create your new component.
Creating New Symbols with Spice Prefix Data in LTspice
In this example I have drawn a new symbol for an electrolytic capacitor. First the edit attributes menu is accessed, either viathe edit menu (screenshot below) or by pressing Ctrl+AThe edit attributes table is then displayed with the symbol (figure 16). The spice prefix (prefix) determines the type ofcircuit element.
Entering 'C' in the prefix field, associates the symbol with a capacitor, entering L associaties the symbol with an inductor.The value field sets the default value. A list of spice prefix characters is shown in the table below :
Spice Prefix TableA | XSpice Model |
B | Nonlinear Dependent Voltage Sources |
C | Capacitors |
D | Junction Diodes |
D | Zener Diodes |
E | Linear Voltage-Controlled Voltage Sources |
F | Linear Current-Controlled Current Sources |
G | Linear Voltage-Controlled Current Sources |
H | Linear Current-Controlled Voltage Sources |
I | Independent Current Sources |
J | JFETs |
K | Coupled (Mutual) Inductors |
L | Inductors |
M | MOSFETs |
O | Lossy Transmission Lines |
Q | Bipolar Junction Transistors |
R | Resistors |
S | Voltage Controlled Switches |
T | Lossless Transmission Lines |
U | Uniform Distributed RC Lines (Lossy) |
V | Independent Voltage Sources |
W | Current Controlled Switches |
X | Subcircuits |
Z | MESFETs (GaAs FETs) |
Setting a default value. If not changed, the capacitor will be assigned the value 'C'. Each component will have to be changedon the schematic. However you can assign a default value which will appear on the schematic. Choosing a popular value such as100uF, will set every new capacitor symbol to 100uF. This may save time drawing a schematic, as you only have to alter non 100uFcapacitors. To set a default value, either right the value on the symbol (see figure 17), or bring up the edit attributes window,by pressing ctrl+A and change the value field.Save the component. If you choose a name like cap2.asy, you can have the choice of using existing symbols in LTspice or yournew symbols. Once again the component needs to be saved in LTspice library files under symbols. The location is:
C:Program FilesLTCLTspiceIVlibsym ()for windows users).
/home/username/.wine/drive_c/Program Files/LTC/LTspiceIV/lib/sym
Windows explorer, nautilus or dolphin (linux) allow all the symbols to be browsed. Figure 18 shows the components displayedby konqueror file manager.Using your symbol in new schematics
Closing LTspice, (if open) and restarting will cause the program to read the new symbols. Pressing F2 brings up the componentbrowser, and your new symbol should now be available for use. If you assigned a default value, then the component will be displayed with this value. It can be changed of course, with a right click.
New Symbols for LTSpice
Ltspice Import Library
I have created a range of new symbols, that I use in Circuit Exchange, shown in the image below:The top two lines, are schematic only symbols and non-functional. Starting on the third line, all capacitors havespice prefix character C and are therefore functional, as this the 45° diode symbol. F1 is a non-functional fusesymbol. The bottom line is a Norton current generator, followed by a European symbol for a resistive preset.The last 4 symbols are SPST switch, SPDT switch, NO push button, and NC closed push button.
Download My New Symbols
You may use my new symbols, in your own work. They are free to use for both commercial and non-commercial use. If you havea website, you may want to link back to this page, as I often create new components.
Click hereto download my symbols.
As stated previously, if you plan to share any schematics that use new symbols, then you must also include them with theschematic. The recommended method by the LTSpice User group is to create separate directories for every circuit. The symbols, subcircuit data, and new models can then be stored with the schematic.
Shell Script for linux Users
The following bash script is designed to make life easier when adding newcomponents to LTspice. It is a simple shell script that can be modifiedand places all component, library, model and subcircuit files into therelevant directory in LTspice. My download location is/media/share/electronics/ltspice Just replace this with yourdownload location for your system.
Transfer shell script
Just download the script and execute it with ./transfer.sh