Connecting SMD Case to Ground (Eagle)

Is there an easy way to connect the case pads for an SMD part to ground in Eagle? For example, the SparkFun library has a part for a Mini-B USB connector which has 4 pads marked GND$1…4. The pads are not part of the schematic, so there’s no way, as far as I can tell, to tell Eagle that those pads should be connected to ground.

I’ve spent quite a lot of time searching for an answer to this question, and although I’ve seen it come up a couple times, I haven’t found any answers…

The USB cable shouldn’t be grounded at the slave end, according to the spec.

Leon

Okay… Let me rephrase.

There are quite a few SMD parts (and possibly through hole parts) where the number of pads may not equal the number of connections in the schematic. Typically the extra pads should be connected to ground. I used the MiniB connector as an example because it is in the SparkFun library, and this is the SparkFun forum, so I assumed that people might be familiar with it.

Some other examples - battery holders and tactile switches, while only having two connections in the schematic, may, in fact, have more than two pads. (Battery holders frequently have 2 or 3 ground pads, tactile switches are commonly available with a third pad-to-ground for the case.)

As an aside, but completely not related to the actual question, the connector I’m actually using is a Micro-AB, for a USB-OTG application, where the device can be master or slave… As far as I can tell, the spec doesn’t say if the shell should be connected to ground or not.

It should only be connected at one end, anyway.

Leon

leon_heller:
The USB cable shouldn’t be grounded at the slave end, according to the spec.

Leon

Leon - that's interesting. Whenever I've checked, USB jack shields have been grounded. I wonder if perhaps the shield on the USB slave side plug doesn't connect to the USB cable's shield? I have trouble believing that everybody is doing it wrong.

That’s how I used to do it, but I’m quite sure that the spec. actually says not to. I can’t remember the exact section, though. I found a reference to it here:

http://pinouts.ru/Slots/USB_pinout.shtml

“Shield should only be connected to Ground at the host. No device should connect Shield to Ground.”

It’s probably something to do with ground loops.

Leon

I wrote a post, which included a quote from the ‘official’ USB spec, but it is being held for containing ‘banned words’ or some such. (That post may suddenly appear when/if it is approved…)

At any rate, I can not find any reference to not grounding the shell in the USB 2.0 spec, or addendums.

Typically cables for 'NC machines, which are the only shielded type cables I’ve worked with, the shield is only connected to shell on one end of the cable (panel end).

Unless you have an isolated ground for your cable connector, I’m not sure how having the cable shield grounded on both ends would cause a ground loop if you didn’t already have one from the ground wire. But probably I just don’t understand how ground loops work.

The normal way to do this in Eagle is to create a pad for the shield and add a connection to the symbol.

So, assuming you wanted to ground the 4 pads on the aformentioned USB connector, your schematic symbol would have a total of 5 ground pins? That’s how I did a tactile switch with grounded case, but it seems like an ugly solution for a multi-pad device.

Yes, but why would you ground 4 pads? It’s all the same shield.

Not going to be able to access my machine with Eagle on it for a while, so can’t test this out, but going back to the original question, is this a case of needing to use the “invoke” function on the part in the schematic?

Sometimes when people make the symbol/package for a part they leave out the power pins in the symbol, but the pins are given names and are automatically connected to nets with that name, usually VDD, GND etc.

Or I could be totally wrong and those pins are not meant to be grounded, just throwing it out there!

Excellent point, Mark. Although it would be nice if Eagle allowed some way to have multiple pads with the same name.

Trialex - I can’t figure out how to make a part such that it can be invoked. The help function for invoke doesn’t make it clear, at least not to me.

Randoma - are you creating a new part? I assumed you are using an existing part.

I don’t know how to make a part with the “hidden” pins that need to be invoked to be shown.

If you want to have a look at an existing part where the power pins are not shown until invoked, drop the 74*595 part into your schematic.

I think the 2 main limitations to Eagle that I constantly see myself is that it would be nice to have multiple pads with the same name, and that it would be nice to have custom pad shapes rather than just rectangles.

1 pad, 1 name has been a limitation for a long time. I’m no EE, but possibly it’s like that to limit sloppiness or some other ‘good design’ guideline.

Trialex - I was trying to modify an existing part. I tried the 74*595 part, but it appears to have all its pins showing and, when I ‘invoke’ it, it tells me:

“Part has only 1 gate”

I don’t think it really matters because I suspect that you can’t have a schematic with a hidden pin, which can use a variable pin package. IE - you probably can’t have a 2 pin switch symbol with a hidden ground pin and use that with either a 2 or 3 pin package because Eagle won’t let you use a package that has less pins than the symbol.