DRC Check fails with filled zones

Bug #1779281 reported by Martin Thomas
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Critical
Maciej Suminski

Bug Description

The DRC Check did not complain about not connected Signals

I am using the Version "d3deaf5ff52c1908ac32f267c9a918e00e64eead".

I used an area wit 3,3V and use vias to connect the parts with power. I had an orphan zone without connection to the rest, as there was a track with an other signal through this area. Thus the zone was cut off. Now some parts were not connected with 3,3V any more but the DRC did not complain about that.

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Martin,

Could you post the board so we can investigate the problem? If it is a confidential design, would you consider removing everything but the part needed to illustrate the problem or sending the file to maciej (dot) suminski (at) cern (dot) ch?

Changed in kicad:
status: New → Incomplete
Revision history for this message
Martin Thomas (mtlaunchpad) wrote :

I sent you the board last Friday. Did you receive it?

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Hi Martin,

Unfortunately, I have not received. Could you verify the e-mail address and send it to orson at orson dot pl as well?

Revision history for this message
Martin Thomas (mtlaunchpad) wrote :

OK I just sent it.

Revision history for this message
Martin Thomas (mtlaunchpad) wrote :

Did you get it now?

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Yes, thank you!

Changed in kicad:
status: Incomplete → In Progress
importance: Undecided → Critical
assignee: nobody → Maciej Suminski (orsonmmz)
Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Martin,

Your board used to have 6 layers with a +3V3 zone on In4.Cu, which still connects certain +3V3 nodes. With the current version it is not possible, but sometime ago one could reduce the number of layers and the items on the removed layers were still saved in the file. It seems you are a victim of this bug [1].

I plan to write a patch that informs the user about connections on disabled layers. We are far beyond the string freeze stage, but I think this bug deserves an exception. I will let Wayne decide whether we should fix it for v5.

1. https://bugs.launchpad.net/bugs/893950

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Attached the promised patch. More radical approach would automatically delete such items, but I would rather leave the choice to the user.

Changed in kicad:
status: In Progress → Triaged
Revision history for this message
jean-pierre charras (jp-charras) wrote :

@Orson,
Perhaps this message should be displayed in DRC dialog.
Displaying messages in a plugin loader is a potential issue in python scripting.

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

Jean-Pierre,

It might be a good idea, as it would be supersafe and would also protect from faulty Python scripts that do not check if a layer is enabled.

In any case, there is already a warning message displayed by PCB_PARSER (pcb_parser.cpp:3185) and is more likely to show up than the one proposed by me. If there are issues caused by message dialogs, then I guess we need to use a REPORTER object to receive messages.

Revision history for this message
jean-pierre charras (jp-charras) wrote :

Collecting warning messages (and perhaps info message) generated by plugins in a REPORTER object is really the best way.

pcb_parser.cpp:3185 displays a Error message, but the code has the comment:
"FIXME: a call to any GUI item is not allowed in io plugins"

So, using a REPORTER object could fix this other problem
(and also could be used in other plugins, that certainly generate many warnings, like eagle import plugin.

"protect from faulty Python scripts" and generally speaking files modified outside Pcbnew is a endless work.
We already encountered this kind of issues with ULP scripts creating incorrect kicad board files.

Revision history for this message
Maciej Suminski (orsonmmz) wrote :
Revision history for this message
Jeff Young (jeyjey) wrote : Re: [Bug 1779281] Re: DRC Check fails with filled zones

I like this strategy much better.

> On 4 Jul 2018, at 02:24, Maciej Suminski <email address hidden> wrote:
>
> ** Patch added: "Patch adding a DRC test"
> https://bugs.launchpad.net/kicad/+bug/1779281/+attachment/5159528/+files/0001-DRC-test-for-items-located-on-disabled-layers.patch
>
> --
> You received this bug notification because you are a member of KiCad Bug
> Squad, which is subscribed to KiCad.
> https://bugs.launchpad.net/bugs/1779281
>
> Title:
> DRC Check fails with filled zones
>
> Status in KiCad:
> Triaged
>
> Bug description:
> The DRC Check did not complain about not connected Signals
>
> I am using the Version "d3deaf5ff52c1908ac32f267c9a918e00e64eead".
>
> I used an area wit 3,3V and use vias to connect the parts with power.
> I had an orphan zone without connection to the rest, as there was a
> track with an other signal through this area. Thus the zone was cut
> off. Now some parts were not connected with 3,3V any more but the DRC
> did not complain about that.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/kicad/+bug/1779281/+subscriptions

Revision history for this message
Maciej Suminski (orsonmmz) wrote :

I set the target milestone to 5.0, so this bug gets Wayne attention before we hit the release button.

Changed in kicad:
milestone: none → 5.0.0
Revision history for this message
Wayne Stambaugh (stambaughw) wrote :

I think we are going to have to make an exception and include this patch so go ahead and merge it. We really need to fix this bug. It's been a thorn in our side for a long time. At least now users will be warned when there are connections on inactive layers. We may have to give our translators some more time to prepare for the v5 release.

Revision history for this message
KiCad Janitor (kicad-janitor) wrote :

Fixed in revision 0013e0cad1c470398af987b20d6ae0c7687dfa16
https://git.launchpad.net/kicad/patch/?id=0013e0cad1c470398af987b20d6ae0c7687dfa16

Changed in kicad:
status: Triaged → Fix Committed
Revision history for this message
Maciej Suminski (orsonmmz) wrote :

I have just pushed the patch. The chances that a user will see the DRC message are very low, so keeping the text untranslated for v5 should not be a huge deal. Manufacturing a broken board due to DRC failure would be much more upsetting.

Revision history for this message
Jeff Young (jeyjey) wrote :

I agree. If someone has to use Google Translate for this it won’t be the end of the world.

> On 10 Jul 2018, at 10:50, Maciej Suminski <email address hidden> wrote:
>
> I have just pushed the patch. The chances that a user will see the DRC
> message are very low, so keeping the text untranslated for v5 should not
> be a huge deal. Manufacturing a broken board due to DRC failure would be
> much more upsetting.
>
> --
> You received this bug notification because you are a member of KiCad Bug
> Squad, which is subscribed to KiCad.
> https://bugs.launchpad.net/bugs/1779281
>
> Title:
> DRC Check fails with filled zones
>
> Status in KiCad:
> Fix Committed
>
> Bug description:
> The DRC Check did not complain about not connected Signals
>
> I am using the Version "d3deaf5ff52c1908ac32f267c9a918e00e64eead".
>
> I used an area wit 3,3V and use vias to connect the parts with power.
> I had an orphan zone without connection to the rest, as there was a
> track with an other signal through this area. Thus the zone was cut
> off. Now some parts were not connected with 3,3V any more but the DRC
> did not complain about that.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/kicad/+bug/1779281/+subscriptions

Changed in kicad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.