KiCad as alternative to Altium and other paid software

This is accurate. Several of us are quite experienced with Altium and other commercial tools. The limiting factor right now is developer time. The good news is that many of the things you mentioned are on the roadmap (and some already exist in nightly builds, such as harnesses – but not documented yet, as mentioned)

2 Likes

KiCad is a one project - one pcb tool.

Anyway, combining different pcbs it is possible. Although it’s not easy and prone to errors.

I wuold use this feature only with finished boards and I would not use refill zones afterwards.

With pcbnew standalone mode there is the option “Append pcb”. The netlist and the schematic bond will be lost. It could be kept with a lot of effort.

Footprints can be locked. I cannot check if in v5.99 other elements can be locked, such as edge-cuts or tracks.

Right now there is KiCadStepupMod for Freecad where you can import a design, modify the board edge and push it back.I don’t think I have ever modified a kicad board in kicad since I found this. I’ll draw a crude outline and push it to freecad to fully constrain the board outline.
It can do footprints as well

I think some basic constraint for board design in kicad would be good as presently is it not pleasant … but neither is Mentor Xpedition or others :slight_smile: who tend to do the board outline in another package and export the outline as DXF

2 Likes

You have been able to lock tracks and vias for a while. Locking graphic shapes just got added.

3 Likes

Tighter and more efficient integration with FreeCad (as well as improvements to the DXF importer) probably makes more sense for the project than developing our own mechanical CAD tooling significantly, although there are some minor improvements in our editing/drawing tools planned for the future.

1 Like

I haven’t used buses myself, but did you know that buses were considerably enhanced early in 5.99 development? It’s not well documented yet, but you can find something in Post-v5 new features and development news

-Look interesting I will check this.

It’s unclear how much you know about KiCad’s capabilities. It’s possible to create atomic parts which have all fields prepopulated. In KiCad you do it by copying a symbol into your own library (or creating a new one). Add the fields and their contents and save the symbol. They just aren’t dynamically populated from a database (if that’s what you mean).

-Yes I know of this. This was the old method in Altium and it still works in both packages. With that method you need one symbol copy of every resistor and capacitor value for example. Not very practical.

solder mask
This you can already do. Remove the Mask layer from the copper pad and create a new Aperture pad with the Mask layer.

-Exactly, this is what I had to do when I imported my QFNs to KiCad. And it works, the generated gerbers are the same. The process is time consuming and complicated though.

100% agree.
I can think of 3 options for mechanical improvements:

  1. Integration with Freecad following the way started by KiCad-StepUp
  2. Develope KiCad own mechanical tools
  3. “Copy-paste” Freecad code into KiCad, as Freecad is open-source.
    In my opinion approaches 2 and 3 are a waste of time, resources and effort.
2 Likes

The FreeCad stepup mod is fantastic and yes further improving this would seem a more sensible approach. However, it does rely on people learning a new tool, knowing such a tool exists and being able to get said tool. I think the biggest limitation is its inability to handle custom pads, but a group effort should resolve that

some basic improvements to the outline wouldn’t go amiss though

2 Likes

In my opinion any serious PCB designer needs to be familiar with a mechanical CAD tool. FreeCad is one option, but nothing stops someone from using a paid/commercial mechanical CAD tool alongside KiCad. I have yet to see a PCB design tool that provides an extensive sketching/constraints system like can be found in every mechanical CAD tool. So, I agree with @pedro that developing our own would be a waste of effort: we should just make it easier to interact with mechanical CAD tools, and make special effort to make the interaction with FreeCad easy since we have the opportunity to work with FreeCad developers (and plugin developers) to improve the links in both directions.

Edit: one exception to the above is the cases I’ve seen where a mechanical CAD tool decides to bring in PCB design as a feature (such as the direction Autodesk is going). This is a valid approach, but likely not the right approach for the open-source world.

3 Likes

Eagle went the “integration” way because probably for Autodesk it could be too unprofitable to spend the efforts in closing the feature gap to the top tier EDAs. So they decided to focus on the integration with their core business, and probably not developin the core EDA functionality.

For KiCad I’d prefer to bring the EDA features to the top league, and leave the 3d/mechanical CAD integration at the export level (so basically leave the parametric thing to FreeCAD), and spend developers efforts to make KiCad one of top EDA tools.

2 Likes

Yes, I tried locking edge.cuts graphics just yesterday, it works well. You can also group the lines together, or group them together with connector footprints etc. to ensure none of the critical items is changed by accident.

2 Likes

I learned FreeCAD during this Corona time earlier in 2020.
Mostly to overcome many of the limitations presented in Altium.
I was virtually unaware of open source / free alternatives before.
On the FreeCAD forum I saw regularly references to KiCad and how they could work together.
I am very impressed of both FreeCAD and KiCAD. It seems they complement each other. When I tried to push the limits in FreeCAD earlier this summer the told me that this is better done in Blender.
I don’t think you will ever do anything in one gigantic package.
I have seen the trend in Altium that they want to extend the EDA package to a complete product lifetime management software. They also try to buld in collaboration functions like Zoom and Microsoft Teams.
Altum has become bloated, slow and expensive.
The hardest time with multiple software is the different user interfaces.
For example I hate to have the panning on the middle mouse key.

2 Likes

I can look some features but not all, not the Board outline for example.
Screenshot 2021-01-10 125100

If you are using nightlies you can change this

I can not figure out how to connect buses with different net names as suggested in this post. Anyone have any idea? I tried QD[A…F] and then QD[A,B,C,D,E,F]. I doesn’t seem to work.

{NETA NETB NETC SUB_BUS[7..0]}

It seems to work.

Top sheet

Sub sheet

1 Like

You’ve got old version…
image

By the way, you don’t need to repeat the bus labels twice, the hierarchical port will serve as a label also

In Altium you can take it one step further. For an SPI bus you can do like. {SCLNK MOSI MISO CS}. And if you through a label on the bus line like SPIA it becomes like SPIA{SCLNK MOSI MISO CS} and the nets get the names SPIA.SCLK, SPIA.MOSI etc.
Am I pushing it to far now?