Announcements
Due to scheduled maintenance, the Autodesk Community will be inaccessible from 10:00PM PDT on Oct 16th for approximately 1 hour. We appreciate your patience during this time.
Community
EAGLE Forum
Welcome to Autodesk’s EAGLE Forums. Share your knowledge, ask questions, and explore popular EAGLE topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Interactive BOM For Eagle

46 REPLIES 46
Reply
Message 1 of 47
sdalling
11051 Views, 46 Replies

Interactive BOM For Eagle

I ported the Interactive BOM plugin for KiCAD to EagleCAD.  A demo of the plugin working for KiCAD is here. I'm currently looking at getting some feedback on my port to EagleCAD.

 

To use the plugin, run the ibom.ulp within your board file. This will result in a 'pcbdata.json' file being generated. It will be placed in the same folder as your pcb file.

 

Copy this file to be in the same folder as the following files

1) ibom.html

2) index.css

3) index.js

 

Then double click on ibom.html to start the application. This will open your web browser with interact BOM being the focused window.

Its a little rough around the edges in some places, but im working on fixing those (support for rectangle types, bounding box on selected parts sizing). If there are issues feel free to leave comments here or to report errors on my fork of the project on github.

 

46 REPLIES 46
Message 2 of 47
C.Nicks
in reply to: sdalling

Hello,
Thanks for posting this. I've never used the KiCad plugin, but so far this is looking like a very handy tool. I've included a little feedback from first impressions. I especially like the interactive viewer and dark mode.

First run notes:
- pcb data file is placed in project folder if project is open.
- Value field is showing the package footprint and the footprint is showing the reference designator (see screenshot).

Suggestions:
- Add folder picker for output location
- Add options for addition fields, similar to the checkboxes (example, I use MFPN for part number selection)
- Add exclude attribute option to exclude certain parts (documentation frames, notes, mounting locations, etc)
   I use an attribute called BOM and if the value is set to EXCLUDE it keeps it out of my usual outputs.

Best Regards,
Cameron


Eagle Library Resources


Kudos are much appreciated if the information I have shared is helpful to you and/or others.
Did this resolve your issue? Please accept it "As a Solution" so others may benefit from it.

Message 3 of 47
rachaelATWH4
in reply to: sdalling

Hiya,

 

Nice work! I was impressed with that plugin when I first saw the KiCAD version announced on an EEVBlog thread. I've just tried your EAGLE port and it's definitely a useful tool with a lot of promise Smiley Happy

 

I'm in agreement with @C.Nicks in his suggestions. Having the ability to customize the attributes it shows would be extremely beneficial, as well as the ability to exclude certain items from the BOM.

 

One more thing I thought would be excellent would be if you could select a consolidated BOM view which grouped identical parts (maybe on a specified column(s)) and give a total quantity for each and then give the ability to export that to csv, ods, xlsx, etc.

 

A couple of bugs I noticed, neither of the filter boxes at the top seem to be working for me. I'm running it on chrome on macOS.

 

Best Regards,

 

Rachael

Message 4 of 47
rachaelATWH4
in reply to: rachaelATWH4

Also I just noticed that the value field seems to be filled with the device name rather than it's value and the footprint field is replicating the reference designator.

 

Best Regards,

 

Rachael

Message 5 of 47
sdalling
in reply to: rachaelATWH4

Thank you for the feedback. I am in the process of fixing the bugs that you and @C.Nicks have found. right now the filtering and the value/footprint are fixed. I's adding in the user specified fields now.

 

Ill let everyone know when they are complete.

Message 6 of 47
sdalling
in reply to: sdalling

I have updated Interactive BOM to version V1.1. All of the files are in a zip file in Github. The steps to use it are the same as before.

 

A summary of the changes

  1. I have added a file picker for where the output file should go.
  2. Fixed all fields so they display the correct data
  3. Added setting for displaying combined or non combined parts by value

 

I have a few questions that I want to get peoples opinions on.

  1. For removing entries (as per @C.Nicks), would it make more sense to do this at the Eagle ULP level or at the application level? I am thinking of doing this at the application level and the user specifies in the app settings menu an attribute that to filter the BOM.
  2. Does having the revision in the middle of the GUI make sense? Should this be a board attribute? 
  3. Having a lot of configurations on the settings tab can become troublesome since they need to be reentered every time. A solution to this would be to have an external config file where a user can put in there defaults. Would adding another file be asking to much from the user?

 

 

 

 

 

Message 7 of 47
sdalling
in reply to: sdalling

I have addressed all of the comments of both @C.Nicks and @rachaelATWH4 except for exporting the BOM to an external file. I am calling the release V1.4, and can be found in the Release folder on Github.

 

If anyone as they use it find bugs or has suggestions for future development let me know and I will add it to the TODO list.

 

Message 8 of 47
iquacker
in reply to: sdalling

This is a great app! Thanks for making it! 

 

When I showed it to my prototype assembler, the first thing she asked is if she could click on a footprint on the board and have it show up on the BOM. One reason she wants it is because our boards are usually very tight. For this and for IP reasons, we never place part names on the silkscreen layer. Hmmm...

 

Possible in the future?

 

Regards -

Message 9 of 47
sdalling
in reply to: iquacker

This would actually be pretty cool. I will add the the back and forth ability to the TODO list.

 

 

Message 10 of 47
sdalling
in reply to: sdalling

@iquacker, I implemented the clicking on parts in the schematic to highlight them in the schematic and BOM.

It is release V1.6.

 

Let me know what you think and if there are any other changes you come up with or problems/issues you discover.

 

Message 11 of 47
iquacker
in reply to: sdalling

This is great! Thanks!

I tried my best to fool it or crash it. No issues found.

 

One more feature suggestion that might be a bit much to ask for:

 

Can you get the BOM to group by value? E.g. all parts with the same value on the same line? Then if you click that line, all those parts light up at the same time. And of course, vice versa. If you have the BOM arranged this way and click on any of the parts in a group, they all light up.

 

Possible?

 

Best regards -

Message 12 of 47
sdalling
in reply to: iquacker

@iquacker, for sorting by value should be within the software. To enable click on the gear icon in the top right. Then check the box for "Combine By Value". This should then combine all elements that are the same value in the BOM, and highlight all of them on the board when selected.

 

 

Message 13 of 47
iquacker
in reply to: sdalling

Ha! Perfect!

Message 14 of 47
C.Nicks
in reply to: sdalling

Hey @sdalling
That you for all of the updates to this. I'm just now getting around to testing it out again as I have a good use for it while assembly some new test boards.
There is an issue with 1.6. Nothing is being displayed. I'm running MacOS 10.14 and Eagle 9.2.

Best Regards,
Cameron


Eagle Library Resources


Kudos are much appreciated if the information I have shared is helpful to you and/or others.
Did this resolve your issue? Please accept it "As a Solution" so others may benefit from it.

Message 15 of 47
sdalling
in reply to: C.Nicks

@C.Nicks, I was looking at this tonight. I  was able to get the behavior you described when the newer version of  IBOM.html is used with an old version of the ibom.ulp.

 

I should of specified that the new version needs to use the updated ULP in my release notes.

 

If switching does no work, what browser are you using?

 

Message 16 of 47
C.Nicks
in reply to: sdalling

Everything was unpacked form the latest 1.6 version.

Best Regards,
Cameron


Eagle Library Resources


Kudos are much appreciated if the information I have shared is helpful to you and/or others.
Did this resolve your issue? Please accept it "As a Solution" so others may benefit from it.

Message 17 of 47
aholtzma
in reply to: sdalling

FYI if you use BOM-EX and its associated DNP and BOM attributes, I've added support for these these to InteractiveBOM (available in github).

 

There is also a companion python script to annotate "Customer Ref" part numbers from your parts database. This is necessary because Eagle itself doesn't know anything about the part database.

Message 18 of 47
JamesLE32J
in reply to: aholtzma

Hi @sdalling, thanks very much for your work on this.

 

I have an issue where it's not rendering my board correctly and also not displaying some of the silkscreen text. See image.

 

I'm using V1.6 on Eagle V9.3.1

 

A couple of improvements for work flow would be

  • Being able to edit the attribute fields.
  • Reordering the attribute headings.
  • Having the ability to export the BoM would also be highly beneficial.

Thanks and well done 🙂

 

PCB Display Errors.png

Message 19 of 47
sdalling
in reply to: JamesLE32J

This does look like an issue. There are a few things that if you can provide will make troubleshooting this a lot easier.

  1.  Board file that caused the issue or minimum example that can create the issue
  2.  Associated PCB pcbdata.json file


Looking at the image I do not know what text is being displayed incorrectly. Could you expand upon this a little bit.

Ill add the following to Github as feature requests so that I can track them.

  1.  Being able to edit the attribute fields.
  2.  Reordering the attribute headings.
  3.  Having the ability to export the BOM would also be highly beneficial.

 

If you could answer a few questions that would help me out making sure that I fully understand what you are asking. For 1, you want to be able to edit the attributes for a part within iBOM, and have those changes reflected in the JSON file? For 2, the user should be able to reorganize the headings however they want within iBOM?

If you would rather send this as a private PM, that is fine or you can respond to this thread.

Message 20 of 47
JamesLE32J
in reply to: sdalling

I have attached a board file with a basic outline shape (can't give you the whole board so I hope that's OK?) and also  a modified pcbdata.json file.

 

It seems to be some text on the tPlace layer but it has displayed others.  See the image below where I have left the tPlace layer on.  I've circled a couple of bits of text that is missing from the json file.

 

1 - Yes.  Edit the attributes in iBoM and have them reflected in the json file.

2 - Yes.  Arrange the headers as we'd like within iBoM.

 

My thinking is that when you are able to export to .csv, txt, then these changes can be exported too which would allow formatting in to our own BoMs easier.

 

PCB Text.png

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk Design & Make Report