Release notes Luceda Photonics Design Platform 2025.06.0

Welcome to the Luceda Photonics Design Platform 2025.06.0 release!

Discover the key highlights:

  • New IPKISS Layout visualizer - A redesigned PIC layout visualization tool with improved performance and navigation tools.

  • Simplified Layout Generation Syntax - A new generate(self, layout) method that simplifies PCell layout definitions and reduces code complexity.

  • Length tracing - Calculate optical path lengths between ports to analyze designs and optimize routing.

  • Variability analysis in IPKISS Canvas - Perform variability analysis directly in IPKISS Canvas on existing designs.

  • Circuit Analyzer model configuration - Simplified the model configuration using yaml files.

  • Enhanced Luceda Control Center - Select design kit versions for your designs and view license expiration dates.

For a full list of features, improvements, and bug fixes, please consult the changelog.

New IPKISS Layout visualizer

We’ve developed a new layout visualizer from the ground up. The new visualizer replaces the previous matplotlib-based version with improved performance, stability, and navigation capabilities, making it easier to inspect and iterate on your designs. This important update reflects our commitment to a more visual, intuitive experience across our whole platform.

Packaged four-lane Mach-Zehnder modulator and single MZM in the new IPKISS Layout visualizer.

Packaged four-lane Mach-Zehnder modulator and single MZM in the new IPKISS Layout visualizer.

What’s new:

  • Faster loading and better performance

  • Layer table to show/hide layers

  • Grid toggle and snap-to-grid

  • Show/hide ports and labels

  • Improved zoom and pan controls

  • Consistent appearance with the Luceda Control Center and IPKISS Canvas

  • The visualiser launches in a separate process, so it doesn’t block execution and remains open even after your script finishes.

See the following page for details on the new visualizer’s features and how to still use the previous matplotlib-based visualizer if needed: Visualizing Layouts.

Length tracing

We’ve introduced a new length tracing method, i3.PathLength, that allows to calculate path lengths between any two ports in your circuits. This is useful for analyzing optical path lengths, measuring routing distances in your designs and creating routes with a specific length.

New path length tracing feature applied on an MZI.

New path length tracing feature applied on an MZI.

How it works:

  • Identifies paths between specified ports

  • Uses each component’s trace_length method for calculations

  • Components without this method are ignored (and added to the total length as 0 μm)

  • Supports custom length calculation methods

Check out the API documentation to find out more: i3.PathLength API doc.

New syntax for layout generation

We’ve added a unified def generate(self, layout) method for defining PCell layouts. This replaces the separate _generate_instances, _generate_elements, and _generate_ports methods.

Side-by-side comparison of the layout syntax before and after Luceda 2025.06.

Side-by-side comparison of the layout syntax before and after Luceda 2025.06.

What this means:

  • Define elements, instances, and ports in one place

  • Less code needed for your designs

  • Easier to understand, especially for first-time IPKISS users

  • Enables more advance placement and routing features

See the porting guide for migration details and compatibility information: Porting from IPKISS 2025.03 to IPKISS 2025.06.

Running variability analysis in IPKISS Canvas on existing designs

With this release, codelets work on designs that are exported from layout to IPKISS Canvas (to_canvas). In addition, a new codelet i3.CornerAnalysisCodelet is available to directly run corner analysis on any design in IPKISS Canvas.

Running corner analysis on an existing design (subcircuit of a programmable photonic circuit)

Running corner analysis on an existing design (subcircuit of a programmable photonic circuit)

Simplified model configuration for Circuit Analyzer

To simplify the setup of Circuit Analyzer and to define various analysis routines more easily, we have introduced a new model definition and configuration format. It builds on top of the existing model infrastructure of IPKISS and enables users to define additional parameters that will be varied depending on the analysis method (Corner, Monte Carlo, Location-Aware Variability).

To load a configuration and run a corner analysis, use the following syntax:

import circuit_analyzer.all as ca

with ca.setup('/path/to/temperature_corners.yaml'):
    # print which cells are available for variability study
    ca.model_setup_info(cm)

    # Run a study on all available corners defined in the yaml file
    results = ca.corner_analysis_all_combinations(cm, wavelengths=wavelengths)

To learn how to make configuration files, please check the ca.setup method.

Corner analysis in Canvas using different model configurations

Corner analysis in Canvas using different model configurations

New Luceda Control Center features

We’ve added new useful features to the Luceda Control Center, your central hub to interact with Luceda’s products and create PIC designs.

  • In the Design Kits tab, design kits are now grouped by version number and you’re able to select which design kit version to use for your design. The PYTHONPATH will be updated automatically for you.

  • In the Product Licenses tab, you can now see your license expiration date.

New features in the Luceda Control Center's Design Kits and Product Licenses tabs.

New features in the Luceda Control Center’s Design Kits and Product Licenses tabs.