I'm trying to use EAGLE 9.5.0, hyperlynx-NEW.ulp, Octave 5.2.0, and OpenEMS to layout and simulate PCB antennas. But I'm having trouble even running the hyp2mat tutorial. No version of hyperlynx.ulp that I can find will properly export the tutorial layout. Here's a list of things I've tried and the results.
Case 0: Directly use msl.HYP file provided in the hyp2mat tutorial
This works fine. A nice clean mesh is created, the FDTD timestep is 2.51662e-013 and the OpenEMS simulation completes in about 1 minute.
Case 1: Create a fresh msl.HYP file from msl.brd using hyperlynx-NEW.ulp or Export -> Hyperlynx
The 0-width polygons (i.e. polygon objects with an edge width of 0) in msl.brd cause a failure in hyperlynx-NEW.ulp. The ULP takes ~5 minutes to run and the produced HYP file is enormous at 463 MB. OpenEMS fails to import this huge HYP file with the following message:
command: "c:/openEMS/hyp2mat/matlab..\hyp2mat.exe" --verbose --output-format csxcad --output pcb.m
"msl.HYP"
error: error executing "c:/openEMS/hyp2mat/matlab..\hyp2mat.exe" --verbose --output-format csxcad --
output pcb.m "msl.HYP"
error: called from
ImportHyperLynx at line 190 column 5
tutorial_hyp2mat at line 34 column 5
Case 2: Change the polygon edge width to 0.1 mm and export with hyperlynx-NEW.ulp or Export -> Hyperlynx
From openEMS.de wiki:
polygon edges are always drawn with width 0 (zero).
If I change the polygon edge with to 0.1 mm or any other value, hyperlynx-NEW.ulp runs quickly and produces a normal-size HYP file (20 kB). But the non-0 width polygons cause DetectEdges.m to create extremely fine mesh cells at the polygon edge. The tiny cells lead to a small FDTD timestep (1.33064e-014 s) and therefore the simulation never finishes.
Case 3: Use 0-width polygons with an old hyperlynx.ulp version from EAGLE 5.11
I tried a very old version of hyperlynx.ulp from EAGLE 5.11. The ULP is dated 17.08.2005. This version of the ULP quickly exports the layout with 0-width polygons to a small HYP file (5 kB). But now the Hyperlynx import fails with the following message:
command: "c:/openEMS/hyp2mat/matlab..\hyp2mat.exe" --verbose --output-format csxcad --output pcb.m
"msl.HYP"
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
warning: padstack without metal:
board size:
x = 0.00 : 20.00 mm
y = 0.00 : 20.00 mm
z = 0.00 : 1.50 mm
layers:
signal 23.84 um eps_r 1.00 'Top'
dielectric 0.75 mm eps_r 4.80 'DL01'
signal 23.84 um eps_r 4.80 'Route2'
dielectric 0.75 mm eps_r 4.80 'DL02'
signal 23.84 um eps_r 1.00 'Bottom'
Valid ports:
error: port not found: C1.1
error: called from
GetHyperLynxPort at line 73 column 5
tutorial_hyp2mat at line 37 column 40
Bottom line is, nothing I've tried works. Any suggestions?