Why can't I convert this bitmap? [membrane / rubber button]

Well, as far as I know, CERN is involved now, isn’t it? Anyway, commonly, people who put effort into something want it to be used. I am merely and politely suggesting a major issue in that. Not really “I don’t like your free cakes, so I will go somewhere else!” but “Nice that you make free cake, but it has occasional steel screws baked into it, I cannot really give it to my friends like that.” I would really like our institute to change over from a certain bird of prey, but I will be tarred and feathered if someone runs into such basics limits after the change.

I have already spend half a day playing around in LibreCAD and Inkscape to set up a good bitmap. I have also just been sitting in front of a Kate window for 20 minutes trying to find out why the footprint file isn’t shown in the library. Probably some missing bracket somewhere. I even figured out how to make something like your footprint that you showed me without explaining how it is done or attaching the files. For all I got from here by now, I did all that just to have the footprint that will eventually come out of that process butchered by an upcoming release.
All in all, I find it pretty ridiculous to be accused of a lack of will to put effort in, ESPECIALLY since I asked in almost every post what would be the way to go.

… well, or perhaps I didn’t? I thought you made the round shapes in Cu and then placed two SMD pads in there. I tried that, but I cannot connect the pads, probably because the copper isn’t recognized as part of the pad and design rules would be violated

Could you share your footprint or add a screenshot?
We can not see what your problem is without this information.
(Maybe there is an easy way.)

Also: There is a tool called svg2mod which is designed to convert inkscape drawings to pcb modules. This tool allows you do put stuff on any kicad layer. (Even on layers you can not use in the footprint editor.)

1 Like

You need pads, that overlay the 'graphic on copper (= the stuff you didn’t do with pads, but which are the membrane button structure) so that the layout tool can connect them.

Also, here are some threads (essentially all I could find after 1 min of searching) in regards to this:

2 Likes

Actually, I think I had old traces under the footprint that prevented the connection. It works now. Got a little late yesterday evening. My new footprint looks pretty much like the one in the second posting. Sure, I can attach it, perhaps somebody has some use for it4mm_Rubber_Button.kicad_mod (2.4 KB)

Yes, I did that, but as I said above, there was another problem. In the first version, I had connected the stripe pads in the PCB, and those tracks where still there. BTW: They are one hell to delete, it would be great if KiCAD wouldn’t select layers that are not shown …

Those basically tell me that my shapes can’t have a net, don’t they?

Sounds awesome, but it didn’t work for me at all … here is my SVG:

It is saved as an Inkscape SVG, all shapes are converted to paths and the layers are named, but the result is useless …

As I just found out: Apparently there is no DRC with such copper shape. Neither does the router honor them. I can happyly put a track of another net over it and nobody complains.

The footprint wizard is Stage 5: Awesome.

Here you go :slight_smile:

Uses pads only, so should have no problem with pcbnew.

Also for square buttons :

2 Likes

Sure, that works just as well. Either way, you have no right to demand free cake without screws, nor does the free cake supplier have an obligation to provide you free cake without embedded screws.

I wasn’t accusing you of that. I was accusing you of the “guilt trip” thing people try to do with open software, where you suggest that if other people don’t spend time helping you, then you will go off to find free cake somewhere else and somehow the developers should actually care about that.

Just about every free software has the following disclaimer :

THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

And KiCad is no exception. If you don’t like, you are always free to walk away! You also have the freedom to help improve it, etc.

2 Likes

I am not demanding anything. I am just stating that this may be a major concern against what I think is the goal of the KiCAD team: To get people to use KiCAD (not only because it makes their work meaningful in the first place, but also because it means better library support from third parties and so on.)

As my current project is, IMHO, a pretty nice addition to the open source MySensors project and already on Github, I am also not letting myself being guilt tripped into “just being thankful for everything and shut up”.

But the fact that you are quoting a LEGAL LIABILITY disclaimer suggests that we are on very different pages anyway and for the sake of peace I am out of this discussion from here on.

Well no, it is very far from a major concern. I mean seriously, people are going to throw out KiCad because they can’t do special pads very easily? That’s silly. Your requirement is one of hundreds of improvements to KiCad that people have suggested. KiCad can be used quite well in 99.9% of use cases as it is, filling in the remaining 0.1% is ongoing.

That’s a common misconception. In commercial operations, more users means more sales means keeping your job. For FOSS, none of that applies. It is sometimes said that FOSS developers are “scratching an itch”, I think what motivates them is to create something that is technically good. The fact that others might find it useful is nice, but not a primary motivation. Certainly in all FOSS projects I have seen the developer discussion is always along the lines “what is the best technical solution?”, I have never seen any discussion along the lines “how do we increase our user base?”.

That doesn’t follow. You think contributing to a different FOSS project is somehow relevant here? Of course, you can complain as much as you like, but my point is that it is futile, and after a while just becomes annoying. Being thankful is nice, but the best way to help KiCad to do is find a way to make a positive contribution. Banging on about missing minor features that have been known about for years (and actually are being worked on), is just not helping.

Oh, I forgot to post the footprint wizard. To install it, it should be copied to (kicad)\share\kicad\scripting\plugins where (kicad) is the install location. Windows users may need to do that with Admin permission, start Windows Explorer with “Run as administrator”.
contact_wizard.py (6.6 KB)

2 Likes

In my trials, I have found that transparent backgrounds produce nearly empty (headings, but no drawing data) .kicad_mod files.

1 Like

Thanks, but we found that out already. :slight_smile: It was indeed transparency.

On the contrary, you prefer to flog the dead horse! To be honest, you are the sort of user FOSS projects can do without. Despite getting all help possible, you still complain!

The feature you ask for is currently in development. What more can be done? They can’t wave a magic wand and make the code appear. Someone has to put in the tough slog of writing the code, testing it, fixing bugs. Are you volunteering to do that? Are you helping write documentation? Are you helping users on the forum? Are you donating money to KiCad via CERN? Are you thanking people when they help you solve your problem?

To be clear, that is just my opinion, I don’t represent KiCad project or developers in any way, I am just a user.

Really bad example, Nextcloud are a for-profit company. They make money from users.

Thanks, I appreciate that comment. I did not not want to imply that I got a FU from the KiCAD developers. It was a general interpretation of what it would be like if it would work as bobc descibes it.
I am actually really happy about all the help I got here, even from bobc. Right now, I got a working solution from that which will give me nice PCB, and if I look into the footprint wizard, it seems like I will even get a solution that will not potentially break my PCB at changes without warning (as right now, the copper polygons do not seem to be recognized by the DRC).
To recapitulate: At some point, the information was “you can do it like this, but this will potentially break in upcoming version” (without being mentioned that at that point, a proper solution will be available). I stated that this was irritating and since then I seem to be discussing with bobc I I have the right to be irritated in such a situation or not. This hasn’t been about KiCAD in special for quite a awhile.

I very much think I thanked for helpful comments. Also, the fact that this is in development was a pretty late information, I haven’t complaint about the issue at all after that. The discussion has been mostly a discussion about the general legitimacy of critique on FOSS projects for a long time.

Isn’t that Owncloud? Anyway, in that case is IS a good example, because I know that those particular people have other jobs.
Even if, is everyone using KiCAD at CERN a developer at same time?

If you reread this thread you’ll see that @bobc alluded to the fact that this is expected to change in the near future in his very first post.

He then went on to help you draw the footprint you were trying to achieve.

You then complained some more about why it wasn’t easier to do this in KiCad.

But then again in post 15 …

And you continued to complain. Here we are on post 35 and you’re still complaining about one thing or another.

The question of arbitrary pad shapes comes up from time to time but it is not nearly the problem you seem to think it is. As far as I am aware everyone in the past has managed to work around KiCad’s limitations and create exactly the pad shapes they were after. Support for arbitrary pad shapes in currently in development. We can’t tell you exactly when it will be available but hopefully in the next release.

Now, are you, or are you not, able to create the pad shape you need for your button? Is there anymore help you require?

2 Likes

I would really like to back out of this, but as long as I am accused of stuff that is simply not true, or asked stuff that I clearly stated before, that is really a bit hard.

He clearly did not. “hopefully in future version” does not indicate that at all. The whole situation arose from the fact that in post 6, bobc made clear that the only version I got at that point would be destroyed in future versions and NO other possibility was mentioned at that point.
In post 6, I asked why the possibility to do such things would be removed and if there was another intended way to achieve that (as it is usually the case when hacks get disabled). At this point “Because an intended way is in development” would have ended the discussion with an “Oh great, that’s awesome”.
Post 7: I get told that the reason the possibility for the hack is taken away was a lack of developers.
Post 8: I state that a lack of developers isn’t really a good reason for programming a function that actively moves copper shapes into drawing layers. Further, I clearly and LITERALLY state, that I am NOT complaining about the fact that functions are not programmed by volunteers, but that I am irritated that active restrictions seem to programmed to limit the user’s possibilities.
Post 9-12: Perfectly civil and reasonable speculations why such decisions could have been made.
Post 13: First, IMHO totally uncalled for, implication that I am overly demanding, while on the contrary, I was asking for reasons why things were not left as they are.
Post 14: Again, me wondering about such a decision.
Post 15: Finally the actual answer that it was an upcoming feature. Unfortunately plus

  • the statement that a remote control is an unimportant corner case and
  • some lectures about software development …
    Post 16: Look at that. The promised “Oh great, it is coming, KiCAD yeah” post by me, plus
  • the statement why it is not an unimportant corner case in my opinion and
  • a reminder that the only thing I was asking was how to properly do it. Again, at this point “Sorry, for properly doing it you have to wait for the next release” or “there is a wizard that builts shapes from pads” could have ended it with a “Ok, awesome, then I’ll wait/try the wizard”. Instead
    Post 17: I get accused of demanding free stuff and saying that KiCAD sucks, and not being willing to put effort into the solution.
    Post 18: Me politely explaining why I find this important again and why I feel that I may say that. Me clarifying that I am very much willing to put effort into the solution.
    Post 19: Statement that had problems with the only solution so far.
    Post 20: Offer for help, hint for a possibility to use my Inkscape drawing. Again, thanks for that.
    Post 21: Second helping post, a few links. Again, thanks for that.
    Post 22: Clarification that I independently found the issue, me sharing the footprint in case others need it, some answers to the help posts above
    Post 23:Warning that the only so far suggested solutions puts copper on the PCB that is not controlled by the design rules. I felt that would be something some who was looking for the same solution should know. (Notice that lack of complaining about that.)
    Post 24: Footprint wizard gets suggested. Sounds like the way to go for now.

After that, it seems to escalate and is not about KiCAD but the understanding of FOSS development in general. And I don’t see my self at fault for that. In the whole process, I don’t see me demanding anything, or “guilt tripping” people into
anything.

Go ahead, show me a posting where I state any wish that this should be easier in KiCAD.

I was referring to the gist of your complaints, not necessarily any specific wording. I’m not going to delve any further into who said what when.

What you need to understand is that KiCad restricts what can be placed on copper because the DRC is unable to check everything. For instance, as far as I am aware, the DRC is currently unable to check if an arc placed on a copper layer violates any clearance rules, or if it actually forms a connection, etc. But by manually editing the text files you can place an arc on a copper layer, circumventing the restrictions and rendering the DRC less reliable. In a future version, hopefully the next version, elements on copper layers that would normally be restricted from being placed on a copper layer will automatically be moved to a non-copper layer. Yes, this will break some arbitrary pads that people have created up to now but at the same time arbitrary footprints are also planned to be supported. As far as some RF features are concerned, hopefully the arbitrary footprints will support those as well, if not then that will need to be addressed separately once the needs have been determined.

Hopefully this helps explain why certain changes are being made to KiCad.

2 Likes

That has all been worked out in this thread. And I have repeatedly said that all of that is fine and I do not have any problem with that. The only moment where I stated concerns (NOT complained that it is too much work, NOT said KiCAD sucks and NOT “threatened” to move to other software), was when only the bit on taking the functionality away was around, not the one on replacing it with a proper solution. as soon as that was added, I agreed that that was a sensible solution.
The only reason that we are at post 36 here is that certain people are not willing to understand that I did neither of the things in brackets and I am not willing to let contrary statements stand.

My previous post was simply an explanation, I made no such statements, accusations or implications. The post before that was fairly benign as well, so from this point on I will try to refrain from helping, explaining, or otherwise aggravating you any further.