Forum: Platinen KiCAD6 - DRC und 3D-Ansicht Fragen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Andreas R. (df8oe)


Lesenswert?

Hallo in die Runde und erstmal allen ein gesundes, glückliches und 
produktives neues Jahr!

Ich habe heute zum ersten Mal ein recht komplexes KiCAD5-Projekt 
geöffnet (ein Sechsfachlayer), was auch problemlos gelang. Die Schaltung 
incl. aller selbst erstellter Symbole wird korrekt dargestellt, und auch 
die PCB sieht sehr gut aus. In der 3D-Ansicht werden keine Bauteile 
angezeigt - nur die PCB. Es kommt eine Fehlermeldungsbox mit dem Text 
"/usr/lib/kicad/plugins/3d/libs3d_plugin_oce.so: undefined symbol: 
_ZNK18Poly_Triangulation8TriangleEi" und dann wird die unbestückte PCB 
angezeigt. Ich habe noch nicht gesucht ob das eine Einstellungssache ist 
- in KiCAD5 sah die PCB in der 3D-Ansicht sehr gut aus. Worüber ich mich 
sehr erschrocken habe war die Ausgabe des DRC-Checks. Dort war trotz der 
Komplexität vorher KEINE Warnung / Fehlermeldung - unter KiCAD6 bekomme 
ich 267 (!!) Warnungen... Es sind mehrere Gruppen:
1) Bestückungsdrucküberlappungen (mit Lötstoppmaske)
2) Leiterbahn hat nicht verbundenes Ende (Länge 0,000 mm)
3) Via ist nicht oder nur auf einer Lage verbunden
4) Leiterbahn hat nicht verbundenes Ende (Länge ungleich 0 )
Schaltplanparitätsfehler:
- jede Menge Warnungen der Art "Das Pad-Netz xyz stimmt nicht mit dem im 
Schaltplan abc angegebenen Netz überein
- jede Menge duplizierte Footprints

Einiges davon sind mit Sicherheit Verbesserungen - wie zum Beispiel 
Punkt 1). Was 2) bedeutet weiß ich nicht. Bei 3) handelt es sich um Vias 
die auf Massefüllungen enden. Die Füllung wird nicht als Verbindung 
ausgewertet und so landen etliche Vias ein- oder beidseitig im Nichts. 
Das ist natürlich keine Warnung wert - oder habe ich was falsch gemacht? 
4) kann ich nur raten: Leiterbahnstümpfe die von einer breiteren 
Leiterbahn überdeckt werden und so weder stören noch sichtbar sind. Und 
die Schaltplanparitätsfehler kann ich überhaupt nicht interpretieren. 
Von der PCB läuft die Prototypserie bereits einwandfrei - falsche 
Verbindungen kann ich also ausschließen. Inkompatible 
Netzlistenerstellung (grusel)??? Kann/muss man die Netzlisten neu 
erstellen lassen? Und "duplizierte Footprints": Ja, sind vorhanden! Es 
war eine drastische Arbeitsvereinfachung beider PCB mit "duplizieren" zu 
arbeiten - aber das ist alle ok so.

Die Platine zu verlieren (bzw. die Netzlistenbeziehung zwischen PCB und 
Schaltplan zu verlieren) wäre ein dramatischer Verlust. Kann man 
vielleicht einiges "automatisch reparieren" lassen? Bei 
"Werkzeuge/Platine reparieren" wird mir mitgeteilt dass es keine 
Platinenprobleme gibt...

von PowerOn (Gast)


Lesenswert?

Ich würde dir (und jeden) dringend davor abraten eine bestehendes 
funktionierendes Projekt nach KiCAD 6 zu portieren.
Wechsle zu KiCad6 NUR wenn du eine  NEUES Projekt startest. !!! du 
kannst ja ohne Probleme die alte und die Neue kiCAD Version parallel 
installieren und benutzen !!

von Christian M. (christian_m280)


Lesenswert?

Andreas R. schrieb:
> In der 3D-Ansicht werden keine Bauteile angezeigt - nur die PCB

Hier dito. Bei allen Projekten die ich ausprobiert habe.

Andreas R. schrieb:
> Worüber ich mich sehr erschrocken habe war die Ausgabe des DRC-Checks

Das habe ich gar nicht mehr gemacht, sondern gleich

PowerOn schrieb:
> dringend davor abraten eine bestehendes funktionierendes Projekt nach
> KiCAD 6 zu portieren.
> Wechsle zu KiCad6 NUR wenn du eine  NEUES Projekt startest. !!! du
> kannst ja ohne Probleme die alte und die Neue kiCAD Version parallel
> installieren und benutzen !!

Gruss Chregu

von Andreas R. (df8oe)


Lesenswert?

Ich weiß nicht ob es so zukunftsorientiert ist wenn ich auf Dauer bei 
einer zweigleisigen "Lösung" bleibe oder ob es nicht doch möglich ist 
die Dinge zu verstehen und zu fixen. Es kann ja auch durchaus sein dass 
es Bugs bei einem Import älterer komplexer Projekte gibt deren Kenntnis 
die Entwicklergemeinde interessieren würde.

Auf jeden Fall behalte ich eine Kopie des Projektes die ich ggf mit 
KiCAD5 weiterbearbeiten könnte.

von Frank L. (florenzen)


Lesenswert?

Christian M. schrieb:
> Andreas R. schrieb:
>> In der 3D-Ansicht werden keine Bauteile angezeigt - nur die PCB
>
> Hier dito. Bei allen Projekten die ich ausprobiert habe.

War bei mir genauso.
Da scheint eine Umgebungsvariable zu fehlen. Probiere doch mal 
folgendes:
In Kicad: Preferences->Configure Paths
eine neue Env.-Variable erstellen names "KISYS3DMOD" und auf den 
gleichen Pfad zeigen lassen wie "KICAD6_3DMODEL_DIR". Bei mir ist das 
"/usr/share/kicad/3dmodels/".

Gruß,
f

von Vincent H. (vinci)


Lesenswert?

Super Danke! Das hat bei mir funktioniert.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Sieht so aus, dass der DRC bei Kicad 6 eben nicht nur feingliedriger 
strukturiert worden ist, sondern auch einiges mehr berichten kann als 
zuvor.

Ich habe ähnliches wie du, wenn ich ein älteres Projekt öffne (eins der 
letzten, was ich damals noch mit einer 5er gemacht habe). Die "Schematic 
parity" Verletzungen bei mir beziehen sich allesamt auf Pins, die im 
Schaltplan eine "no connect"-Markierung haben und entsprechend im Layout 
offen sind. Leiterbahnen mit angeblich nicht verbundenem Ende habe ich 
ebenfalls, die bei GND-Vias enden – witzigerweise aber nur bei zwei 
Leiterbahnen, obwohl das an vielen Stellen über Vias auf die Gegenseite 
gelegt ist.

Ansonsten habe ich noch Silkscreen overlaps, die sind erklärlich, da sie 
sich auf eine USB-Buchse beziehen, die Striche außerhalb des 
Platinenrands "in die Luft gemalt" hat, also ein Bug im Footprint.

Eine Variante, wie man das so richtig repariert, habe ich aber auch 
nicht.

: Bearbeitet durch Moderator
von Bernd B. (bbrand)


Angehängte Dateien:

Lesenswert?

Die Meldung über Leiterbahnen mit nicht verbundenem Ende kommt wohl, 
wenn sich unter einem Pad noch ein Stückchen Leiterbahn verbirgt. Das 
sieht man am einfachsten, wenn man die Pads auf Sketch-Mode schaltet. 
Die Meldung ist im Grunde genommen richtig.

Gruß,
Bernd

: Bearbeitet durch User
von Andreas R. (df8oe)


Lesenswert?

Danke, danke, danke - es geht voran! Nicht nur mit dem KiCAD-Projekt 
(mir gefällt das neue 6er sehr gut) - auch mit dem Verständnis alte 
Projekte zu migrieren.

@florenzen:
Das war es bei mir auch. 3D-Ansichten mit Bauteilen gehen wieder.

@dl8dtl:
Ich vermute auch dass die allermeisten Warnings einfach durch besseres 
Fehlerhandling in KiCAD6 entstanden sind. So sind tatsächlich viele 
Warnings auf "nicht belegte" Pins im Symboleditor zurückzuführen. Die 
Überlappungen mit Silkscreens sind richtig - wenn man das nicht alles 
behandeln will (wird bei mir wohl gar nicht gehen, kein Platz um alles 
widerspruchsfrei anzuordnen) kann man diese spezielle Warning ja 
abschalten.

@bbrand:
jein. Bei einigen sind es Leiterbahnfragmente - aber nicht bei allen. Da 
schaue ich nochmal genauer nach.

