Last year I had the honor of receiving training from François Vergès - the ekahau ECSE Advanced. Besides stuff around workflow, CAD and reporting there was a topic around using python to read and manipulate ekahau .esx files.
The premise this builds on and that people may or may not know:
ekahau’s .esx files are just .zip files, full of JSON.
Go ahead, just rename one of your projects to .zip, and unzip it.
So I thought to myself that I will use this new knowledge (and my python skills, which are not that great but enough for a few scripts) and make an easy tool: generate a BoM out of an ekahau predictive design. ekahau does not yet have such a function in usable form; it is possible to do this with a report template and some VBA macro of course, but the goal here was to use python.
As naïve as I went into this, I will explain what I did, and why this is not as straight forward as I thought: