build-bom - A simple Perl script to build BOMs from schematic files - Page 1
Forum section: electronics / projects

author: nathanpc
author_rank: Unknown
timestamp: September 17, 2013, 09:51:39 pm
content: I just finishedadding KiCAD supportto 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 justopen a Issue on GitHubproviding 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.

author: Noize
author_rank: Regular Contributor
timestamp: September 17, 2013, 10:01:51 pm
content: 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.

author: nathanpc
author_rank: Unknown
timestamp: September 17, 2013, 10:13:20 pm
content: Quote from: Noize on September 17, 2013, 10:01:51 pmQuoteQuote

author: Noize
author_rank: Regular Contributor
timestamp: September 18, 2013, 12:59:44 am
content: Thanks for doing this. I think there is quite a few people on this forum who use Diptrace who will really appreciate this.

author: Noize
author_rank: Regular Contributor
timestamp: September 18, 2013, 01:06:02 am
content: There's already a bill of materials function in Diptrace LOL. That exports in CSV.But I am only a light user alledgedly?

author: nathanpc
author_rank: Unknown
timestamp: September 18, 2013, 01:09:55 am
content: 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).

author: nathanpc
author_rank: Unknown
timestamp: September 18, 2013, 01:12:12 am
content: Quote from: Noize on September 18, 2013, 01:06:02 amKiCAD 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.

author: free_electron
author_rank: Super Contributor
timestamp: September 18, 2013, 01:34:06 am
content: 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.

author: Noize
author_rank: Regular Contributor
timestamp: September 18, 2013, 02:28:20 am
content: Quote from: nathanpc on September 18, 2013, 01:12:12 amNo criticism from me its all good.

author: nathanpc
author_rank: Unknown
timestamp: September 18, 2013, 11:51:17 am
content: Quote from: free_electron on September 18, 2013, 01:34:06 amKeep in mind this is literally the first (public release) version of the script, there's still a lot to improve.

author: tszaboo
author_rank: Super Contributor
timestamp: September 19, 2013, 08:58:07 pm
content: Are there really any PCB design software without BOM export?