Ich werde morgen anfangen die Dinge zu bereinigen und bei echten Bugs 
via GitHub Issues eine Meldung machen (wenn das hier von euch 
reproduziert werden kann). Ich investiere auf jeden Fall lieber ein paar 
Stunden in eine korrekte Migrierung / ein Verständnis der Meldungen als 
mit dem Meldungen bei KiCAD5 zu bleiben.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Bernd B. schrieb:
> Die Meldung über Leiterbahnen mit nicht verbundenem Ende kommt wohl,
> wenn sich unter einem Pad noch ein Stückchen Leiterbahn verbirgt.

Stimmt. Das waren Mini-Leitbahnstückchen unter anderen drunter.

Andreas R. schrieb:
> So sind tatsächlich viele Warnings auf "nicht belegte" Pins im
> Symboleditor zurückzuführen.

Wobei ich erwarten würde, dass die im Schaltplan mit einem 
ERC-No-Connect markierten Netze keine Warnung produzieren. 
Möglicherweise hat sich aber die Benamsung für solche Netze geändert. – 
Ja, cfm: wenn ich einmal im Layout "Update from Schematics" erzwinge 
(läuft ja in V6 normalerweise automatisch, aber eben nur, wenn man am 
Schaltplan was macht), dann sind diese Warnungen weg.

von Andreas R. (df8oe)


Angehängte Dateien:

Lesenswert?

Zu früh gefreut - wird doch komplizierter. Wenn ich die PCB aus dem 
Schaltplan aktualisieren lasse baut er mir etliche Kurzschlüsse in die 
PCB ein. Diese Kurzschlüsse sind prekärerweise in der Schaltung vorher 
(als ich sie noch mit KiCAD5 angeschaut habe) nicht vorhanden gewesen - 
aber wenn ich das 5er Projekt in 6 öffne und mir die Schaltung anschaue 
sind die betreffenden Stellen in der Schaltung verändert worden - ohne 
Warnung und ohne mich vorher zu fragen...

EDIT:
Es scheint auch nicht zu helfen wenn ich sage "Schaltung aus PCB 
aktualisieren".

Es wird wohl darauf hinauslaufen dass ich die Schaltung nochmal manuell 
mit dem korrekten Schema vergleiche. Die Probleme scheinen alle darauf 
hinauszulaufen dass Leiterbahnen an Kreuzungen Verbindungspunkte 
bekommen und eventuell weiterverlaufende Bahnen einfach "vergessen" 
werden.

: Bearbeitet durch User
von Gabriel M. (gabse)


Lesenswert?

Andreas R. schrieb:
> Zu früh gefreut - wird doch komplizierter.

Ist ein Bug keine Frage, aber der Schaltplan hat mindestens Teilschuld. 
Normalerweise positioniert man genau aus diesem Grund mind. ein gerades 
Leiterbahnsegment, bzw. lässt mit Überkreuzenden Signalen mind. ein 
Segment Abstand zu einem Anschlusspin.

von Andreas R. (df8oe)


Lesenswert?

Korrekt. So kann ich die Stellen wo solche Probleme auftreten schon 
eingrenzen. Aber es ist ein Bug - trotz schwächelndem Schaltungsdesign.

von Gabriel M. (gabse)


Lesenswert?

Mit welcher Kicad Version hast du den Schaltplan gezeichnet? Ich schaffe 
es in 5.1.12 NICHT eine solche Kreuzung zu zeichnen OHNE dass ein 
Verbindungspunkt platziert wird.

von Bernd B. (bbrand)


Lesenswert?

Andreas R. schrieb:
> Die Probleme scheinen alle darauf
> hinauszulaufen dass Leiterbahnen an Kreuzungen Verbindungspunkte
> bekommen ...

Jetzt frage ich mich aber, wie Du diese Netze überhaupt erzeugt hast. 
Wenn ich mich recht erinnere, war es auch schon in KiCad 5.x so, dass 
automatisch ein Netzknoten erzeugt wurde, wenn man ein Netz quer über 
ein Anschlusspin gezogen hat.

Gruß,
Bernd

Oh, Gabriel war schneller...

: Bearbeitet durch User
von Andreas R. (df8oe)


Lesenswert?

Schaffe ich auch nicht. Aber wenn ich mit dem Mauszeiger über den Knoten 
gehe und dann ENTF drücke ist der Knoten weg.

von Andreas R. (df8oe)


Lesenswert?

Habe weiter dran gearbeitet. Ich habe die False-Änderungen im Schaltplan 
alle gefunden (dank Quervergleich mit den Netzlisten / der PCB) und die 
Leitungen jetzt mit dem nötigen Abstand verlegt. Jetzt werden in der 
Schaltplanparität nur noch zwei Sorten von Warnings ausgegeben:
1) Warnung: das Pad-Netz xyz stimmt nicht mit dem im Schaltplan 
(unconnected-abc) angegebenen Netz überein
2) Warnung: Dupliziere Footprints

Bei 1) habe ich wieder ein Verständnisproblem. Es handelt sich um "not 
connected" Pins der betreffenden Bauteile. Diese sind in der Schaltung 
korrekt mit einem "x" abgeschlossen. Ist das ein Bug?

Bei 2) ist das Problem klar und die Meldungen sind korrekt.

Damit hätte ich alle Warnings aus der Sektion "Schaltplanparität" 
bearbeitet. Klar: ich habe den Schaltplaneditor "überlistet". Nicht gut. 
Aber wenn das geht sollte das auch so wie ich es gemacht habe in die 6er 
importiert werden. Die weiteren Warnings sind eine Verbesserung in der 
6er - sehr gut! Zum Rest werde ich morgen kommen.

Die 6er hilft einem Unsauberkeiten die man verbrochen hat zu 
korrigieren. Finde ich Klasse!

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Andreas R. schrieb:
> Bei 1) habe ich wieder ein Verständnisproblem. Es handelt sich um "not
> connected" Pins der betreffenden Bauteile. Diese sind in der Schaltung
> korrekt mit einem "x" abgeschlossen. Ist das ein Bug?

Naja, siehe oben, hatte ich anfangs auch, war bei mir aber weg, nachdem 
ich das PCB aus dem Schaltplan aktualisiert habe.

Zur Not musst du mal manuell vergleichen, welche Netznamen auf beiden 
Seiten vergeben worden sind.

von Andreas R. (df8oe)


Lesenswert?

Irgendeine der anderen Warnings hat da was blockiert. Ich habe der Reihe 
nach alle abgearbeitet (es war tatsächlich keine einzige unberechtigte 
darunter) und eine Aktualisierung aus dem Schaltplan durchgeführt. Nun 
ist alles wieder ok. Selbst die "unverbundenen Leiterbahnen mit 0.000mm 
Länge" entpuppten sich als mikroskopisch kleine Fragmente, die man alle 
entfernen konnte. So ist aus eine mit KiCAD5 entstandenen guten PCB 
durch KiCAD6 eine noch bessere PCB geworden - ausgezeichnet!

Den Bug dass manuell entfernte Knoten ungefragt erneut gesetzt werden 
werde ich melden - obwohl das jetzt nicht mehr passieren kann da ich die 
Schaltung entsprechend verbessert habe.

Nun gibt es nur noch ein letztes Problem: Bei drei Bauteilen habe ich 
selbsterstellte 3D-Symbole benutzt. Die Lage dieser Dateien im 
Dateisystem wurde in einem absoluten Pfad gespeichert - was ich als echt 
lästig empfunden habe. Also habe ich die entsprechenden Stellen in den 
.kicad_mod-Dateien im .pretty-Ordner manuell verändert - was bei KiCAD5 
auch einwandfrei funktioniert hat. Ich konnte den Haupt-Ordner mit den 
PCB-Dateien nun irgendwo hinschieben und das Projekt öffnen - alles lief 
an jeder Stelle. Mit KiCAD6 habe ich bei diesen drei Bauteilen wieder 
keine 3D-Symbole in der Ansicht - man sieht nur die Lötpads...

Werden von KiCAD6 auch die Dateien im .pretty-Ordner benutzt? Oder 
wurden die Dateien darin konvertiert und in anderem Format gespeichert?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Andreas R. schrieb:
> Werden von KiCAD6 auch die Dateien im .pretty-Ordner benutzt?

Habe gerade mal einen Footprint dupliziert (via "Save As"), und der 
landet wieder im .pretty-Verzeichnis.

von Andreas R. (df8oe)


Lesenswert?

Meine Modelle sind im .step-Format. Alle anderen Modelle die ich dort 
finde sind im .wrl-Format. Kann es sein dass KiCAD6 .step nicht mehr 
unterstützt?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

In meinen 3Dshapes-Verzeichnissen befinden sich jeweils .step- und 
.wrl-Dateien. In der Darstellung (Schattierung etc.) sehen beide 
geringfügig unterschiedlich aus, aber angezeigt werden (zumindest in der 
Vorschau im Bauteileditor) beide.

von Andreas R. (df8oe)


Angehängte Dateien:

Lesenswert?

Sowie in der PCB eine .step ist bekomme ich beim Öffnen der 3D-Ansicht 
oder des Bauteileeditors die oben zu sehende Fehlermeldung. Sowohl in 
der 3D-Ansicht der Platine als auch im Bauteileeditor fehlen die 
3D-Objekte, zu sehen sind nur die PADs.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Das liegt dann am verwendeten Build bzw. Unstimmigkeiten in den 
Bibliotheken zwischen dem Build und den Bibliotheken deines Systems.
1
$ c++filt
2
_ZNK18Poly_Triangulation8TriangleEi
3
Poly_Triangulation::Triangle(int) const

Keine Ahnung, welche Bibliothek diese Methode nun liefern sollte … *)

Hast du die Option, den Kram selbst zu bauen?

Man kann das natürlich bei den Kicad-Maintainern mal einkippen, ist ja 
schließlich (vermute ich) deren offizieller Build, aber das wird wohl 
auch nur dazu führen, dass sie die Prerequisites etwas sauberer 
dokumentieren.

*) Habe bei mir (FreeBSD) mal danach gesucht, es ist hier die 
/usr/local/lib/libTKMath.so, die das Symbol definiert, und die wurde 
installiert von opencascade-7.5.0_3.

von Andreas R. (df8oe)


Lesenswert?

Der Tipp mit opencascade war richtig.

Ich arbeite mit Arch Linux (testing - Quellen). Mit opencascade 7.6.0-1 
kommt der besagte Fehler - mit der älteren 7.5.3-4 geht alles wie zuvor.

Danke an alle - und beherzigt den Tipp ältere Projekte nicht in KiCAD6 
zu migrieren bitte nicht. Nach meiner Beurteilung gibt es (bis auf die 
Sache mit den automatisch nachgesetzen Knoten in der Schaltung wenn man 
die Designregeln missachtet hat) keine Probleme. Aber man deckt viele 
schon existierende auf.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Andreas R. schrieb:
> Mit opencascade 7.6.0-1 kommt der besagte Fehler - mit der älteren
> 7.5.3-4 geht alles wie zuvor.

Dann solltest du den Tipp aber trotzdem mal an die Kicad-Leute 
weiterleiten, damit sie das so dokumentieren.

von Andreas R. (df8oe)


Lesenswert?

Ich denke der Fehler liegt bei opencascade. Es existiert dazu im 
Bugtracking von Arch Linux auch schon ein Eintrag der sich auf eine 
Fehlfunktion im Zusammenhang mit FreeCAD bezieht - gleiche 
Funktionsfehler. Nicht umsonst ist das Paket dort auch noch nicht in 
stable sondern in testing - und ich hefe beim Testen gerne mit...

von Max M. (prokrastinator)


Lesenswert?

Andreas R. schrieb:
> Schaffe ich auch nicht. Aber wenn ich mit dem Mauszeiger über den Knoten
> gehe und dann ENTF drücke ist der Knoten weg.

Das ist ja auch grob fahrlässig.
Das sind Anschlusspunkte an denen immer eine Verbindung hergestellt 
wird.
In dem Fall sehe ich das nicht als Bug das die 6er dann Verbindungen 
erzwingt.

Das Problem beim Projektimport ist der, das alle Bauteile, Footprints 
und 3D Modelle auf die alten Libs verweisen.
Ja, kann man sich hinbiegen, aber was bedeutet das dann für die neuen 
Projekte die ohne Altlasten erstellt werden?

Also portiere ich meine Libs und halte alles von der 5er un der 6er 
strikt getrennt.
Habe keine Lust in ein paar Monaten ein 5er Projekt anfassen zu müssen 
und dann festzustellen das ich mir was zernagelt habe.

von Andreas R. (df8oe)


Lesenswert?

Ich habe nur noch die 6er Libraries installiert. Alle aus den alten 
Libraries verwendeten Elemente wurden migriert - da verweist bei mir 
nichts auf etwas altes. Ich musste 3 Bauteile neu erstellen - dieses 
persönliche Library habe ich ebenfalls migrieren lassen. Es gab entgegen 
anfänglichen Annahmen keine Probleme bei der Umstellung - die 
Darstellungsprobleme lagen an einer nicht von KiCAD verantworteten 
Stelle (siehe ein paar Posts höher).

von Thomas P. (pointhi)


Lesenswert?

Den Bug mit den hinzugefügten Knoten bitte bald melden! Das darf 
wirklich nicht passieren.

von Andreas R. (df8oe)


Lesenswert?


: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.