16
\$\begingroup\$

I'm an electronics newbie, and recently purchased empty PCBs for GoodFET and Ubertooth.

While trying to put together an order for all the parts in the bill of materials, I realized I'd very much like to have a computer parseable format I could dump into a parts search engine like octopart.

I started hacking up a simple website to do this using the octopart API but I can't find any sort of xml standard for a BoM.

Has anyone heard of such a thing? I'd be particularly interested in some sort of standard format that's available from gEDA, EagleCAD, etc

\$\endgroup\$
9
\$\begingroup\$

I don't think there is a standard, but that doesn't mean that you can't make one.

I've written my own part searcher for EAGLE and Kicad which loads a bom from EAGLE or the parts list from kicad, produces search URLs for my preferred supplier and accepts SKUs in return.

What I'd do is to specify an xml format to hold the BOM and write a bunch of converters that can produce that format.

My eagle and kicad scripts are here: https://github.com/dren-dk/HAL900/tree/master/door-ctrl/kicad2elfa

\$\endgroup\$
11
\$\begingroup\$

What I've run across most often is .CSV files with user-customizable headings. I don't know of any more specific standard for BOMs.

\$\endgroup\$
  • 2
    \$\begingroup\$ This is what I use as well. Easy to parse into or out of, a lot easier to hand-edit than XML, and easy to import/export from Excel or other spreadsheet software. \$\endgroup\$ – Kevin Vermeer Feb 7 '11 at 14:51
3
\$\begingroup\$

Arena Solutions actually offers a free tool to assist with what you're trying to do called PartsList. (There is a $9 price tag listed on the website, but I think it's currently free to try as it was recently developed.) PartsList will let you create a PDX version of your BOM (which it sounds like you are trying to do.)

You can upload your CSV list of parts into the PartsList, click "autofill" to grab the rest of the documentation from Octopart, and then share the list with whoever. You share by exporting as a CSV or PDX file. (PDX = Product data eXchange (PDX) and is an XML-based standard that is commonly used for file sharing in manufacturing.) When you share files as a PDX, you're sharing a searchable, in-context form of the BOM. Arena also offers a free, cloud PDX Viewer, so you can look at the PDX file you created.

Here are some links to these tools, hopefully this helps you - -

PDXViewer - http://www.arenasolutions.com/pdxviewer/?ifid=pdxblog1 PartsList - http://www.arenasolutions.com/partslist/

\$\endgroup\$
1
\$\begingroup\$

Arena now has a BOM manager that integrates with the Octopart API, this is really the sort of thing I wanted.

\$\endgroup\$
1
\$\begingroup\$

The Open source hardware platform Solderpad uses a JSON based format, see this example. Eventually the data is tabular with three fields/columns:

  • designator (a list of identifiers to refer to parts in your design)
  • value (an identifier of the part)
  • description (textual)

The bill of material is presented this way with links to http://octopart.com. Unfortunately there seems to be no unique standard of part-identifiers, isn't it?

\$\endgroup\$
0
\$\begingroup\$

Digi-Key also has a BOM manager that allows you to upload a BOM as a either a text file, CSV file, or spreadsheet (XLS), which includes a column with a Digi-Key part numbers and another with quantities, and it will automatically create an order from that BOM. The BOM can contain other columns of your choice (you specify the mapping when you upload the file), so you can use the same file to capture whatever information you need for your project.

\$\endgroup\$
0
\$\begingroup\$

Here is a good online example of Bill of Materials. You can export the BOM to excel and save to local as a BOM template.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.