3d Viewer doesn't reflect board shape

Hi, I’m learning to create a pcb in kicad. I have created the pcb and added mounting holes and 2 cutouts that are needed to clear other mounting posts in the enclosure. Here is a picture of the board:

When I look at this in 3d viewer it shows no cutouts or holes. I have read that 3d viewer can be buggy and may not be authoritative, but how can I know I have done everything correctly?

Thanks!

Welcome to the kicad forum!

Edge cut perimeter needs to be a single closed/continuous line afaik, so those big overlapping holes should be changed to line segments and arcs. You can move them to a user layer temporarily so you can see them while you build the edge properly. If you don’t want to use kicad graphic primitives you can build the edge cuts in a cad program and import a dxf.

The other holes need to be footprints: NPTH or PTH-with-pad as desired. After you get those mounting holes placed and 3d viewer working as expected you should lock the holes so you don’t move them inadvertently.

You also have what looks like a center line – move that to a user layer (or little ticks on silk).

1

1 Like

Ok, I have created the arcs, and deleted the circles. How do I “cut” the line out of the way?

I don’t see any tools like what photoshop has :crazy_face: not that I was expecting that per se.

delete the long line, draw two new lines (starting/ending at your arc).

I draw complex board shapes in FreeCAD as it allows dimension constraints and then import into KiCad.
Also note that a “sharp” corner like you have with those circles could cause manufacturing problems.

Yes, but to be honest kicad really would need a trim tool.

I have as a test made one as a script but its clunky and have no intention of sharing it, because i would need to spend time on cleaning it i don’t have . So know its not really all that much work to do this.

Maybe like this:

Or this “Cut tracks at line” plugin:

Sort of, but the more important one to have circle-line circle-circle trimming, which is horrendous to do by hand.

But it is still one of those fundamental tools that a drawing tool should have. Along with line tool, circle tool, gridsnap, vertex snap, intersection snap/trim some way to draw tangential lines. With this tool set your pretty much complete if you dont want to support freeform curves. Additionally offset would be nice but not as important for completeness of the drawing tool.

But it is still one of those fundamental tools that a drawing tool should have

The question is: Is Kicad a 2D-CAD drawing tool or a ECAD-tool? The current situation allows to draw simpler outlines (with some effort) and allows the import of complicated shapes from real, mighty CAD tools.

With this tool set your pretty much complete

No (or only for your usecase). If you add the trim tool, the users will complain about missing the next tool. There is no end in demanding more features from a CAD tool. Look at QCAD/librecad/other MCAD how many different tools a 2D CAD tool has to offer (drawing circles alone is supported with 13 different drawing modes). At one point or another the users will demand these integrated into kicad.

As much as I understand the wish for more/better CAD drawing tools in Kicad (and I would use these tools myself): I think the concentration on ECAD-specific tools is understandable and the right decision.

Nevertheless there are already improvements: the added shape modification–> chamfer/fillet/extend lines introduced in v8 for instance.

edit/added: A very short search (with the not-so-good search engine) on gitlab reveals these open gitlab issues regarding cad improvements:

I agree with mf_ibfeew. The lack of more advanced drawing capabilities is clearly not optimal, but resources in the form of developer hours are limited for the KiCad project, and as a result compromises have to be made. There are around 1500 open issues for KiCad on gitlab. Around 300 are fixed every month, but about the same amount is opened in new issues. The KiCad developers are doing a wonderful and completely amazing job together.

Import of both SVG an DWG works, which allows both using your preferred mechanical CAD program to design complex things, and to import drawings made by others.

1 Like

Sure i understand priorisation, but still the tool really would need this. But yeah given that how to draw a notch is pretty common question means you probably ought to have this function. Besides it probably takes a experienced programmer a day at most , if i can clobber one together with python in a day. (though i have no way of making a user interface for stuff in python so its not really usable by others than me.)

And yes its complete. Now its not even simple

But yes outlines are drawn so yes kicad is also a drawing tool. Parametric design is another ballgame, would require changing the entire design… But then it wouldn’t be a drawing tool.

KiCad is an Open Source project, so if you can program C++ (or find someone who does) and want to add little improvements, then the other KiCad developers are likely happy to accept your patches. For anything bigger, you should start with verifying whether your idea’s fit with the concepts and goals of KiCad beforehand.

The programing layer of kicad is a mess*. Yeah i know how to write C++, I did work for a software company for 5 years writing openGL and 3D geometry stuff. But every project is more work than just knowing C++. It would take me much longer to learn how to use it than its worth for me. I’m not really a programmer (anymore, by choice)

Thing is I would need to do stuff with picking and there does not seem to be any nice place to start.

* Though that seems to be the natural state of all production codebases

Ok, sorry for being a dummy here. I have recreated the shape using lines in order to get rid of the rectangle and be able to remove that line in the circle. Now I am getting errors that the shape is not closed. I have made painstakingly sure that the lines are perfectly lined up everywhere. Kicad is pointing out to me where the problem is, but I can’t figure out how to close the shape. How can I do this?

Double clicking on the arrow gives you the direct DRC violation that caused it.

KiCad also has PCB Editor / Tools / Repair Board. This can put endpoints that are close on top of each other so the PCB outline forms a closed shape. But be a bit careful, as the way it fixes stuff may not be exactly how you would like it. I think it does try to keep horizontal lines horizontal etc.

1 Like

Running repair board did nothing. The violation is this:

image

The end points are directly over each other.

A tip: you can temporarily set the line width of the suspected items – the straight line and the arc – to something very small, like 0.001 mm. Then it’s easier to see if the endpoints really overlap. The difference may be so small that you don’t see it with normal line width and zoom levels.

I went down extremely small and they overlap perfectly

You can copy the board file, delete everything else except the edge outline and attach it here. (The whole project isn’t necessary in this case.)

it says new users can’t upload. I have a google drive link: