Footprinter.xyz - Quick footprints from component datasheets


#1

Hi all,

I’ve been hacking away at a little project you might find useful: http://footprinter.xyz/

It’s a very basic footprint editor that lets you draw pads on top of the recommended footprints from component datasheets. I find this a much quicker way to enter footprints as you can immediately verify that they match the manufacturer’s specification.

There’s more information on GitHub at https://github.com/fredgreer/footprinter


#2

Hey that looks interesting, i am going to have to play with this… Thanks for making your work available to us.


#3

Looks like a fun Idea to quickly make footprints from available drawings.
I will probably have forgotton this tool by the time I would want to use it, but I played a bit with it and want to give some feedback:

1). The initial scale factor, is it measured from the inside, outside, or middle of the thick black lines:
image

2). Drawings can be bad, and have different scale factors for X and & directions.
A simple solution would be to draw a rectangle for the measurement instead of a linear scale and enter measurements for X and Y.

3). My first thought was to pick the largest size for the measurement, which is the 14.05mm vertical measurement, but your ruler only does horizontal. 2). would fix that.

4). When drawing the pads, they are red with a light colored border. This border makes it un-intuitive how big the pad is going to be. Just a few crosses in the corners or drawing a (transparent) rectangle makes measurements easier to do accurate.

5). You can move the mouse mighty fast in the demo here. How do you do that? :slight_smile:


#4

If I may add some suggestions as well:

  1. Copy and paste of pads, that way you have to “draw” just one and the others you can simply copy, guarantees the same size for all similar pads without having to type or check the size.

  2. Limit the direction of movement for a pad, that way if you copy a pad already and all the other ones are going to be at the same height (Y direction) you just have to find the corresponding lateral distance (X direction)

Nice work! It looks great.


#5

most of the times, these are not to scale!
So I would ask you to be cautious.


#6

Thanks for the feedback Paul.

The initial scale factor, is it measured from the inside, outside, or middle of the thick black lines

It’s measured from the outside edge.

A simple solution would be to draw a rectangle for the measurement instead of a linear scale and enter measurements for X and Y.

This is an interesting idea, thanks.

This border makes it un-intuitive how big the pad is going to be.

This makes sense, I plan to remove the borders as they don’t add any value.

You can move the mouse mighty fast in the demo here. How do you do that?

A steady hand and some movie magic :wink:


#7

Thanks der.ule,

Copy and paste of pads

This is already implemented with the usual Ctrl-C / Ctrl-V keys.

Limit the direction of movement for a pad

This makes a lot of sense.


#8

Thanks mate! I’ll give it a shot for sure


#9

Rows of pads are very common in IC packages.
An easy to program but yet very powerfull feature would be to draw a whole row of pads in one go.

So you can enter a number somewhere for the amount of pads you want.
You can enter whether you want them horizontal, vertical or slanted ( Just an enter box for degrees would suffice for all of these).

Then the row of pads stays locked together in a straight row.
If you then move one of the outer pad corners, the whole row of pads is stretched as if it was a single pad. If you move one of the inner pads, then the widht of all the pads is adjusted.

Being able to manipulate such a whole row of pads makes drawing them a lot faster, and because you mostly have to manipulate the ouside of all the pads, which covers more pixels of the picture, it is also more accurate.

A snap to a grid feature also seems sensible. At least the pitch of component pads are most often nice round numbers.

Do you have some experience with FreeCAD?
I really like the way in FreeCAD, and how parametric drawing works.

Parametric drawing means you first just draw something that vaguely resembles what you want to draw, and then later you add refinements. and these refinements can also be adjusted later individually.

In FreeCAD when you’ve drawn an object and then added a length measurement, you can simply click on the mesurement, and type a new number for the size of that object (or use the scrollwheel to adjust in 1mm steps).

I like to work exact, and am not a big fan of lining things up around pixels from some photograph.

When added a row of pads (such as the example of 5 pads on top) then I would very much like to simply type in a number to have an exact pitch of 7.5units (probably mm) between te first and the last.

Your example is a very weird footprint though. Pads 1 and 4 are symetrical, while pad 2 is 1.5 from the center line and pad 3 is 1.65 from the center line. Whe does this footprint come from? Is it from a real component?

In FreeCAD there is already a way to import a picture, and scale the picture for reverse engineering purposes. I experimented once with it and it worked pretty good to determine the size of some gears I made a photograph from.

In KiCad the existing Footprint Editor is also pretty good. If it had a way to import a picture (pdf) as background and scale it that would be much preferable to me then some web page.


#10

@paulvdh you probably missed that in FreeCAD there is already a tool to create a footprint and export it to KiCAD directly…


image


#11

Not really,
I am aware of StepUp (but still good it’s mentioned here).
I just have not had a need yet to do much with it.

When writing my previous post I had some doubts of the merits of Footprinter.
It may be a quick simple way to get a footprint, but if (after the learning curve) StepUp is almost as easy to use as Footrprinter, then at least for me it is of no use.
FreeCAD (and it’s plugins) is another project I find interesting and am willing to invest time in, and it probably deliveres better footprints (with silkscreen, etc) than this Footprinter wil.