Author Topic: build-bom - A simple Perl script to build BOMs from schematic files  (Read 4919 times)

0 Members and 1 Guest are viewing this topic.

Offline nathanpcTopic starter

  • Supporter
  • ****
  • Posts: 138
  • Country: br
    • Innove Workshop
I just finished adding KiCAD support to the script and decided it's good enough to be published/shared. It's a feature-rich script for generating BOMs. You have a beautiful color-coded output to make it easier to read your part identifiers to place the correct value when you're building a prototype and it exports to common formats such as JSON, CSV, and HTML.

Currently it only supports EAGLE and KiCAD, but as noted in the README file if you want your CAD package to be supported just open a Issue on GitHub providing the package name, a schematic file, and a PDF (or image) of the schematic (makes it easier to check if the output is correct), and I'll try to add support for it as soon as I reverse engineer the file structure.

http://nathanpc.github.io/build-bom/

Here are some example screenshots:



Feedback is appreciated.
« Last Edit: September 17, 2013, 11:33:38 pm by nathanpc »
 

Offline Noize

  • Regular Contributor
  • *
  • Posts: 183
  • Country: gb
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #1 on: September 17, 2013, 10:01:51 pm »
That looks very useful. Maybe you could have an option to export in some excel friendly format as well, such as CSV.  If you supported diptrace, that would be great. ;)
« Last Edit: September 17, 2013, 10:03:43 pm by Noize »
 

Offline nathanpcTopic starter

  • Supporter
  • ****
  • Posts: 138
  • Country: br
    • Innove Workshop
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #2 on: September 17, 2013, 10:13:20 pm »
That looks very useful. Maybe you could have an option to export in some excel friendly format as well, such as CSV.  If you supported diptrace, that would be great. ;)

Quote
it exports to common formats such as JSON, CSV, and HTML

Quote
if you want your CAD package to be supported just open a Issue on GitHub providing the package name, a schematic file, and a PDF (or image) of the schematic (makes it easier to check if the output is correct), and I'll try to add support for it as soon as I reverse engineer the file structure.

:)
 

Offline Noize

  • Regular Contributor
  • *
  • Posts: 183
  • Country: gb
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #3 on: September 18, 2013, 12:59:44 am »
Thanks for doing this. I think there is quite a few people on this forum who use Diptrace who will really appreciate this.  :-+
 

Offline Noize

  • Regular Contributor
  • *
  • Posts: 183
  • Country: gb
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #4 on: September 18, 2013, 01:06:02 am »
There's already a bill of materials function in Diptrace LOL. That exports in CSV.  |O But I am only a light user alledgedly?
 

Offline nathanpcTopic starter

  • Supporter
  • ****
  • Posts: 138
  • Country: br
    • Innove Workshop
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #5 on: September 18, 2013, 01:09:55 am »
You're welcome. I've decided to take a peek at the example schematic file you sent me and sadly it is a binary file, which means the reverse engineering process is a lot more complex and it'll probably take a longer time for me to write the code to parse it, so please be patient. I hope the Diptrace users will appreciate the effort that will take to do this. :)

Here's a little progress of my peek into the file:


What I have highlighted there is what I think is the header of a component declaration, since it defines the identifier (Q1) and the model (2N4401), then goes and describes the component (Vbe, manufacture, etc).
 

Offline nathanpcTopic starter

  • Supporter
  • ****
  • Posts: 138
  • Country: br
    • Innove Workshop
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #6 on: September 18, 2013, 01:12:12 am »
There's already a bill of materials function in Diptrace LOL. That exports in CSV.  |O But I am only a light user alledgedly?

KiCAD also contains a BOM function that exports to CSV, but I added support for it anyway because the main reason I wrote build-bom was because I wanted a good way to easily visualize my BOM (color-coded output, etc) and export it.
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8550
  • Country: us
    • SiliconValleyGarage
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #7 on: September 18, 2013, 01:34:06 am »
i don't want to be nitpicking but this is not really a BOM...

A bom should contain:

Designator, Value, Footprint , Installed (some parts may be optional) , manufacturer , manufacturer part number, vendor and vendor part number... at the minimum.

Without this i cannot order any parts or recreate the design as i don't know what parts are used.
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline Noize

  • Regular Contributor
  • *
  • Posts: 183
  • Country: gb
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #8 on: September 18, 2013, 02:28:20 am »
There's already a bill of materials function in Diptrace LOL. That exports in CSV.  |O But I am only a light user alledgedly?

KiCAD also contains a BOM function that exports to CSV, but I added support for it anyway because the main reason I wrote build-bom was because I wanted a good way to easily visualize my BOM (color-coded output, etc) and export it.
No criticism from me its all good.
 

Offline nathanpcTopic starter

  • Supporter
  • ****
  • Posts: 138
  • Country: br
    • Innove Workshop
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #9 on: September 18, 2013, 11:51:17 am »
i don't want to be nitpicking but this is not really a BOM...

A bom should contain:

Designator, Value, Footprint , Installed (some parts may be optional) , manufacturer , manufacturer part number, vendor and vendor part number... at the minimum.

Without this i cannot order any parts or recreate the design as i don't know what parts are used.

Keep in mind this is literally the first (public release) version of the script, there's still a lot to improve.
 

Offline tszaboo

  • Super Contributor
  • ***
  • Posts: 7938
  • Country: nl
  • Current job: ATEX product design
Re: build-bom - A simple Perl script to build BOMs from schematic files
« Reply #10 on: September 19, 2013, 08:58:07 pm »
Are there really any PCB design software without BOM export?  :wtf:
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf