diff --git a/doc/source/index.rst b/doc/source/index.rst
index 530d829e0..79a0715f8 100644
--- a/doc/source/index.rst
+++ b/doc/source/index.rst
@@ -70,7 +70,7 @@ This repository contains end-to-end embedding examples that demonstrate how to u
:link-type: doc
.. image:: examples/electrothermal/_static/icepak_logo.png
- :alt: Icepak
+ :alt: icepak
:width: 250px
:height: 200px
:align: center
diff --git a/examples/edb/legacy_standalone/_static/cpw_via_array.png b/examples/edb/legacy_standalone/_static/cpw_via_array.png
new file mode 100644
index 000000000..20b871020
Binary files /dev/null and b/examples/edb/legacy_standalone/_static/cpw_via_array.png differ
diff --git a/examples/edb/legacy_standalone/differential_vias.py b/examples/edb/legacy_standalone/differential_vias.py
index 4bdaabc79..ef3a5776c 100644
--- a/examples/edb/legacy_standalone/differential_vias.py
+++ b/examples/edb/legacy_standalone/differential_vias.py
@@ -1,13 +1,11 @@
-# # Parametric differential vias
+# # Coplanar Waveguide with Via Array
#
-# This example demonstrates how a differential via pair can be created using the EDB Python
+# This example demonstrates how a coplanar waveguide with via array can be created using the EDB Python
# interface.
#
-# The final differential via pair is shown below.
+#
#
-#
-#
-# Keywords: **Differential Via**
+# Keywords: **coplanar waveguide, via array**
# ## Prerequisites
@@ -29,7 +27,7 @@
# ### Start the EDB
# +
-aedb_path = os.path.join(temp_folder.name, "diff_via.aedb")
+aedb_path = os.path.join(temp_folder.name, "cpw_via_array.aedb")
print(f"AEDB file path: {aedb_path}")
edb = pyedb.Edb(edbpath=aedb_path, edbversion=AEDT_VERSION)
@@ -43,31 +41,56 @@
# [configuration file](https://examples.aedt.docs.pyansys.com/version/dev/examples/edb/use_configuration/import_stackup.html).
edb.stackup.add_layer("GND")
-edb.stackup.add_layer("Diel", "GND", layer_type="dielectric", thickness="0.1mm", material="FR4_epoxy")
+edb.stackup.add_layer("Diel", "GND", layer_type="dielectric", thickness="0.5mm", material="FR4_epoxy")
edb.stackup.add_layer("TOP", "Diel", thickness="0.05mm")
# ### Create signal nets and ground planes
# Create a signal net and ground planes.
points = [[0.0, 0], [100e-3, 0.0]]
-edb.modeler.create_trace(points, "TOP", width=1e-3)
+trace = edb.modeler.create_trace(points, "TOP", width=1e-3, end_cap_style="Flat", start_cap_style="Flat")
points = [[0.0, 1e-3], [0.0, 10e-3], [100e-3, 10e-3], [100e-3, 1e-3], [0.0, 1e-3]]
edb.modeler.create_polygon(points, "TOP")
points = [[0.0, -1e-3], [0.0, -10e-3], [100e-3, -10e-3], [100e-3, -1e-3], [0.0, -1e-3]]
edb.modeler.create_polygon(points, "TOP")
+points = [[0.0, -10e-3], [0, 10e-3], [100e-3, 10e-3], [100e-3, -10e-3]]
+edb.modeler.create_polygon(points, "GND")
+
+# ## Create wave ports on the main trace's ends.
+
+edb.hfss.create_wave_port(prim_id = trace.id, point_on_edge = ["-10mm","10mm"], port_name="wport1")
+edb.hfss.create_wave_port(prim_id = trace.id, point_on_edge = ["100mm","0mm"], port_name="wport2")
# ## Place vias
edb.padstacks.create("MyVia")
edb.padstacks.place([5e-3, 5e-3], "MyVia")
edb.padstacks.place([15e-3, 5e-3], "MyVia")
+edb.padstacks.place([25e-3, 5e-3], "MyVia")
edb.padstacks.place([35e-3, 5e-3], "MyVia")
edb.padstacks.place([45e-3, 5e-3], "MyVia")
+edb.padstacks.place([55e-3, 5e-3], "MyVia")
+edb.padstacks.place([65e-3, 5e-3], "MyVia")
+edb.padstacks.place([75e-3, 5e-3], "MyVia")
+edb.padstacks.place([85e-3, 5e-3], "MyVia")
+edb.padstacks.place([95e-3, 5e-3], "MyVia")
edb.padstacks.place([5e-3, -5e-3], "MyVia")
edb.padstacks.place([15e-3, -5e-3], "MyVia")
+edb.padstacks.place([25e-3, -5e-3], "MyVia")
edb.padstacks.place([35e-3, -5e-3], "MyVia")
edb.padstacks.place([45e-3, -5e-3], "MyVia")
+edb.padstacks.place([55e-3, -5e-3], "MyVia")
+edb.padstacks.place([65e-3, -5e-3], "MyVia")
+edb.padstacks.place([75e-3, -5e-3], "MyVia")
+edb.padstacks.place([85e-3, -5e-3], "MyVia")
+edb.padstacks.place([95e-3, -5e-3], "MyVia")
+
+# ### Create simulation setup
+
+setup = edb.create_hfss_setup(name= "Setup1")
+setup.set_solution_single_frequency("1GHz", max_num_passes=1, max_delta_s="0.02")
+setup.add_sweep(name="Sweep1")
# ### View the nets