Getting mad about Eagle

"That" = Adding the part to the board with the schematic window closed.

I wouldn't expect it to add that part to the schematic with that window closed, and of course it didn't. But that was apparently the only way to add it to the board. I wonder if there's a way to make the schematic consistent with the board - I really hate loose ends like that.

Well, okay, now it's at least willing to admit that the board and schematic are not consistent (and of course they aren't). How about a little hint about how to make them consistent?

I tried it again. I dropped a SCREWTERMINAL-3.5MM-4 onto my board, with the schematic window closed. It allowed me to position it in the + quadrant. When I used the button on the board window to open the schematic, I don't get any error messages.

On the other hand, I don't see anything in the schematic that wasn't there before.

Maybe someone else knows how to make this work properly.

I just tried opening the Sparkfun library, copying the part as a "package" and saving it as a "device". Didn't work, and I have a hard time believing that's what we have to do to use the packages in the library.

Shoot. I'd hoped to send out this board today, but I just spent almost two hours trying to add one simple part. This is nuts.

AHA! Got it!

There's an equivalent device under "MO-2 Header 2" up in the list that DOES appear when you try to add in a schematic window. That one works just fine.

Apparently the "SCREWTERMINAL" package is just there to tease us. :slight_smile:

I think this was mainly a confusion of terminology.

Symbol: Stylized functional drawing of a part, designed for straightforward design of a circuit. May not look anything like the actual part, pins may be arranged out of order to group similar functions, etc. Can only be used in a schematic.

Package: Accurate drawing of a PCB pattern for a physical part. May not look exactly like the real part, but contains the pads and other elements necessary to implement the part on a PCB. Can only be used in a board.

Device: contain information about a functional element. Always contains a symbol, usually contains one or more packages. The connections between the symbol pins and the package pads are defined for each package style. When you add a device to a schematic, it uses the symbol; if you have back-annotation working correctly then the package will appear on the board.

Great information, macegr. I've thought that something like that must be what was going on.

The items in the sparkfun library are displayed with two different symbols. Are they devices and packages? Devices and symbols?

What kinds (of properly defined) devices would not (need to) include a package?

Some of this is confusion of "style."
My tendency is to create a schematic symbol for a generic "2 pin connector" and then to associate all sorts of odd packages including mail and female, various terminations and sizes, all with that same symbol. But I've seen parts libraries that go and define the schematic symbol as a specific manufacturer's part number as well, at which point it only has a single package. I have suspected that this is due to the different requirements of professionals (who want accurate parts list that match the stockroom and purchasing's "list of approved vendors" and so on) and hobbyists ("let's see what I've got in my junk drawer.") I've also suspected that it's due to the age of some of the libraries that are floating around... Probably some of each.

Anyway, it looks like Sparkfun's library is set up in my style, at least WRT the connectors. They have an M02
2-pin connector symbol for the schematics, and one of the package options is a screw terminal block. (but they have more screw-terminal packages than are currently attached to M02. It is relatively easy to add additional packages to an existing part.)

Thanks, Mac. That does help clear things up.

I did look up "package", "device", and "symbol" (and several other things) in the Eagle help files. I didn't get anything nearly as helpful as what you just wrote here.

I do understand that the real problem is that I'm just learning this stuff.