Interactive Html Bom Plugin for KiCad 5.0


Thanks for the reply!
I do indeed have only KiCad 4 installed and using the script standalone resulted in a bunch of funky errors. I do agree with you that maintaining multi-version support for such a plugin at this point seems a waist.
Good to know that with having KiCad 5 installed on my computer I could use the plugin with older project thought!
Good luck with the development!


I just committed to master few fixes for compatibility with KiCad 4. Tested on a relatively complex board and it works. Let me know if it works for you, if not file an issue on github with console output and preferably board file.


It isn’t interactive, but for some group project board assembly for my maker group I just took screenshots with each line in the BOM highlighted. I’m currently stitching them all together into a document with the order that I want so I can hand out hard-copies. Easier than trying to make sure everyone is provided a computer, and keeps computers away from novice solderers. :wink:

I toyed with putting up a projector, but that would force the quick solderers to sit around with their thumbs up their a$$es while waiting for the slower people in the group. Interruptions in flow like that are destined to allow attention to wander, sidebar conversations to start up, and slow everything down slower than the slowest assemblers.

While a hardcopy output would be nice, DHTML and hardcopy don’t mix well. I doubt it would be worth the development time for my corner case.


That I actually can help with.
I guess you could even print that into a (static) pdf if you want.


I updated the script from the master branch and everything started worked like a charm! Great work, thanks alot for the effort! I tried out the script with two different KiCad 4 boards without any issues. This tool will surely prove extremely useful for my work.

Ubuntu 17.10 with Python 2.7.14


One more beta released

Now your settings are stored in browser, you can pan and zoom the board and you can mark components as placed/soldered/ordered/in storage/whatever.
Also Kicad 4 users can now use it too (from command line).

Edge was casualty of progress. Press F to pay respects.

Demos are updated.


Works great for me in Gentoo, directly from pcbnew! I guess I’m building everything correctly to get around the python issue. Nice work!


Congrats for the new features included in this beta release

Thanks for zoom implementation


Good tool. However i have one minor nit-picky complaint.
It might be better to use the F.Fab and B.Fab layers instead of (or in addition to) the silk layers. These are the layers intended for documentation (and for fabrication information) The silk layers might be quite empty on boards with high density. (Silk printing has minimum copper to silk clearances, and minimum line widths which do not affect your tool.)

All footprints in the official lib are setup to be used that way.


I think it should be an option. IMHO this tool helps the assembler load the board based on looking at the board. Since the Fab layers don’t show on the finished board, using them should be a option. Granted, having them as an option to turn on would allow assembly notes to be put on the Fab layers w/o cluttering the board with extra silkscreen.


My thoughts exactly. I’ll add Fab layers as an option later.


I installed (whatever it is) the latest version of this amazing tool on my Kicad5.0, but it does not show any ibom button in the PcbNew. But I didn’t any got any problem with the previous version.


Are you saying that you had ibom button with previous version (0.6?) of the plugin but you don’t have it with 0.7?

When you updated did you completely remove the old folder? Do you use git checkout or do you download release zip file? Did you exit and completely restart kicad, not just pcbnew, after update?



I completely removed the old folder. I downloaded the Zip from GitHub and restarted the kicad and also the computer


What is your OS? Can you run plugin from command line or scripting console? See instructions on github for how to do that.

Edit: just tested completely deleting my installation and installing it from released zip, works for me.

Edit2: noticed that v0.7 zip doesn’t have intermediary ‘InteractiveHtmlBom’ folder in it, while previous zips did have it. You are supposed to put all files in subdirectory of your plugins folder. Maybe that’s what is causing confusion. I’ll update the release zip to have the folder.


It is also hoped that IE (including edge) can be supported. I updated to v0.7. Then you need to install additional browsers. So it’s back to v0.6.


I am using windows 10 and installed in \KiCad\bin\plugins and also tried in \KiCad\bin\scripting\plugins but didn’t got the result. I also tried to install V0.6 but didn’t work. It’s wierd. Is this mean anything with my kicad installation.

Application: kicad
Version: (5.0.0), release build
wxWidgets 3.0.3
libcurl/7.54.1 OpenSSL/1.0.2l zlib/1.2.11 libssh2/1.8.0 nghttp2/1.23.1 librtmp/2.3
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
wxWidgets: 3.0.3 (wchar_t,wx containers,compatible with 2.8)
Boost: 1.60.0
OpenCASCADE Community Edition: 6.8.0
Curl: 7.54.1
Compiler: GCC 7.1.0 with C++ ABI 1011

Build settings:


Maybe post the stuff from “about->kicad-> copy version info” here


I just noticed something. Copies of reference and value fields are not handled correctly (%R is not replaced by the reference of the footprint, %V is also not replaced by the value)


IE is not a browser, it’s a relic. So many JS features are not supported that I won’t even make an effort. Edge kinda works in the latest from git but it had issues from the very first version. It doesn’t save checkboxes or settings, but hey, at least it’s not worse than it was before 0.7.
Btw issue you reported earlier about crashing on silkscreen polygons was fixed too, you might want to update to latest from git.

That’s your issue, you should put it in subdirectory of KiCad/share/kicad/scripting/plugins
so you have KiCad/share/kicad/scripting/plugins/InteractiveHtmlBom/, KiCad/share/kicad/scripting/plugins/InteractiveHtmlBom/ibom.html etc.