I don’t understand this error at all. I’ve checked my symbol, my model, etc. I have MP4 nested down 2 symbols. At top level, it’s inside X2. X2 has X1 inside, and MP4 is inside X1, along with other PMOS with the same model.
Your BSS84 is a .subckt or .model in mos.txt?
Symbol Type MP or MN only supports .model statement.
You need Symbol Type X for .subckt netlist.
OR
Double-check your mos.txt. If BSS84 is a .model, does it contain the parameter pchan
? If you use Symbol Type MP to call an n-channel .model, you may encounter an error “… has the wrong MOSFET polarity, for instance …”. But messing up a library is strange, as DSS84, which you commonly find, should have keyword pchan in it : Standard.mos - LTwiki-Wiki for LTspice
You can see I clicked on MP4 symbol to get the symbol properties, and it points to a model/mos.txt model file. It is not a subcircuit. And in the mos.txt file, I have this:
.model BSS84 PMOS (
- VTO = -2.1
- KP = 0.2
- BV = 50
- RG = 3)
Cannot find a way to replicate the problem. I setup a two level of parent to call the MP symbol with a mos.txt library with .model BSS84 PMOS VTO = -2.1 KP = 0.2 BV = 50 RG = 3
, and simulation can still run properly.
Download all these files and run “Parent.Parent.mos.qsch” and no error return.
Parent.Parent.mos.qsch (2.2 KB)
Parent.mos.qsch (593 Bytes)
mos.qsch (1.1 KB)
mos.txt (52 Bytes)