Interactive Html Bom Plugin for KiCad

Hi there, I am new here, a big hello to all ! Let me say this plugin is great !!! While I figured most things out, I have a small problem : when I’m trying to save my current settings I get the error message “can’t open user configuration file”. When clicking details it also says “failed to create a temporary filename”. I tried different browsers, I made the plugins directory R/W, but can’t get this error fixed, and I can’t find any hint. Can anybody help me ? Thanks ! (PS. It would be great if this user configuration file can be local to a project. That is because in different projects the extra field names and variant names differ).

What is your OS? I’ve had some reports of similar issues on mac.

Regarding saving settings in project folder, I will consider this feature. But it will probably be in addition to global settings.

It is Windows 10, a relatively fresh installation. Differences from standard KiCad install are that it is on drive D and that the KiCad dir is called Kicad5.

Regarding settings saving global/local that would be perfect !

If I can help in debugging - I am a programmer myself (although only C/C++ and ASM).

Are you using kicad 5? v5.1 hopefully.
Where did you install the plugin? You said you made plugins dir r/w, normally you don’t have to do that manually.

I’m using 5.1.12 (the biggest v6 problem for me is the incredibly slow loading 3D viewer… I guess factor 20 slower… But that is another story).

I copied the content of the ZIP file from Github to D:\Program Files\KiCad5\share\kicad\scripting, directory as from ZIP “InteractiveHtmlBom-master”. I made it RW because I remember from some time ago that a program directory for a normal Windows user is not writable - Microsofts recommended practice was (is ?) to store user data in a user directory, not a program directory.

You shouldn’t install plugins to program files but into a personal folder. I’m not at Windows ATM so I don’t remember where it is.

Slap on forehead… RTFM. I just followed the explanations of a Youtuber who showed the plugin (which showed me how useful the plugin is), but he installed it in Programs…\scripting. That is fine as long as one doesn’t try to save - which he probably didn’t. Would I have read the Install Wiki also I would have seen that installation is supposed to go to Users<>\AppData\Roaming\kicad\plugins\scripting.

Although not easy in the first place because AppData is a hidden directory which is invisible under default Windows settings, and all subdirs beneath Kicad don’t exist (the latter is the cause of the error message “failed to create temporary filename”).

Thanks eelik.
Sorry to qu1ck, I wasted your time. Mea culpa maxima.
Still would love to get configuration file per project.

Ask and you shall receive

image

Locally means in same directory as pcb file. Local settings override global settings.

Get latest from git.

3 Likes

Awesome !
Quick, quicker, qu1ck !!

@qu1ck , How about have a “.ibom” folder inside the project folder to get the header.html / footer.html, as priority of the global one kept on installation folder?

My user case: I usually work in differents projecst and it is usual to change the logo and other indications at the ibom.html output file generated by your plugin.

@qu1ck First off all, Thanks for such amazing plugin. I was wondering if there is a way to make Interactive BOM from gerber or OBD++ Files?

@hildogjr there are few things you can do without any code changes

  1. Have a universal header that will use external graphics via img tag. Put needed graphics in each project.
  2. Use CLI mode and keep a copy of plugin for each customization variant you have.

Long term this will be solved by templating support.

@mgyger are you suggesting I should replace those terms as well? I don’t disagree but just dropping that link is ambiguous.

@Nautilus No, gerbers don’t have sufficient information. I’m not familiar with OBD++ format but assuming it’s another fab input, it will have the same problem. Aside from pcb layer info ibom needs component information, position, shape, pads, and other things.

Thanks for quick response @qu1ck !
Well thats whats great with good obd files. “It can allow additional data in a single file. For example, it can consist of material stack-up, bill of materials, component placement, as well as dimension and fabrication data.”
It contains apsolutely everything you need, positions, shapes, pads, nets and so on.

That option would be great if it could be made!

Is the OBD format openly documented? If not then it is highly unlikely to be supported.

If im not mistaken its not :frowning: . If i can recall corectly it from Siemens Mentor.

Anyhow, i relised that you are the only one that managed to make interactive boms. At work im working with lots of really expensive programs that simply cant do anything similar. Wierdly enough it doesnt matter what file type is in question. But as someone that works in Device Manufacturing (SMT/THT Assembly) + Electrical field. I see a lot of potential in this. One plan for every department and thats priceless. Thats why i was asking about Grbr and bom files. Thats what we usually get form our costumers. :smiley:

1 Like

Well, in the current climate of cancel culture and (implicit) social credit scores it’s maybe good to be informed. To me, it looks like this particular term has an unrelated historical meaning but almost anything could be weaponized nowadays… (I’m kind of surprised that git hasn’t been renamed yet, considering its first few commits…)

1 Like

Hi,
I have Kicad 6.0 on Windows 10. I installed Interactive HTML BOM using the Plugin and Content Manager. It works perfectly from the GUI. However, now I would like to automate it with CLI. I call the script that was installed in C:\Users<username>\Documents\KiCad\6.0\3rdparty\plugins\org_openscopeproject_InteractiveHtmlBom. But get this error:

Traceback (most recent call last):
    File "C:\Users\<username>\Documents\KiCad\6.0\3rdparty\plugins\org_openscopeproject_InteractiveHtmlBom\generate_interactive_bom.py", line 24, in <module>
        from InteractiveHtmlBom.core import ibom
    ModuleNotFoundError: No module named 'InteractiveHtmlBom'

Am I suppose to ALSO install it in the directories listed in the installation wiki page?

While plugin installed from PCM is not really tested/intended to work from CLI I would still consider this to be a bug. CLI mode depends on folder name · Issue #301 · openscopeproject/InteractiveHtmlBom · GitHub

While we see how this can be resolved you can install the plugin manually per wiki instructions but remove it from PCM first, don’t keep both installs.

@qu1ck How does saving the current progress of component placement work?

If I close Chrome while working on the bom file and I reopen it, the progress is kept.
However, the file not actually modified, so opening on a different browser means starting from scratch.

How long is component placement progress kept for? I’m afraid I’ll lose all the work at any given moment.

Thanks in advance

Checkbox state and settings are stored in browser’s LocalStorage. It’s a small file based database tied to your browser profile. It won’t go anywhere unless you explicitly delete cache/data in the browser or log out of your profile.

2 Likes