Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This is an update from the folks doing Thunderscope (a high frequency "soft" oscilloscope) but this really stands out:

Teaching KiCad a New Trick - Matching Delays

At time of writing, KiCad only understands the length of traces and pins. When length matching, it takes length as a single number added up across every layer. This leads to delay mismatches, as the signals on the inner layers are slower than the signals on the outer layers. When assigning pin lengths, you need to arbitrarily choose a layer to convert a delay value (given by the manufacturer), to a length. This also results in delay mismatches.

I wanted to do this right, just like Altium does, but I didn’t want to have to calculate and add up all the delay values by hand in a spreadsheet. So I made a script to rewrite custom design rules to try to get KiCad’s length matching to be delay matching (including pad delays).

Closed source design tools leave you stuck, and often when a need like this surfaces you end up paying a lot of money for an "option pack" that adds the capability. If you have ever wondered if KiCad was up to doing any kind of design, this should assure you that no it works just fine and you can kick that $10,000 Altium license to the curb.



The quote does say that Altium does it out of the box though? With KiCad you had to write a script and learn how the format works. Could also be introduced as a patch to upstream and have everyone benefit from it, but that's less time spent working on the circuit


This is coming in the next release of Kicad: https://forum.kicad.info/t/post-v9-new-features-and-developm...

The rate of development since V6 is crazy fast IMO. Very much an OSS success story.


It's absolutely insane. Kicad v5 was usable, if you wanted to make simple projects and were willing to deal with frequently running into annoyances. Kicad v6 took forever to release, but it suddenly went from "an option for hobbyists who can't afford EAGLE / Altium" to "viable tool for not-too-complicated professional products". Ever since then every release has been filled with quality-of-life improvements - both huge improvements and fixes for small annoyances.

We saw something similar with Blender. At a certain point it becomes good enough that for some professionals it becomes a viable alternative to its obscenely expensive proprietary competition. If those companies are willing to donate $500 / seat / year to OSS instead of spending $1500 / seat / year on proprietary licensing, they can get some developer to fix the main issues they run into. This in turn means the OSS variant gets even better, which means even more companies are willing to consider switching, which means even more budget for development. Let this continue for a few years, and the OSS alternative has suddenly become best-in-class.


> The quote does say that Altium does it out of the box though?

Sure, if you're routing 8+ layer boards with blind vias and PCIx16 and DDR5 buses every day, go buy an Allegro or Expedition licence for 6 figures. It's absolutely worth the money.

For Altium, I find that the "showstopper bug that Altium has":"feature that Kicad doesn't have" ratio is almost always strongly in favor of Kicad.


But you have recourse! It’s not ideal, but it beats being at the mercy of a vendor in most cases. Trying to hack around a closed source format is an even bigger drain.


Plenty of closed source software packages are extensible and scriptable. The entire 3D modeling industry is a great example.


Only up to a point. There is a ton of scenarios where you simply run up to the API limitations.


Why haven't people bludgeoned them into opening their software if its so useful? This is inevitable; in fact you could measure the long-term efficiency of an industry by how quickly this happens. Movie studios are famously bad at spending money (yes there are exceptions, but they can be counted on one hand).


Because most people are much more concerned about doing their jobs than having access to source code they aren’t going to look at, much less modify.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: