I supposed that pushing sketch into pcb file means adding some lines with what you need to push. I don’t know file format but supposed you can add anything to graphic layers without deleting what there is on that layer.
I assumed (few years passed and I not checked it yet) that I will be able to make complicated chart by generating manually in Inkscape the logarithmic scales + one simple semi chart line then multiplying that line by counted by my program values (connected with near and far EMI fields in a function of frequency). I supposed that it will work and I also supposed that the same way it is possible to add anything to graphic layers in KiCad pcb file. I understand that some layers have special conditions to be assumed the layer is correct but I think both User and both Eco layers don’t have any such rules.
no problem, but this is a thread about KSU (KiCAD StepUp)… then instead of helping people in use the tool, you are playing your way of ‘approaching’ the problem… that’s no useful IMO for this thread.
That is an old way approach that modern CADs have left, using instead the direct MCAD-ECAD collaboration, as KSU is offering.
In general ATM there is no way to distinguish/name a sketch/contour in pcbnew… so when I pull a layer w/ KSU, I pull all the drawing objects of that layer… the same when I push back the layer.
I need to clean all the drawing objects into the pcb to avoid doubling lines/objects of the same layer.
It is a bit tricky, but if you get used to this method, it should be quite straightforward and user friendly.
Missing Keywords from above, should read, “…but this thread is about “My” KSU(Kicad StepUp Plugin…”
You did an excellent job making the plugin. But, I don’t need it.
That said, I’ve been looking for a reason to enjoy this nice weather and ride my Harley. And, this presents to me the perfect excuse to spend my time doing just that and some yard work and not posting…
Thus, I make my farewell offering with this:
• Regarding another post wherein users confuse “mils” with “millimeters”. They are not the same. Mils is the syntax for 0.001 inch. So, when talking about line widths, users should know what the term means.
• Whether Kicad, FreeCad…etc; the story is common: Plugin coders push users to use their plugin. I get it. But, don’t want it. I prefer using a foundation of knowledge to solve the problems and avoid being locked into some Whiz-Bang code that may fall apart downstream. How many posts are there about Plugin bugs and shortcomings and need to update them…
• Lastly, I forget about the Policing aspect of users telling other users what Not to post.
Best of luck to all - no need to respond, I won’t be back.
I don’t see any problem in getting doubled lines/objects. I am deciding to add to specified layer the sketch I have designed and I am taking responsibility for the effects.
On the other hand it is you who decided how KSU works and it is your right to do as you think is better.
Assume that someone (like me) can give some high % of believe in KiCad will not suddenly disturb his work taking in mind that lot of people all over the world uses it and it gives high probability bugs are found and fixed. At the same time I assume that KSU is used by much less number of people and for much shorter time (I use KSU very sporadically). I have no problem to assume that you adding some lines to my file at specified layer will not garbage my pcb file as you take care only about that simple task. But it is harder to assume that my pcb can be loaded to FC, modified there (I understand that is the way to add sketch to what already is in file) and than saved for me not corrupted. I don’t care about bugs that can be noticed at once, but about something that I will work with such file for some long time and than suddenly I will find that something was corrupted.
So I would suggest to add to KSU possibility to not only push sketch into empty layer but also into not empty layer (adding all elements of sketch even if you get them doubled). May be a check-box in Push window. But of course it is up to you.
At the same time I understand that you believe 100% in your code so may be don’t understand why I am not so sure as you.
Edit:
May be my doubts are irrational. Adding sketch like I am suggesting is really the same process as adding by loading pcb file to FC and then saving afterwards.
Nobody ‘push’ users to use their plugins … the plugins are ‘free’ and exists to share user experiences and knowledge…
and what about open source projects?
the same for any open source project, like kicad itself… not a ‘Whiz-Bang code’ IMO
BTW it seems you are involved in writing plugins too …
it seems you contradict yourself
you forgot to read the title as I posted above… here the user asked for help in using the KSU plugin… you simply are highjacking the thread IMO (and the OP told you he asked for help in the plugin use).
KSU makes always a backup of the pcb file before make a push … anyway it is just an external plugin … each user may decide for him/her self.
the idea is derived from Edge-Cut layer which cannot have doubled lines (to create a closed edge)…
KSU in general adopts the concept to create/modify the mechanic part of the project in a mechanical CAD.
Some similar concepts for commercial CADs are available here: https://ecad-mcad.org/
@BlackCoffee wasn’t around when this plugin was first developed and doesn’t have the context for the functionality it brought to Kicad at that moment. Well, and still does obviously. This has been discussed. StepUp is a ‘nettie’. When does it become a waste of time for developers to write code for a problem that has been solved elsewhere? I suppose it’s great for Mega Company that wants ‘lockin’.
Kicad is a community effort with each choosing their mode and level of participation. People need to respect other’s choices.
I decided to add some my thoughts to it - may be based on not understanding the processes.
For me adding sketch to pcb is made by copying pcb file line by line and searching the place to add just few new lines. But loading pcb file I understand as transforming the file format into internal representation of pcb.
And while in first process I just don’t see what could go wrong then for second I imagine that if KiCad will add some new format that plugin will not understand than it would be easy to lost that information during loading/saving. And if it would be something rarely used than it can be not noticed for long time. Based on this I assume some higher risk of losing something in pcb file by loading/saving to different program then original. But may be each compilation of KSU just uses the loading/saving source code from KiCad source and there is no such risk. I just don’t know how KiCad exactly is written and how are plugins written.
But the whole started by me discussion is about really not important ‘problem’
this is valid only for different releases of kicad (i.e. 5 vs 6) … there is no change in kicad internal format in a stable release cycle.
only the user can decide the ‘risk’ compared to the ‘advantage’ … moreover backups or git are there for a reason
When KiCAD started to gain some attention I remember that many people were playing exactly the same ‘risk’ attitude versus an open source sw compared to a commercial ‘trusted’ ECAD.
In general I prefer open source vs commercial closed source… in open source, what I miss I can improve
I just wonted to show what kind of problems I am thinking about, but the problem can arise also if there is no change in format. Are you sure (and can I be sure) that your loading/saving don’t looses something no one uses except me. For example I have added to only few pads in only few my footprints the Solder paste clearance parameter. I think that parameter is not used in any KiCad library footprint but for those my footprints is crucial. DRC will not notice if that parameters will be changed back to 0 and I am sure ‘my footprints are proved to be good’ so I don’t check it myself - I even don’t remember in what footprints I had to add this parameter. That way it can go to production not being noticed.
Will not help in situation I described above. I am afraid of ‘not noticed’ problems and not of file corruption I can use backup at once. Even if I will notice the problem in a process of verification of everything (close to finishing pcb) then I will have choices:
get 5 days old backup (when the bug was introduced) and do all work once more,
fix the bugs - I will have to check all footprints I’m not sure if that were they I have added some parameters no one except me uses.
But I rather expect that if such kind of bug would happen I will not notice it and I will get the information from contract manufacturer when all PCBs and paste mask will be already done and he will notice a problem with elements assembly.
I think I was enough good in programming but long time ago. I learned C++ from Borland Turbo C++ 1.0 we bought in 1988 and then from Bjarne Stroustrup book 1991. Those time I dreamed of writing PCB design program. But the train left and I stayed on the platform. Now I am not able to “what I miss I can improve ” as I think I will even have a very big problem to compile the KiCad myself as I just don’t understand how all that is currently organised. I also never tried what git really is
KSU will touch ONLY layers that are mechanical related (i.e. drawing objects, edges) … there is no risk in other layer/settings for the pcb file…
anyway I see you are on the conservative side and I respect that.
Anyway, in my vision, I need to rely on plugins to speed up my work an get features that I miss in KiCAD.
For example I had to use the fantastic @MitjaN replicate layout plugin which saved me many hours of work and many errors in multiple redesign a pcb section… the ‘risk’ (which was very little knowing @MitjaN coding ability and effort) was so little compared to the fast and accurate result I got for my complex pcb, which I produced without any issue.
And I could cite many other examples in which plugins are extremely useful in a professional pcb job.
So, as I already pointed out, anyone has to decide for his/her self… but IMO plugins are just useful and needed for KiCAD.
@maui, The tutorial is great! Thank you. I had not realized the extent to which KiCAD StepUp has progressed over time. It is truly an impressive and useful plugin.
Currently I just don’t know how to run any plugin in KiCad. KSU is the other thing - FC does everything for me to allow me use it
You need to use the the “Add-on Manager” which can be accessed via the tools menu to install plugins. There are a few useful workbench plugin’s available and a few macro’s too.