bennymeg / Fabrication-Toolkit

An JLC PCB Fabrication Plugin for KiCad
Apache License 2.0
300 stars 52 forks source link

No way to override top/bottom #64

Closed AlexanderBrevig closed 9 months ago

AlexanderBrevig commented 1 year ago

Some footprints may have a shadow part on the other side, such as the MX keys with hotswap option. That is, the footprint itself may be on top but the wanted hot swap part is to be placed on bottom.

Fisheiyy commented 1 year ago

What do you mean "No way to override top/bottom" im not sure what you are referring to even though you give the example of a MX key footprint, what needs to be overridden on the top/bottom side?

AlexanderBrevig commented 1 year ago

Part placement file has bottom and top. Naturally this follows the footprint placement on the board (i.e the MX is placed on top, but I want to actually mount a part on the bottom).

Rotation and position can be offset, this is a request for adding the same to top/bottom, so I can force the MX to report as a bottom part.

Fisheiyy commented 1 year ago

Part placement file has bottom and top. Naturally this follows the footprint placement on the board (i.e the MX is placed on top, but I want to actually mount a part on the bottom).

Rotation and position can be offset, this is a request for adding the same to top/bottom, so I can force the MX to report as a bottom part.

This sounds like a problem with the footprint rather than this plugin, have you tried flipping the footprint in kicad or does that affect it somehow?

AlexanderBrevig commented 1 year ago

I found it easier to just add a PR so you can have a look :) There is nothing wrong with the footprint.

https://github.com/daprice/keyswitches.pretty

AlexanderBrevig commented 1 year ago

Just to clarify, it's definitely not a very common thing to do, but I also have a few parts in my library that does this. It would save me (and everyone who makes keyboards using the defacto standard lib) having to manually edit the placement file.

Fisheiyy commented 1 year ago

This will enable the use of footprints that are placed on one side, but ha actual mounting on the other side (such as hot swaps for MX switches).

This sounds like a problem with the footprint like I was saying, where it's technically on the front but the connections are on the back, nevertheless this feature could be useful in other situations still

AlexanderBrevig commented 1 year ago

This is common to do in order to make products that are usable from both sides. Such as a split keyboard, you save a lot being able to use the same PCB for both sides. This means you typically make ambigous footprints that can mount either side.

Placing two footprints is much more error prone than having both in the same CAD foorprint (so they are always aligned).

Hope you can take a look and let me know :) If I should maintain my own fork I can do that too :)

Thanks for an awesome plugin!

MajorArkwolf commented 10 months ago

@AlexanderBrevig I was about to do a PR to add this feature as well. This can be caused by a footprint issue but it gets muddier when you have a footprint that uses both the top and the bottom of the PCB

An example of this is the Kahil V2 hot-swap switch where the hot-swap bar is soldered to the bottom but the other items are on top. Since these files are auto-generated from a script, the maintainer of that library hasn't done anything special to account for this oddity.

Personally, I would really like this feature so I can overwrite top to bottom and not have to worry about it again in the future.

AlexanderBrevig commented 9 months ago

Do you have the ability and time to test this branch @MajorArkwolf?

MajorArkwolf commented 9 months ago

I can test it if it’s been abandoned.