Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BOM data model fails when KiCAD BOM contains parts with multiple footprints #778

Open
plaes opened this issue Nov 22, 2024 · 2 comments
Open
Labels
bug Something isn't working

Comments

@plaes
Copy link
Contributor

plaes commented Nov 22, 2024

Describe the bug
KiCAD's BOM import feature seems to break down whenever a board is using components for which there are multiple footprints used on the board as I can have only unique components in the PartDB BOM.

For example, if I have a board using 1k 0402 resistors, but with two different footprints for placement:

9;"R42,R16,R17,R13,R18,R15,R12,R19,R14";"R_0402_1005Metric_Pad0.72x0.64mm_HandSolder";9;"1k";;;
12;"R66,R67,R11,R69,R25,R68,R65,R29,R28,R61";"R_0402_1005Metric";10;"1k";;;

To Reproduce
Steps to reproduce the behavior:

  1. Fetch the BlueSCSI 50pin desktop project from https://github.com/BlueSCSI/BlueSCSI-v2/tree/main/hardware/Desktop_50_Pin and generate BOM in the PCB editor
  2. Import BOM...
  3. Assign that 1k component to lines 9 and 12
  4. Attempt to save...

Expected behavior
Not really sure what would be good solution here...

Screenshots
If applicable, add screenshots to help explain your problem.

Server Side

  • Part-DB Version: v1.14.4
  • PHP Version: (the one that comes with docker image)
  • Database Server: PostgreSQL
@plaes plaes added the bug Something isn't working label Nov 22, 2024
@plaes plaes changed the title KiCAD BOM importer fails with project where part has multiple footprints BOM data model fails when KiCAD BOM contains parts with multiple footprints Nov 22, 2024
@jbtronics
Copy link
Member

I would say that the actual KiCAD footprints are not that relevant for Part-DB. As long as the same part is used for the different footprint variants, it does not really matter for Part-DB project system and you can just unify both BOM entries into a single one.

This is something you will need to do by hand however, as its not really possible to detect what parts you really intend with the value and the case that different footprints mean different components is the more common case.

@plaes
Copy link
Contributor Author

plaes commented Dec 2, 2024

I would say that the actual KiCAD footprints are not that relevant for Part-DB. As long as the same part is used for the different footprint variants, it does not really matter for Part-DB project system and you can just unify both BOM entries into a single one.

This is something you will need to do by hand however, as its not really possible to detect what parts you really intend with the value and the case that different footprints mean different components is the more common case.

How hard would it be to support single component multiple times in BOM (or some kind of "merged" rows feature)?

If I take a look at current BOM output - Desktop_50_Pin_TopConn.csv of BlueSCSI-v2, then this one has at least 5 of those "annoying" components:

  1. 0.1uF -> 3 rows (C_0805_2012Metric, C_0805_2012Metric_Pad1.18x1.45mm_HandSolder and C_0805_2012Metric_Pad1.15x1.40mm_HandSolder
  2. 1k -> 2 rows (R_0402_1005Metric and R_0402_1005Metric_Pad0.72x0.64mm_HandSolder)
  3. 20uF -> 2 rows (C_1206_3216Metric and C_1206_3216Metric_Pad1.42x1.75mm_HandSolder)
  4. 4.7k -> 2 rows (R_0603_1608Metric_Pad0.98x0.95mm_HandSolder and R_0603_1608Metric)
  5. 4.7uF -> 2 rows (C_0805_2012Metric_Pad1.18x1.45mm_HandSolder and C_0805_2012Metric_Pad1.15x1.40mm_HandSolder)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants