SparkFun Forums 

Where electronics enthusiasts find answers.

Questions relating to designing PCBs
By Lucien
#39977
Not, a question about it, but the solution as I remember this has been asked before.

The problem is when you want to have a jumper between say analog and digital grounds connected by a pre-existing trace on the PCB. In EAGLE, this can be a problem as if they're connected in the schematic, they're on the same net. So for example, a polygon meant to include just one set of traces would enclose both signal sets. The alternative would be to leave them as separate nets, and in the layout editor, have a component (for example a 1206 device) between the two nets with a track/rectangle/polygon linking the two pads. However, this then causes a DRC error.

The quick solution is to use the GND-GNDA component in the supply1 or supply-dummy libraries. The longer solution is to make your own, using the same underlying method, which is to activate layers 53 and 54 (as used by the GND-GNDA component) and place a wire on this layer, then include the relevant layer in the CAM job. Note that I don't know if layers 53, tGND_GNDA, and 54, bGND_GNDA, have some other pre-defined use. I've only made use of what I've found and the already provided solution.

In detail, what you'd want to do is:

First, activate layers 53 and 54 in the library editor and layout editor. For EAGLE freeware users, the layers that are used by default are:

1 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49
51 52

(formatted to make it easy to read, and these seem to the be the defaults in my setup). These are the layers that show up in the "Display" dialog box. The command "Set Used_Layers" is used to determine which layers will show up in this box. Also, the help file notes that "Pads, Vias, Unrouted, Dimension, Drills, and Holes" as well as the schematic and in use signal layers will always be present. So for example

Set Used_Layers 41 42 43

would result in the "Display" dialog showing the three restrict layers as well as the ones noted above. So what we want to do is issue the command

Set Used_Layers 1 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 51 52 53 54

Note that I added 53 and 54 to the end.

As a side note, I think there was a walkthrough or question about one of the EAGLE tutorial projects somewhere on the SF site. The tutorial said to display a layer, but it didn't show up in the "Display" dialog. Same thing applies here, the Set Used_layers command needs to be used first to make it available.

Next, we want to create our package. In the package editor, we can create a device with two pads. Between the two pads, place a rectangle on layer 41, tRestrict, to prevent traces or planes being auto added here which would mess up the board. Then on layer 53, we add the wire/rectangle/polygon that overlaps both pads and will link them on the PCB. Then create a suitable two terminal symbol and combine the symbol and device into a package.

We can then make use of this package in our schematic and board were we want the jumper to be.

Finally, when the PCB layout is complete and you want to run a CAM job, scroll down the list of layers on the right side of the CAM dialog box. If you've enabled layers 53 and 54, they'll show up here (and in my case, they were enabled for every output file). Include 53 in the top copper output file if you have a jumper on the top side, and conversely 54 for the bottom copper file for one on the bottom. Deselect 53 and 54 on all other output files. Run the job and done.

DISCLAIMER: I've only gotten as far as laying out my PCB and have not yet run the CAM job or checked the CAM output. But if I understand it all correct, it should work.


Now, does anyone know what the proper symbol should be for this? :D