11 Auto DRC/ratsnest/find connection bugs
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pcb |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
The auto-enforce DRC and ratsnest code has some serious
problems:
- You can't connect to floating nets with auto-DRC turned
on. A floating net being some combination of traces
and vias that is not connected to any component pin.
These should be given an internal name such as
"_float_0001" if they need a net name at all and
connections (but not near misses) should be allowed.
Floating nets arise in may cases:
- You have been deleting the trace segments
- You are prerouting a bus or other signals
before connecting it to devices.
- You are placing a grid of vias to be used with
a bunch of traces being run in the same
direction.
- you know you need to get 10 traces from one
other side.
- The only way to get a via DRC doesn't reject is to
draw it by switching layers while drawing traces
and you must draw at least one trace segment
before and one after and start from a pad or pin.
Never mind that you may not want to draw one of
those segments until later, the program won't draw
the via until after you have drawn another trace
segment.
- You can't connect nets without a current rats nest.
If you delete a trace segment, you have to redraw
the rats nest before you can redraw it. AutoDRC
should
be based on the netlist, not the ratsnest as far
as what
nets you are allowed to connect to. You may or
may not want to enforce near misses based on
existing traces. Worse, the rats nest must have
been regenerated before you started drawing the
trace; if you redraw it after starting the trace it
is ignored. You must escape from drawing the
current trace and start over.
- hidden layers break "find connections"
- Displayed clearance is wrong. It appears to display
half the required clearance rather than the full
clearance.
- ratsnest displays rats joining shorted nets. If
two nets
have been shorted together somewhere (often because
of other DRC bugs), the rats nest treats the two
nets as the same and displays rat lines in other
areas encouraging you to short them together even
more.
- When the rats nest code issues warnings, it provides
no information to support those warnings, let alone
a hyperlink into the drawing space.
WARNING: net "VCC" is shorted to net "DGND2"
- Pads do not necessarily have to meet the same
clearance rules as nets. The program should
not enforce trace to trace minimum separation
against the pad to pad separation of the pads
you are attempting to connect to.
- DRC often will not let you connect to the very same
pad/pin the program is telling you to connect to
with a rats nest line (there being no clearance
problems in the immediate area of the connection.
- red error markers are displayed inconsistently.
They are frequently not displayed at all and when
they are displayed, it is not remotely near the
site of the error.
- there is no marker for the begining/end of error
messages from "W" command in the message log
window
}
tags: | added: drc |
Another one: If the you start a trace using F2 on a via
(possibly also pin/pad) and an unrelated ratsnest line
crosses the center of that pad, the program will not only
highlight the wrong net in green, it will refuse to let you
draw a line from that via because it is not connected to the
bogus net.