Ltspice Add Library

Posted on  by 

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.

Please Note: All the informationpresented here is my own work and not from Linear Technology. This advice does not replace the information given by LinearTechnology, the LTWiki or the Yahoo LTspice User group. Please also read my sites general disclaimer.
Creating New Symbols
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
cmpLibrary 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
LibraryCreating 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.
Figure 2
Now we'll add a circle (figure 2). All the drawing elements also have shortcut keys, pressing 'c' will draw a circle. Click theleft mouse button to start the circle, move the mouse to size the circle and left click again to complete the circle. The two dots or 'anchor points', show where the element starts and ends.A right mouse click shows the edit functions. As shown in figure 3, each function also has a shortcut key, F5 is the delete function, and F9 is undo.
Figure 4
I have deliberately created an unwanted line. To remove the line in Figure 4, press F5 or right click and select delete, thecursor will change to a pair of scissors. Click on the line, not red anchor points, to delete it.Now we'll add a pin to our symbol. From the edit menu, select Add Pin/Port or press 'p'. Left click where you want the first pinto appear. I have clicked over the origin and a sqaure box is drawn around the pin (Figure 5).
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.
Figure 6

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.
Figure 8
Now the second line is added. However because it is the same length as previous line, we can use a shortcut. Press F6 or use theedit menu and click duplicate. The cursor changes to two pieces of paper (a copy) and then click over the previous line segment.The line is now drawn in black as shown in figure 8 and follows the mouse.When the segment is aligned below the previous line, left click, and it will be permanently attached. If you make a mistake pressF5 or delete and either copy again, or draw a new line. The grid helps to make accurate placement. Once positioned, use the editmenu or press 'p' and add another pin, see figure 9.
Figure 10
The second pin can now be labelled, as before. I chose the default name of 'B' and chose not to display the pin.Now it's time to create a pointer for the meter. Just chose 'L' or select line from the edit menu and place a new lineinside the circle (figure 11). If you dont like its appearance, delete it and draw another.
Figure 12
Now create an arrow head for the pointer. Add a single line with 3 sections, or just create 3 small separate line segments,as shown in figure 12 above.The meter symbol is now complete. When displayed in a schematic it may be useful to include a reference to the symbol.Meters are sometimes displayed as M1 for meter 1, M2 if there is a second meter in the circuit. To create attributes, firstclick the edit menu, then the attributes window will appear as shown in figure 13. The 'prefix' attribute will set the componentreference. Double click the value field, then enter 'M'. You can enter a description as well if desired.
Figure 14
Click ok in the attributes box and the symbol prefix can now be clicked in position, shown as 'Mnnn' in figure 14. Thefirst use of the symbol in a schematic will be assigned M1, subsequent placements will be assigned M2, and so on. Theposition of the prefix can also be moved, just click the edit menu and choose move or press F7 to move to a new position.

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.

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.Mac
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 Table
AXSpice Model
BNonlinear Dependent Voltage Sources
CCapacitors
DJunction Diodes
DZener Diodes
ELinear Voltage-Controlled Voltage Sources
FLinear Current-Controlled Current Sources
GLinear Voltage-Controlled Current Sources
HLinear Current-Controlled Voltage Sources
IIndependent Current Sources
JJFETs
KCoupled (Mutual) Inductors
LInductors
MMOSFETs
OLossy Transmission Lines
QBipolar Junction Transistors
RResistors
SVoltage Controlled Switches
TLossless Transmission Lines
UUniform Distributed RC Lines (Lossy)
VIndependent Voltage Sources
WCurrent Controlled Switches
XSubcircuits
ZMESFETs (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).
Figure 18
If you run LTspice from linux then the location will be :
/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

Coments are closed