Common issues and solutions for GDSFactory+. Many issues can be diagnosed by checking the GDSFactory+ Output panel (View > Output > select "GDSFactory+") or by asking the AI agent.

Quick Navigation


Installation Issues

Extension Not Loading

Symptoms: The GF+ icon doesn't appear in the sidebar, or the extension panel is empty.

Solutions:

  1. Restart VSCode after installing the extension
  2. Make sure you have opened a GDSFactory+ project folder (one with a pyproject.toml file)
  3. Check the VSCode Output panel (View > Output) and select "GDSFactory+" from the dropdown for error messages

API Key Not Working

Symptoms: "Invalid API key" or authentication errors.

Solutions:

  1. Verify your API key is correct at prod.gdsfactory.com under API Keys
  2. Check that the key is properly saved in your settings file:
    • macOS/Linux: ~/.gdsfactoryplus/gdsfactoryplus.toml
    • Windows: C:\Users\<YourUsername>\.gdsfactoryplus\gdsfactoryplus.toml
  3. Generate a new API key if the current one isn't working

UV Not Found

Symptoms: Error message about uv not being installed.

Solutions:

  1. Install uv by following the official installation guide
  2. Restart VSCode after installation
  3. Verify installation by running uv --version in the terminal

Python Environment Issues

Virtual Environment Not Created

Symptoms: Import errors, "module not found" messages, or the server fails to start.

Solutions:

  1. Open a terminal in your project directory and run:
    uv sync
    
  2. Verify the .venv directory exists in your project folder
  3. Check that pyproject.toml is present and correctly configured

Wrong Python Version

Symptoms: Syntax errors or incompatible package errors on startup.

Solutions:

  1. GDSFactory+ requires Python 3.12. Check your version:
    python --version
    
  2. If using a different version, install Python 3.12 and recreate the virtual environment:
    uv python install 3.12
    uv sync
    

Platform-Specific Issues

Windows

Recommendation: For the best experience on Windows, install WSL (Windows Subsystem for Linux).

Common Windows issues:

  • Path issues: Use forward slashes (/) in paths or escape backslashes (\\)
  • Permission errors: Run VSCode as Administrator if you encounter permission issues
  • Long path errors: Enable long paths in Windows settings

macOS

  • Xcode required: Make sure Xcode is installed

Network Issues

Firewall or Proxy Blocking Access

Symptoms: Timeouts, connection errors, or features not loading.

Solutions:

  1. Ensure your firewall allows connections to GDSFactory+ servers
  2. If behind a corporate proxy, configure VSCode to use your proxy settings
  3. Try temporarily disabling VPN if you're using one

Cloud Workspace Not Loading

Symptoms: Workspace link doesn't work or shows an error.

Solutions:

  1. Wait a minute for the workspace to fully initialize
  2. Check the Docker logs in the Customer Portal for error details
  3. Try creating a new workspace if the issue persists

Component Issues

Components Not Building

Symptoms: Components are greyed out or show build errors.

Solutions:

  1. Click the play button at the top of the Components menu to trigger a build
  2. Check the Output panel for error messages
  3. Check GDSFactory logs for build errors
  4. Verify your PDK is correctly configured in pyproject.toml:
    [tool.gdsfactoryplus.pdk]
    name = "your_pdk_name"
    

DRC Not Running

Symptoms: DRC check doesn't complete or shows no results.

Solutions:

  1. Make sure you have the correct PDK configured in pyproject.toml
  2. Check that the component GDS file exists and is valid
  3. Review the timeout setting in your configuration. If your design is large, you may need to increase the timeout value.
  4. Check the Output panel for specific error messages from the DRC engine

Layout Viewer Issues

Viewer Shows Blank or Doesn't Load

Symptoms: The layout viewer panel opens but shows a white/blank area or a loading spinner that never completes.

Solutions:

  1. Restart the GDSFactory+ server: open the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) and run "GDSFactory+: Restart Server"
  2. Check that the server is running by looking at the Output panel for "GDSFactory+"
  3. If using a VPN or proxy, it may interfere with the local WebSocket connection — try disabling it temporarily

Layout Not Updating After Code Changes

Symptoms: You edited your Python code but the viewer still shows the old layout.

Solutions:

  1. Make sure the file watcher is running — check the Output panel for watcher activity
  2. Save the file (the watcher triggers on save, not on edit)
  3. Manually trigger a rebuild by clicking the play button in the Components panel

Using GDSFactory+ Over SSH

GDSFactory+ works with VSCode's Remote-SSH extension, allowing you to run the extension on a remote server while viewing layouts locally.

How It Works

When using VSCode Remote-SSH:

  1. The GDSFactory+ extension runs on the remote machine
  2. Communication between the extension and server happens locally on the remote machine
  3. VSCode automatically handles forwarding the webview content to your local machine

Setup

1. Install the Remote-SSH Extension

In VSCode on your local machine:

  1. Open the Extensions panel (Ctrl+Shift+X / Cmd+Shift+X)
  2. Search for "Remote - SSH"
  3. Install the extension from Marketplace

2. Connect to Your Remote Server

  1. Press F1 (or Ctrl+Shift+P / Cmd+Shift+P) to open the Command Palette
  2. Type "Remote-SSH: Connect to Host" and select it
  3. Enter your SSH connection string: user@your-server.com
  4. Select the platform of the remote machine (Linux, macOS, or Windows)
  5. VSCode will open a new window connected to the remote server

Tip: To add a host for easier future connections:

  1. Open Command Palette and select "Remote-SSH: Add New SSH Host"
  2. Enter: ssh user@your-server.com
  3. Select a config file to save to (usually ~/.ssh/config)

3. Open a Project on the Remote Server

Once connected to the remote server:

  1. Click FileOpen Folder
  2. Browse to your project folder on the remote machine (e.g., /home/user/my-gds-project)
  3. Click OK to open the folder

Alternatively, clone a project directly on the remote server:

  1. Open the integrated terminal (Ctrl+` or View → Terminal)
  2. Clone the project:
    git clone https://github.com/gdsfactory/gdsfactory_sample_project
    
  3. Open the cloned folder via FileOpen Folder

4. Install GDSFactory+ on the Remote Machine

When you first open a GDSFactory+ project:

  1. VSCode will prompt you to install recommended extensions on the remote server
  2. Click Install when prompted for GDSFactory+
  3. The extension will install and activate on the remote machine

You can also manually install it:

  1. Open Extensions panel (Ctrl+Shift+X / Cmd+Shift+X)
  2. Search for "GDSFactory+"
  3. Click Install in SSH: your-server

The extension should work automatically. VSCode handles port forwarding for the layout viewer.

Port Forwarding

GDSFactory+ uses two ports internally:

  • HTTP server port: Serves the layout viewer (random port in range 7000-9999)
  • WebSocket port: Extension communication (random port in range 7000-9999)

The ports are assigned randomly at startup to avoid conflicts with other applications.

VSCode Remote-SSH automatically forwards ports used by webviews, so the layout viewer should work without additional configuration.

Checking Forwarded Ports

To see which ports are being forwarded:

  1. Open the VSCode Ports panel (View → Ports, or click "Ports" in the bottom panel)
  2. You should see the GDSFactory+ server port listed and forwarded automatically

Manual Port Forwarding (if needed)

If the layout viewer doesn't load, you can manually forward ports:

  1. Open the VSCode Ports panel
  2. Click Forward a Port
  3. Enter the server port shown in the GDSFactory+ output log

Troubleshooting Remote Connections

Layout viewer shows blank or error:

  • Check that the server ports are not blocked by a firewall on the remote machine
  • Verify port forwarding is active in the VSCode Ports panel
  • Restart the GDSFactory+ server using the command palette: "GDSFactory+: Restart Server"

Extension not activating:

  • Ensure you've opened a folder with a pyproject.toml file
  • Check the Output panel for error messages
  • Verify the Python environment is correctly set up on the remote machine

Getting More Help

If these solutions don't resolve your issue:

  1. Ask the AI agent — describe your problem and it can help diagnose the issue. See AI Agent for details.
  2. Check the Output panel — View > Output > select "GDSFactory+" for detailed logs and error messages
  3. Join the community — get help from other users on Slack
  4. Watch the tutorialsVideo Tutorials cover common workflows step-by-step
  5. Review your setup — compare against the Local Installation or Cloud Setup guides