Electronics

Getting Started With LTspice For Mac

LTspice For Mac
Written by John Woolsey

Skill Level: Beginner

Table Of Contents

Introduction

This tutorial will teach you how to create a circuit schematic, perform a simulation, and view circuit waveforms in LTspice for Mac. A basic understanding of electronics is expected.

LTspice is an extremely valuable tool for designing and simulating analog based circuits. It enables you to discover and correct issues before actually building your circuits in hardware.

The LTspice schematic created for this tutorial is available on GitHub for your reference.

What Is Needed

  • macOS Based Computer

Background Information

While doing a circuit simulation in KiCad for another article (Performing A Circuit Simulation In KiCad) and getting some strange results, I wanted to verify those results with a different SPICE simulator. While doing some research on what packages were available, LTspice kept popping up. I decided to download it and give it a try. By the way, the strange KiCad results I was getting turned out to be user error.

LTspice is a high performance SPICE simulator, schematic capture, and waveform viewer with enhancements and models for making simulation of analog circuits easier. It was originally created by Linear Technology, hence the LT in its name, and was later acquired by Analog Devices who continues to support it. LTspice is known for being the most widely used free SPICE simulator in the industry.

I began searching for tutorials and getting started guides and kept finding they were all focused on the Windows version. The Mac version works much differently, so those resources didn’t really apply. I figured out how to get things working and thought I would share my knowledge with others also working on Macs.

Installing LTspice

Download and install the application from the LTspice homepage on Analog Devices’ website if you have not done so already.

Click the Download for Mac OS X 10.7+ button within the Download LTspice section of the homepage to download the LTspice.dmg file.

Download LTspice Section Of LTspice Homepage
Download LTspice Section Of LTspice Homepage

Double-click the downloaded dmg file to mount the volume. Double-click the LTspice Installation volume to open it.

LTspice Installation Volume Window
LTspice Installation Volume Window

Drag LTspice.app to the Applications folder from within the volume’s window to install the application. Close the open volume window. Unmount the volume by right-clicking (also known as control-clicking or secondary-clicking) the volume and selecting Eject “LTspice Installation”. Delete the LTspice.dmg file when done.

Opening LTspice For The First Time

Open the LTspice application by double-clicking the LTspice.app application within your /Applications folder. You should see a notification that it was an app downloaded from the internet and asking if you are sure you want to open it.

Internet Download Window For LTspice
Internet Download Window For LTspice

Click the Open button to continue opening the application. NOTE: Sometimes you may need to right-click the application and open it from the contextual menu if the system states it was not able to open the application due to it being downloaded from the internet or from an unidentified developer. Once opened, you will be presented with a welcome window asking how you want to proceed.

LTspice Welcome Window
LTspice Welcome Window

Upon initial launch of the LTspice application, it will automatically create the ~/Documents/LTspice folder where your LTspice files will be stored. It will also add an examples folder within the LTspice folder that contains Educational and test jigs example circuits. These same example circuits are also located in the /Applications/LTspice.app/Contents/examples folder.

Creating A Schematic

Let’s create a new circuit schematic by clicking the Start a new, blank Schematic button from the Welcome to LTspice window. A new schematic capture window will open with the title of Untitled. If you are familiar with LTspice on Windows, you will notice that the schematic capture window looks completely different. The Mac version contains only three icons in the toolbar versus a multitude of icons for the Windows version. Instead of primarily using toolbar based commands, LTspice for Mac focuses on the use of contextual menus for its commands. This means that you will right-click on or in the area of interest and select your command in the contextual menu that appears.

The circuit we are going to build is a simple small signal bipolar junction transistor (BJT) common emitter amplifier. The completed schematic will eventually look like the one shown below.

Completed Schematic
Completed Schematic

Let’s begin by placing the transistor into the circuit. Right-click somewhere in the schematic window and select Draft > Component from the contextual menu that pops up. A sub-window will appear with available components listed at the bottom. Enter npn in the search bar to locate the Bipolar NPN transistor component. This component uses a basic generalized simulation model for a BJT NPN transistor.

Schematic Component Selection Window
Schematic Component Selection Window

Click the OK button to select the component. The sub-window will disappear and the component’s symbol will follow the mouse cursor until you click again where you want the symbol placed in the schematic. Once placed, the component will remain available for additional placements until you press the escape (ESC) key. During placement, you will see the Type Ctrl-R to rotate/Ctrl-E to mirror text appear in the middle of the toolbar. This area will provide additional options available during placement and other commands. In this instance, we could have pressed CTRL-R for example to rotate the transistor symbol clockwise by 90 degrees before clicking for placement. Press the ESC key to end placement.

Schematic Component Placement
Schematic Component Placement

Let’s update the transistor model from the generalized model to one describing an actual transistor in common use. Right-click the transistor symbol and click the Pick new transistor button in the pop-up window that appears. Select the 2N2222 model and click OK. You should now see the 2N2222 model designation shown next to the transistor symbol.

Click and drag the mouse cursor to move the schematic around in the window. For zooming in and out, use two-finger pinching and spreading, or alternately, two-finger scrolling. You can even show grid dots to help you with placement by selecting View > Grid Dots from the contextual menu.

Next, let’s place our resistors in a similar fashion to the way we placed the transistor above (Draft > Component). This time, however, we will select the A resistor (res) component, keep clicking (placing resistors) until all resistors are placed, and then end our placement by pressing the ESC key. You should end up with five resistors (R1 through R5) placed generally in the same locations as those shown in the Completed Schematic above.

To change the value of a resistor, hover the mouse cursor over a resistor (you should see Right-click to edit R1. in the toolbar when hovering over R1) and then right-click on the resistor. A pop-up window appears that allows you to change the value. Update all resistor values to match those in the Completed Schematic shown above. For instance, enter 110k, with no spaces, for the value of R1. Note, you also have the option to change a resistor’s value by right-clicking on the value label (R). This option, along with the reference designator name (R1), also give you the capability of changing label parameters.

If you make a mistake, you can delete symbols by selecting Edit > Delete from the contextual menu (cursor changes to scissors) and then clicking on the component(s) you want to delete. You can also move symbols with Edit > Move. Make sure to press the ESC key when you are done.

Now add the two decoupling capacitors (cap/Capacitor) to the schematic. You will need to press CTRL-R before placement to rotate the capacitors to their preferred orientation. When updating the values, you only need to update the Capacitance[F] field and can ignore the others.

Next, we need to wire up our circuit. Select Draft > Wires from the contextual menu and connect the components by clicking at each point where you want to connect a wire, beginning and end of wires. Don’t forget to press ESC when done.

We also need to add some wire (net) labels that will help us during simulation later on. The orientation of the labels will change based on how they are connected to wires or components and are not user adjustable. For this reason, I like to add wire extensions (just additional wires) to the schematic where you want to place the labels. Although this is not required, I do believe it makes the schematic look nicer. Add the wire extensions to the schematic, if you so choose. Select Draft > Net Name to place net labels for the GND, Vcc (Input Port Type), Vin (Input Port Type), and Vout (Output Port Type) nets. The graphic representation for the net label in the associated pop-up window will change according to the Port Type selected and the net name entered in the text field.

Your circuit should now look very similar to the Completed Schematic shown above. Let’s save our work by selecting File > Save As from the main menu (not the contextual menu), entering amplifier for the file’s base name, leaving .asc as the extension, and saving the schematic to the LTspice directory within our Documents folder.

Preparing The Schematic For Simulation

Our circuit is looking good, but to run a simulation, we need to add power supplies and let LTspice know what type of simulation we want to perform. Our updated schematic will eventually look like the one shown below.

Schematic For Simulation
Schematic For Simulation

To add a voltage source, select and place (Draft > Component) a voltage/Voltage Source component in an empty area of the schematic and then change its DC value (right-click on the voltage component) to 20 volts. You can ignore the Series Resistance[Ω] field. Add a GND net name to its negative terminal and a Vcc (Output Port Type) net name to its positive terminal. These net names will virtually connect those named terminals to the same named terminals of our amplifier. This voltage source will supply DC power to the amplifier circuit.

Next, add an additional voltage source in the same fashion, but use Vin this time for the positive terminal name and don’t add a DC value. This voltage source will be the input of the amplifier and its value is a bit more complicated than the standard 20 volts DC used for the Vcc power supply. This one will be an AC voltage source. Right-click on the Vin voltage source component to edit its value. Instead of entering a DC value, click the Advanced button to give us more options. Select Sine(…) as the style, enter 0 for DC Offset[V], 1m for Amplitude[V], and 1k for Freq[Hz], and then click the OK button. This will make the Vin voltage source a 1 KHz sine wave with a 1 mV amplitude.

We could have just connected the positive terminals of the voltage sources to the appropriate connections on the amplifier circuit, but I wanted to illustrate the use of named nets for connecting across circuits and this is also a common practice for connecting power supplies.

We are done adding components and wiring up our schematic. It is now time to tell LTspice what kind of simulation we want to perform. To add a SPICE command, select Draft > Spice directive from the contextual menu, enter .op in the text box, click the OK button, and then click somewhere in the schematic to place the text. The .op directive requests that an Operating Point Analysis be performed. It is the simplest SPICE simulation that can be performed and will only look at the DC domain ignoring any AC attributes. It will provide us the various DC based node voltages and component currents in the circuit.

Your schematic should now look like the Schematic For Simulation shown above when complete. Save your schematic (File > Save) when you are happy with it.

Running A Simulation

Now that our schematic is all prepped, we can run our first simulation. Click the Run! button (running person icon at the far left of the toolbar). A blank (black) window will pop up with the title amplifier.raw. This is where the circuit waveforms will be displayed, but let’s ignore it for now. Right-click in a blank area within the schematic window and select View > SPICE Netlist from the contextual menu. A new window will appear with the title of amplifier.net. This is the SPICE circuit netlist file that is used as the basis for all SPICE circuit simulations. You could have just created this text file by hand and run the simulation without even creating a schematic, but a visual representation of the circuit is usually much more useful.

SPICE Circuit Netlist
SPICE Circuit Netlist

The text file creates a circuit by specifying the components (e.g. Q for transistors, R for resistors, C for capacitors, etc.), the nodes to which the component terminals are connected, and the component values. I won’t go into the details of the SPICE language, but for those of you interested, check out SPICE on Wikipedia or The Spice Page for more information. Traditionally, the .cir extension is used for SPICE circuit netlist files and this extension is also recognized by LTspice if you decide to create your circuits in this fashion.

Next, let’s take a look at the simulation output. This is accomplished by selecting View > SPICE Error Log from the contextual menu from within the schematic. A pop-up window (amplifier.log) will appear containing the log file. It will display the values calculated (simulated) for the various node voltages and component currents in the circuit. This file is also known as the simulation output log file as it can contain much more information than just possible errors.

SPICE Simulation Output/Error Log
SPICE Simulation Output/Error Log

Looking at the log’s contents, we see that values of Ic = 969 µA and Vce = 9.34 V were calculated for the collector current and collector to emitter voltage of the 2n2222 transistor. The line beginning with I(R3) tells us that the current flowing through resistor R3 is approximately 969 µA, which properly matches the value of Ic.

Note, if you happen to see unexpected negative currents, for instance through a resistor, you can rotate that component by 180 degrees in the schematic. This is done by pressing CTRL-R twice during a move (Edit > Move). You do not, however, have to make the rotations if you do not mind seeing the negative currents. It does not cause any issues with the simulation results.

Viewing Circuit Waveforms

Let’s change our focus to viewing circuit values in the waveform viewer. Make the schematic window active by clicking somewhere within the window. If you hover your cursor over a wire or component while the waveform viewer is visible, you will see the cursor change to either a probe or an ammeter respectively. Clicking a wire will display the voltage of the circuit node associated with that wire in the waveform viewer. Likewise, clicking a component will display the current (in the direction of the arrow in the cursor) through that component. The text in the middle of the toolbar will let you know what you are about to plot. For example, hovering the cursor (ammeter) over the R3 resistor will display the text Click to plot device current: I(R3).

Click on the R3 resistor and you should see a line appear in the waveform viewer just below the 1.0mA tick mark. This matches the value of Ic we saw previously in the SPICE log. Now click on the node at the collector of the transistor (just below R3) with the probe cursor. The value of V(N001) should now be plotted as well with the left axis showing voltage and the right axis showing current.

Waveform Viewer Showing V(N001) Voltage And I(R3) Current
Waveform Viewer Showing V(N001) Voltage And I(R3) Current

You can change the scale of an axis by hovering over it until the cursor turns into a ruler then right-clicking on the axis to manually update its values.

Plots are removed by selecting Edit > Delete from the contextual menu within the waveform viewer (cursor changes to scissors) and then clicking the labels, e.g. V(N001) and I(R3), you want to delete that are displayed above the plot. Press the ESC key when done. An alternative method is to click the probe or ammeter cursor in the schematic twice on a value of interest. This will remove all other plots and show you only that one.

You can even view the instantaneous power dissipation of a component by pressing the Option key (cursor changes from an ammeter to a thermometer in the schematic) before clicking on the component. Doing this for R1 provides a value of about 3.1 mW.

Another cool feature we can use is plotting the voltage difference across nets (nodes). Let’s do this to determine the value of Vce (Vc – Ve). Delete all of your current plots so that we have a clean slate. Hover the cursor over the collector voltage (the node just below R3) in the schematic until you see the probe. Click and hold the mouse button, drag the cursor (the cursor changes from red to gray) to the emitter voltage (the node just above R4), and then release the button when the cursor changes from gray to black. The plot title should be V(N001,N003) and the value plotted should be around 9.34 V, which matches the Vce value we saw previously in the log file.

Let’s now look at running a different type of simulation. A Transient Analysis simulation will look at a circuit’s behavior over time. To change the SPICE directive, right-click the mouse over the .op SPICE statement and an edit window will appear. Add an * and a space before the .op to comment out that directive. This still leaves it available for reference or later use. On the next line (Control-Return starts a new line), add .tran 100u 5m and then press the OK button when done. This specifies that a transient analysis simulation will be performed starting at time 0, ending at 5 ms, and using a step of 100 µs.

Final Schematic
Final Schematic

Close the existing waveform viewer window and click the Run! button again to start the new simulation. Probe the Vout node, then the Vin node, and you should see about five periods of both the input and output voltage waveforms.

Waveform Viewer Showing V(vout) And V(vin) Voltages
Waveform Viewer Showing V(vout) And V(vin) Voltages

The voltage gain of our amplifier design is expected to be

\(\large Voltage\ Gain = \frac{Vout}{Vin} = \frac{R3 \parallel R5}{R4} = \frac{R3 \cdot R5}{(R3 + R5) \cdot R4} = \frac{10 \cdot 100}{(10 + 100) \cdot 1} \approx 9\)

The Vin voltage source was specifically set to 1 mV. Let’s check Vout to see how close our design came to expectations. We see from looking at the graph that the peaks of the Vout voltage curve are around 9 mV. Zoom in for a closer look by dragging a box with your cursor over the peak. Overlay a plot grid by selecting View > Grid from the contextual menu. We should see the peaks topping out at about 8.8 mV. Not bad. You can zoom back out by selecting View > Zoom to Fit from the contextual menu or clicking the Zoom to Fit button at the far left of the toolbar.

You can save a plot settings file (.plt) by making the waveform viewer the active window and then selecting File > Save As from the main menu (not the contextual menu). This will save the current waveform view such that this view will automatically load the next time this type of simulation is run. You can test it out by closing the waveform viewer and rerunning the simulation. Your view should look exactly the same when the waveform viewer reappears.

Wrapping Up

If you happen to view the SPICE log file after running simulations other than the basic Operating Point Analysis (.op), you will not see the DC domain data that we viewed earlier. This data is only available (within LTspice) when running an operating point analysis. It is sometimes available when using other SPICE simulators.

When exiting the application, all files that are easily created (e.g. .net, .log, etc.) are automatically deleted, leaving only your pertinent files (.e.g. .asc, .plt, etc.).

Exit the application by selecting LTspice > Quit LTspice from the main menu.

Additional Resources

The following is a list of resources you may find helpful.

Summary

In this tutorial, we learned how to use LTspice For Mac to

  • build a simple small signal BJT common emitter amplifier in the schematic editor,
  • prepare the schematic for simulation by adding voltage sources and SPICE directives,
  • perform simple Operating Point Analysis and Transient Analysis simulations,
  • view SPICE netlist and output log files, and
  • view various circuit data waveforms in the waveform viewer.

The final schematic used for this tutorial is available on GitHub.

Thank you for joining me along this journey and I hope you enjoyed the experience. Please feel free to share your thoughts in the comments section below.

About the author

John Woolsey

John is an electrical engineer who loves science, math, and technology and teaching it to others even more.
 
He knew he wanted to work with electronics from an early age, building his first robot when he was in 8th grade. His first computer was a Timex/Sinclair 2068 followed by the Tandy 1000 TL (aka really old stuff).
 
He put himself through college (The University of Texas at Austin) by working at Motorola where he worked for many years afterward in the Semiconductor Products Sector in Research and Development.
 
John started developing mobile app software in 2010 for himself and for other companies. He has also taught programming to kids for summer school and enjoyed years of judging kids science projects at the Austin Energy Regional Science Festival.
 
Electronics, software, and teaching all culminate in his new venture to learn, make, and teach others via the Woolsey Workshop website.

