1
\$\begingroup\$

I made a simple inverter INV.asc and associated symbol file INV.asy, which I am using in my top-level test file, Top.asc. I would like to store my INV symbols in a subfolder (or somewhere else). I tried to do this by adding the sub-folder res to my path (both Symbol & Library search paths), which lists the component in the component select window, and I can place it in the top-level schematic; however, when I do this, I get the error that LTSpice "cannot find schematic". This is despite that, when I right-click on the part in my top-level, I can select "Open Schematic" and it opens fine.

I'm okay with doing it a different way; my end goal is to just get all of my individual parts in their own folder, so that my top-level schematics don't get cluttered with my own parts. How can I do this?

Link to the files: https://drive.google.com/file/d/1c5If1WNBPw-w9pMh5-f55B_HYko3VJTw/view?usp=sharing

UPDATE 1/23/2020 1:41pm I moved the .asy and .asc files to my LTSpice\lib\sym\Alex folder, but I still get the error, even after closing/reopening LT. I deleted the part from the Top and re-added using the one in my LT folder. Screenshot of component pointing to path.

I still get the error: inv not found

\$\endgroup\$
3
  • \$\begingroup\$ Alex, did you completely exit LTspice and then re-start it? Or just you just "dig in" and try things without that re-start? (It matters, because LTspice appears to load things up during start, only. \$\endgroup\$
    – jonk
    Commented Jan 23, 2020 at 1:24
  • \$\begingroup\$ I did this some time ago to add an external library; see electronics.stackexchange.com/questions/246406/… \$\endgroup\$ Commented Jan 23, 2020 at 10:08
  • \$\begingroup\$ I updated the post with both of your suggestions, but that didn't work... \$\endgroup\$
    – Alex G
    Commented Jan 23, 2020 at 21:45

1 Answer 1

1
\$\begingroup\$

Hierarchical symbols are made so that they reside in the same place as the top level schematic. What you are doing is you move them elsewhere, LTspice can't see them where they are supposed to be, and you get errors.

OTOH, if you create regular symbols (not hierarchical), then you can move them around and set a custom path in the settings, but you'll still have to pack them together with the rest of the schematic in case you need to move/send/etc your project.

TLDR: Hierarchical symbols need to be in the same folder, regular symbols don't. It's up to the user to make the choice.

\$\endgroup\$
2
  • \$\begingroup\$ Interesting. I feel like I understand hierarchical symbols, but how are regular symbols different? Can I accomplish the same things with both? \$\endgroup\$
    – Alex G
    Commented Jan 24, 2020 at 23:20
  • 1
    \$\begingroup\$ Hierarchical symbols are meant to load schematics (.asc), as opposed to models or libraries (.model or .subckt definitions). Hierarchical means you have complete control over all of the schematic, while libraries/models means you have only partial control (you are working with netlists, SPICE code), or none (if they are encrypted). It's a matter of convenience. Usually you work with hierarchical until you "get it right", then create a model or a subcircuit out of the hierarchical part(s), for compactness/availability to other schematics, or portability, or the ability to encrypt. \$\endgroup\$ Commented Jan 25, 2020 at 14:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.