Hey @combatcqb can you share the parts you had this issue with? I’ll take a look but my guess is that the datasheets actually do call for minor variations between the footprints of the different parts.
We do have an 0805 footprint which we use for generics, and its identically every time you use it - maybe you should try using generics instead of specific parts? And we also have an IPC footprint generator which is very deterministic - in case you want to create parts of your own, or tweak the footprints of the parts you were testing.
Either way, once I have the parts list I’ll make sure we didn’t screw up on our side and fix it if we did.
In case you’re interested, the backstory on why it works like this is that early on we decided that every part should have an explicit footprint and an explicit symbol that belong to that part. Rather than having three databases: symbols, footprints and parts where the parts database would link into the symbol and footprint databases.
We felt that the 3 databases would lead us and our users to try and best-fit parts. Instead of creating the correct footprint or the correct symbol as specified by the datasheet, we would instead use whatever we already had that was “close enough”. And from my experience building hardware at scale this burns you hard when you get into big volume, standard footprints and yield issues.
We built a bunch of helper tools to copy symbols and copy footprints out of existing parts, a footprint generator to make footprints fast to make, and a symbol generator to make symbols fast to make. All added up our assumption was (and still is) that this will lead to a higher quality parts library where every part has exactly the correct symbol, and exactly the correct footprint as specified by the manufacturer.
Thats probably why you have 5 “0805s” that are all a little different. But assuming there hasn’t been a breakdown somewhere its because they are each designed exactly as their manufacturer recommended.