58 Comments

  • Thanks for this detailed and clear step by step tutorial. The LTSpice online help should link to this page for Getting Started!

  • Hi John. Thanks for doing this. I have a Kicad 5 project that I would like to simulate. I have tied to get Kicad to do simulations but just have not had much luck, even with your previous article. Is there a way to import a Kicad schematic into LTS? Or, a way to get LTS to work inside of Kicad using it’s libraries? Where do I find info on modifying LTS libs to use in Kicad as you did? I know that’s a lot of questions. Maybe enough for another article. I would like to use one app that has Kicad’s easy schematic capture (and layout) and good integrated simulation too.

    • I am not aware of any importing/exporting capabilities between the two applications. The LTspice modifications I made were just based on trial and error; trying to load them and see what happened. The model modifications I made in the KiCAD article were just removing LTspice specific parameters that were not recognized. Nothing special was done.

  • Hello John,
    Just wanted to thank you for a great introduction to LTspice on Mac. It’s still an awkward interface IMHO, but after following your tutorial here it makes a bit more sense now.

    I’m sure you’re busy, but perhaps consider another tutorial showing how useful the `.meas` directive in LTspice can be.

  • Hello again John 🙂 As you’ve guessed, I have a question I hope you can help with.

    The question is how to format data labels in a schematic. In the Windoze version, one can rt-clk the label, and get a dialog to add the “round” declarations. Unfortunately that doesn’t seem to work in the Mac version.

    I’ve posted this question (w/ details & screenshots) here (https://www.eevblog.com/forum/projects/formatting-op-data-labels-in-ltspice-for-mac/), but no answer as yet. Do you know how to do this?

  • Hi John,

    I´ve got a nasty problem, right at starting with LTSpice on my MacBook Air Mac OS 10.15.7. Catalina.
    When I try a right-klick (CTRL+klick on the mac), the menue to rename your component or f.e. replace the general npn-symbol by “2N2222” does not occur.

    It´s such a stupid problem, but it didn´t work.

    Do you have an idea, what the problem is?

    • Make sure to right-click on the actual transistor symbol, not the Q1 or npn labels. When hovering over the symbol, the cursor should change to a hand with its index finger pointing to the left. When you see that cursor, that is the time to right-click.

      Let me know if that works for you. If not, we will try something else.

  • Hi John,

    tks for your instant reply, yesterday.

    Let me share my >lessons learned< on that case with you and the community. It´s funny …

    Using a MacBookAir (Mac OS 10.15.7 Catalina) and an older iMac (10.11. El Capitan) my experience is, that you do not get the right-click (CONTROL&mouseclick) to show the submenues to choose f.e. a transistor-type (2N2222 instead of simply "npn") or to rename something.

    This sounds even more crazy, as the same "right-click" is working on other functions 🙂

    This solution is simple:
    You need a USB-mouse with two separate switches – one for left-click, one for right-click.

    That´s working perfect. Don´t ask my why.

  • Hi John,

    a lot of fun – great stuff! A perfect explanation of LTspice, motivating me to learn more and more. I´m very happy with your page.

    Thank you – greetings from Heidelberg/ Germany
    Yours Michael

  • Hello John,

    I hope, you had a nice xmas and you are looking forward to an exciting year 2021.

    Meanwhile I was quite busy learning LTSpice by means of a university script, based on WIN.

    Until today I figured everything out, but now I’m stuck by a typical WINMac problem. When trying to generate a TL072 OpAmp, I built the symbol as TL072.asy, downloaded the Spice-definition and stored it into a TL072.sub.

    Everything looks good (as shown in the script), but there is a problem: I do not find the “instname” in the ATTRIBUTE TABLE. In the symbol, it shows an “Unnn” placeholder as a counter for your parts. “U1” would be your first OpAmp f.e. But I do not find this counter and I guess, that’s the mess.

    The effect is an error message: “unknown symbol syntax version “0” .. and the effect when trying to use it, is that the pulldown-list with my parts is completely blocked. There is no chance to select even a resistor.

    When I shift the TL072.asy to an other directory, LTSpice starts working again (but without the TL072). I’ve to restart LTSpice before.

    I searched the web for special mac problems and found a lot. But nothing about this special issue.

    Do you have an idea what’s wrong and how to fix it?

    Kind regards
    Michael

  • Hello John,

    ok – I managed it. By comparing the asy-textfiles of existing (and properly working) OpAmps with my model, I checked it line per line using my text editor. Crazy! By carefully changing, trying to understand and trying again, it was working at last – and with the expected result.

    The component list is no longer blocked.

    But anyway: I still have not found a command to manage it properly. I’m still using this crude “text editing” method ;-( It´s not cool, but working.

    If you have an idea for me, it would be great.

    Thanks and kind regards
    Michael

    • Glad to hear you got it working. I believe what you are looking for is described on the help page located at Main Menu > Help > LTspice Help > Frequently Asked Questions (FAQ) > Third-party Models. I tested it with the TL072 SUBCKT downloaded from the LTwiki and it seemed to work fine.

    • I think i may have solution. Go to the library where symbols are saved and open symball wich is not opening in lt spice then save it muliple time by command+s and now try to open the symbol.

  • Hello John,

    thank you for your very helpful response. My TL072 is working perfect now.
    With the FAQs an help of LTwiki it was easy, to fix my other models 🙂

    Kind regards
    Michael

  • Hi John,

    a happy New Year 2021. I hope, you had a good start 🙂

    A strange case blocked my effort to simulate a ” lossy transmission line” with the ltline-command (using my tutorial).

    First I define the properties of the RG58-cable:

    .model RG58 LTRA(len=100 R=1.5 L=250n C=100p)

    and store it on my MacBook in … LIB>SUB … as shown in my WINDOWS-Tutorial. Everything lookes fine. But when starting the simulation, LTSpice does not find the file RG58.mod
    But it´s in the SUB-folder and the .mod is correct (no … “txt”-ending or so).

    As you know, “mod” is used for sound-files and my MacBook shows at “open with xxx-program” a sound-app (VLC in my case).

    So I changed the properties of this file by defining “open with LTSpice-program”. Changing works fine.

    It´s no problem to open the file, using LTSpice and LTSpice shows the model-definition, as entered before. But when I start the simulation (there is an .include RG58.mod in it and in the asy-file of the ltline, there is an entry for RG58 at value, value2 and for the spice-model there is: “RG58.mod”) – it comes up with the same error message.

    Do you have any idea, how to fix my problem?

    Kind regards
    Michael

    • I am not exactly sure I understand your problem, but I will offer a couple of suggestions to try.
      – Since the .model statement is so small, try adding it directly to your schematic.
      – If you specifically one to “include” the model as a separate file, try naming the file with a .lib extension and using the full path to the file in your .include statement.

  • Hi John,

    Great tutorial, really helpful to see how to run things on Mac!

    I am just struggling with viewing SPICE netlist and Errorlist

    When the black window pops up after I hit run; I right click and go to View but there’s no options for either.

    I’m very new to all this! Thanks for your time!

    • Glad to hear you liked the article. It looks like you are right-clicking in the waveform viewer window. The options you are looking for are available in the schematic window. Give that a try.

    • Sorry, I don’t. I do see that capability is available on the Windows side though. On the Mac, perhaps taking a screenshot (shift-command-5) or writing to PDF (File > Print > PDF) would work for you.

  • Hello, I’m new to LTspice and thank you for your great tutorial.
    I just have another question that I couldn’t find solution anywhere else. I’m building a symbol and linking it to a third-party (IR2103), I’ve been following the step for Windows (make new symbols, change .lib to .sub, attribute table, save in the same directory).
    However I got stuck when I try to use the symbol I made, I couldn’t find the directory (I saved on desktop). And when I try opening the symbol, it showed “Unknown symbol syntax version “0”.

    Do you have any idea about this? Thank you.

    • I have only limited experience in updating models and subcircuits in LTspice. Check out the help page located at Main Menu > Help > LTspice Help > Frequently Asked Questions (FAQ) > Third-party Models; hopefully it will point you in the right direction. Also, try putting your subcircuit file in the same directory as your schematic and point to it directly with your .include statement. I have also been able to put a subcircuit in the same directory hierarchy with .include lib/sub/TL072.sub.

  • Hi, I am new to LT Spice, and a complete beginner, so pretend I am the dumbest person you have ever met.

    I was trying to follow along, and a couple of things I shold mention.

    1. MACS HAVE ONLYT ONE MOUSE BUTTON. It took me some time to realize how to do that. I used CTRL-click and got the popup eventually, but asking people to right click is *really* confusing.

    2. I tried right clicking and I was just trying to place a simple resistor. What I got was a menu that had several options, but none seem to involve changing the value of the resistor. I see Run, Halt, View, Edit, Draft, Draw, Hierarchy, but none of the menus or their submenus appears to have a way to enter a value for the resistor. Is there some way to access the or even recognize the place to enter resistor values? In the component menus I get a long list of components, but there’s nowhere to enter the value. This happens even when it says at the top of the window “Right click to edit value of R1” — there doesn’t seem to be anywhere to enter a number. Am I missing something basic here?

    Any help would be appreciated.

    • Sorry to hear you are having difficulty.

      The right-clicking thing is very confusing! I guess the reason people still use that term on macOS is due to history. Control-click is one of the typical ways that macOS users initiate a right-click. The other is by pressing and holding two fingers down on the trackpad. I do mention the control-click, but it is within the Installing LTspice section.

      As for the resistor value, once a resistor is placed, if you hover your cursor over the R representing the resistor’s value, you should see Right-click to edit “R”, the value of R1 assuming R1 is your resistor’s identifier. Right-click on it (I know, I know, control-click) and you should see a sub-window pop up with R shown in a text field. That is where you would change R to the resistor’s actual value, i.e. 110k.

      You might also want to check out the LTspice For Mac Cheatsheet. It gives you a quick summary of how to initiate many of the typical LTspice commands.

      I hope that helps. Let me know if you’re still stuck and we can try a different path.

  • Hi, I’m new in lt spice too. I’m using mac OS and I can’t find to view option for average or rms value of a waveform. When I right clicked on a measure label there is no any option to view. Is there a shortcut or different way to view average or rms value of a waveform in mac version?

  • Wow, thank you. There’s precious little on LTSpice for Macintosh on the ‘net, and this was extremely helpful. I wish they’d used the tool palette interface like the one under Windows instead of the extremely cumbersome contextual-click paradigm.

    • You are very welcome!

      The contextual menus can be a bit more difficult to learn, but the LTspice documentation states that once you get used to it, you can actually create your schematics quicker than the old way.

  • Excellent tutorial! I’m thrilled I found your website, I was really struggling to understand how to use the Mac version. Thanks!

  • Hello John,
    Thank you so so much for this tutorial ! Your logic and instructions are so clear and no-nonsense. I am over 60 and am taking a class of electrical engineering with college kids. Half-way through the semester, I was still not able to use LTspice in my Mac. My TA told me that LTspice is one of the easiest software to learn, “Search in websites and you should be able to learn it in half an hour”. I did search but was frustrated. I do not even know why my interface looks so different to begin with ! Thank you from the bottom of my heart.

    • You are very welcome. I do not agree with your TA that LTspice is one of the easiest pieces of software to learn, even for engineers. It does not help that almost all of the tutorials written are for Windows that uses a completely different interaction process than the Mac version. I’m very glad you found my tutorial and that it was helpful to you. This is exactly the reason that I wrote it. Thank you for sharing your experience.

  • hey! this has been helpful 🙂
    but can someone tell me how to get that error log thing for AC analysis when i use .ac??
    in windows it directly shows up when run is clicked but how to do the same in mac??plss help.

    • I’m glad you found the tutorial helpful.

      To show the SPICE error log, Control-Click in an empty area of the schematic to view the main contextual menu, then select View > SPICE Error Log from that menu. Please note that operating point values will not be shown with an AC (.ac) analysis, only with a DC (.op) analysis.

  • Indeed, nice tutorial! All steps carefully described!

    Would you mind if I translate this content to Portuguese(BR) and share the reference link with all credits to my students?

    • I would not mind at all. I write these tutorials to help people learn about electronics and am happy to hear that they find them useful. Thank you for asking.

  • good day! already check
    this link (offsite) – can’t start on MacOSX 10.9.5 Mavericks

    this error on command string:
    box$ ./LTspice
    2023-03-28 02:51:09.280 LTspice[10564:507] *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘data parameter is nil’
    *** First throw call stack:
    (
    0 CoreFoundation 0x00007fff8ced125c __exceptionPreprocess + 172
    1 libobjc.A.dylib 0x00007fff8b4c0e75 objc_exception_throw + 43
    2 CoreFoundation 0x00007fff8ced110c +[NSException raise:format:] + 204
    3 Foundation 0x00007fff89bdc007 +[NSJSONSerialization JSONObjectWithData:options:error:] + 67
    4 LTspice 0x000000010b602e11 LTspice + 11793
    5 LTspice 0x000000010b603a97 LTspice + 14999
    6 libdyld.dylib 0x00007fff910b75fd start + 1
    )
    libc++abi.dylib: terminating with uncaught exception of type NSException
    Abort trap: 6

  • Hi,

    Is someone enough kind to explain me how to add more models into LTspice For Mac…
    Indeed, there’s only a lot of instructions for windows users and not so many for Mac.

    https://ltwiki.org/index.php?title=Components_Library_and_Circuits#Opamps

    Here it seems we can download a lot of models but I tried to import those files into application_support/lib/…and obviously it broke everything…then has someone succeeded to import more models into LTSpice for Mac ?

    Thanks for helping me out if ever … 😉

    • I agree. It is very difficult to find information for LTspice For Mac.

      There is some documentation on this topic within the LTspice app at Main Menu > Help > LTspice Help > Frequently Asked Questions > Third-party Models and I also included some minimal instructions in the LTspice For Mac Cheatsheet.

      Hopefully, they will provide you with some assistance.

  • I s’pose that’s ‘as it should be’ since Apple is very stingy with documentation for the Mac 🙂

    (Sorry – could not resist that)

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.