Documentation
Go to AppSign InSign Up
    Getting Started
    • Introduction to Flux
    • What is Flux?
    • Quick Start
    • The Flux Method
    • Creating an Account
    • Flux for Organizations
    • Setting Up Your Browser
      • Mouse & Trackpad
      • Multi-Screen Operation
      • Keyboard Shortcuts
    • Your First PCB in Flux
      • DFM & Export
      • PCB Layout & Routing
      • Project Setup
      • Schematic
      • Export & Manufacturing
    • KiCAD to Flux
      • Layout
      • Parts & Libraries
      • Schematics
    • Eagle to Flux
    • EasyEDA to Flux
    • Upverter to Flux
    • Altium to Flux
    • Getting Help
    Tutorials
    • Tutorials
    • Getting Started With Flux
      • Customizing Flux
    • Flux Use Cases
      • AI Architecture Design
      • AI Component Research
      • AI Design Reviews
      • AI Testing & Debugging
      • AI Auto-Layout
      • Generative AI
    • Start Learning Flux, No Matter Your Skill Level
      • Advanced Designer
      • First Time Designer
      • Intermediate Designer
    • Power Regulator
      • 1 – Part Selection
      • 2 – PCB Layout
      • 2 – Schematics
    • Routing
      • High-speed Routing
      • High Density Designs (HDI)
      • Working with Polygons
    • Adding Components to the Library
      • Publishing Components to the Library
      • Creating Components from Scratch
      • Importing Components
      • Working with Footprints
      • Working with Symbols
    • What is a Module?
      • Module Design Best Practices
      • Creating Modules
      • Using Modules
    • Generic Components
      • Creating a generic part
    • Copper Fills Tutorial
      • Creating Copper Cutouts
    • Board Outline Shape and Size
    • The Toolbar
    • Using Layout Rules
    • Intro to collaboration
    • Embedding a Flux Project
    • Reviewing component updates
    • Version Control Deep Dive
    • Custom Shapes
    • AI-Assisted Design with Flux
    • PCB Design Reviews (DRC)
    • Component Placement
    • Component Procurement
    • Multi-Layer PCB Design
    • Working with Ground Signals
    • Reusing Projects
      • Useful links
    Reference
    • Flux Context Menu
    • Calculator Tool
    • Change Project Name
    • Code Tool
    • Convert to component
    • Flux ACUs
    • Overview
    • Data Portability
    • Delete & Archive Projects
    • Design Rule Check (DRC)
    • Expressions
    • File Tool
    • FMEA Report Generation
    • Gerber Exports
    • Help Tool
    • Special Part Types
    • JEP30 PartModel Import/Export
    • Knowledge Base
    • Library Tool
    • Managing Units
    • Measuring Distances
    • Model Selection
    • Nets and Traces
      • Curved Traces
      • Impedance Control
      • Trace Width
    • Object Types
      • AssetNode
      • ControlNode
      • ElementNode
      • ElementTerminalNode
      • OutputNode
      • PropertyNode
      • RouteNode
      • RouteTerminalNode
    • Pads & Holes
    • Passive Component Consolidation
    • Layout Rules Reference
      • Layout Rules List
      • Object-Specific Layout Rules
      • Selector-Based Layout Rules
      • Layout Rules Inheritance & Precedence
      • Layout Rules Modifiers
    • Polygons
    • Comments
    • Cursors
    • Forking & Cloning
    • Copper Fills
    • Importing Schematics
    • Importing Components
    • Schematic Inspector
      • Assets Panel
      • Pricing & Availability Panel
      • Properties Panel
      • Simulation Panel
    • The Library
    • Project Launcher
      • New Blank Project
    • Layout Object Tree
      • PCB Object Types
    • Schematic Object List
    • The PCB Editor
      • Locking
      • Layer View Control
      • Positioning & Routing
      • Selecting Objects
      • Stackup Editor
    • Permission Tiers
    • Preloaded Examples
    • The Profile Page
      • Featured Projects
    • The Schematic Editor
      • Positioning & Wiring
    • Global Search
    • Sharing & Permissions
    • History & Version Control
    • Silkscreen
    • Simulator Tool
    • Star a Project (Favorite)
    • Vias
      • Smart Vias
    Copilot
    • Copilot Overview
    • Model Selection
    • Flux ACUs
    • Knowledge Base
    • Flux Context Menu
    • Calculator Tool
    • Code Tool
    • File Tool
    • Help Tool
    • Library Tool
    • Simulator Tool
    • FMEA Report Generation
    • Passive Component Consolidation
    FAQ
    • Schematic Editor
    • General FAQs
    • Flux and AI FAQs
    • PCB Editor FAQs
    • Parts and Modules
    • Pricing
    • Private and public projects
    • Data security and IP protection
    • When things go wrong: Errors and how to handle them
      • Lost connection
    Legal
    • Terms of Service
    • Privacy Statement
    • Main Services Agreement
    • Subprocessors

Tutorials

Flux Use Cases

AI Auto-Layout

Tutorials

AI-Powered Auto-Layout


Simplify your PCB design process by using Auto-Layout, an AI-powered feature that automatically routes your design.

Overview

Auto-Layout leverages Flux's AI to handle the time-intensive task of routing your PCB. This tool is ideal for simple to medium-complexity boards and can significantly accelerate your workflow. However, Auto-Layout has a few limitations to keep in mind, including credit consumption, iteration management, and time requirements.

This guide helps you get started, navigate the process, and make the most of Auto-Layout while avoiding common pitfalls.

Getting Started

Initiate Auto-Layout

  1. Make sure your schematic and component placement are finalized.

    1. Adjust any specific constraints for your board, such as dimensions, component orientations, or keep-out zones. Learn more.
    2. Confirm your credit allowance before starting. Auto-Layout consumes Flux credits per job based on complexity. Learn more.
  2. Click on the auto-route button at the bottom page.

Understanding the States of the Process

Auto-Layout operates in several stages:

  • In Queue: Your job is waiting to start.
  • Working: The AI is generating layout iterations.
  • New Iterations Arrived: An iteration is available for review.
  • Converged: The AI has reached an optimal layout.
  • Error: The job has encountered an issue (e.g., out of credits or processing failure).

Iteration Management

Iterations are intermediate steps the Auto-Layout engine generates as it works towards an optimal layout. Initially, there may be significant differences between iterations as the AI refines placement and routing. Over time, these changes become smaller, and the process approaches convergence, where further iterations show no meaningful improvements.

Convergence

Convergence occurs when the layout stabilizes, either due to reaching the best possible arrangement, or when iterations have no meaningful changes between them.

:::warning Warning Auto-Layout might not always fully converge, but you can review and apply any iteration you find satisfactory during the process. :::

Viewing Iterations

While Auto-Layout is running, you can review iterations using the scroll bar at the bottom of the page:

  • Drag the scrubber to view available iterations in real time.
  • If you find a promising layout, click on the check button to apply it to your project to save it permanently.

:::warning Warning If you stop the job, all iterations will be lost unless you have applied one to your project. :::

Error States

If Auto-Layout encounters an error, you may see one of the following:

  • Out of Credits: Your account has reached its credit limit.
  • Error State: An issue with the AI process. Check your project constraints and try again.

Applying Changes

When you have an iteration selected, you can click on the "Apply" button to save all the changes to your project. From that point forward, a new version will be generated with all the changes. You can use the version control system to revert the changes and go back to the version before the auto router at any point.

After applying the changes, all the other iterations will be lost. Make sure you carefully select the best iteration before clicking on the apply button.

Trace Protection

When you start an Auto-Layout job, Flux takes a snapshot of your current board state. Any traces and vias that are already present on your board at that point are marked as protected. This means:

  • Auto-Layout will not move, reroute, or delete any existing traces or vias
  • The AI engine routes around your existing traces, treating them as fixed obstacles
  • Only new traces are generated to complete the remaining unrouted connections (airwires)

This allows you to manually route critical signals first — such as high-speed differential pairs or sensitive analog traces — and then let Auto-Layout handle the rest of the board without disturbing your careful manual work.

:::info Info Route your most important signals by hand before starting Auto-Layout. Since existing traces are protected, you can ensure critical paths are exactly how you want them while letting the AI handle the rest. :::

Layout Tips

Proper PCB layout and component placement are critical to the success of your design. When using the Auto-Layout feature, getting this foundational step right ensures smoother routing paths and better results.

To help you optimize your component placement, we've created a detailed video tutorial. This guide will walk you through:

  • Logical component placement for better routing results
  • Avoiding common placement errors that complicate routing.
  • Setting up routing parameters for optimal Auto-Layout performance.

Best Practices for AI-Assisted Auto-Layout

  1. Optimize component placement first: The quality of your initial component placement significantly impacts Auto-Layout results
  2. Set appropriate constraints: Define clear design rules and constraints before starting Auto-Layout
  3. Be patient with complex boards: More complex designs require more iterations to reach optimal results
  4. Save promising iterations: Apply iterations you like before stopping the process to avoid losing them
  5. Review and refine: Auto-Layout is a starting point; manual refinement may still be necessary for critical traces
  6. Route critical traces manually before starting: Since Auto-Layout protects existing traces, route your most important signals by hand first, then let Auto-Layout handle the rest5.
  7. Save promising iterations: Apply iterations you like before stopping the process to avoid losing them
  8. Review and refine: Auto-Layout is a starting point; manual refinement may still be necessary for critical traces
  9. Be patient with complex boards: More complex designs require more iterations to reach optimal results
  10. Set appropriate constraints: Define clear design rules and constraints before starting Auto-Layout

Troubleshooting Common Issues

Poor Routing Results

  • Review your component placement and optimize for shorter trace paths
  • Check that your design rules are appropriate for your board's complexity
  • Consider simplifying complex areas of your design before re-running Auto-Layout

Convergence Problems

  • For complex boards, allow more time for the process to complete
  • If convergence stalls, try applying the best iteration and manually refining problem areas
  • Consider breaking very complex designs into functional blocks for better results

Existing Traces Are Not Being Preserved

  • Ensure you have saved your design before starting the Auto-Layout job
  • Traces must be fully committed to the board (not in a preview or pending state) to be protected

Credit Consumption Issues

  • Monitor your credit usage before starting Auto-Layout jobs
  • For complex boards, consider running Auto-Layout during off-hours when you don't need immediate results
  • Optimize component placement to reduce the complexity of the routing task

Additional Warnings

  • Credit Consumption: Each job uses credits, and complex boards require more.

  • Iteration Loss: Stopping a job results in the loss of un-applied iterations.

  • Stopping jobs: You cannot pause a job; stopping it means starting over.

  • Convergence: for medium-complexity boards, initial results can take up to 30 minutes, with full convergence potentially taking 10–24 hours.

    • Auto-Layout may not always reach a fully converged state.
  • Credit Limits: Credit limits cannot yet be set per project, only at the account level. Learn more.

What's Next

Now that you've learned how to use Auto-Layout, you might want to explore:


Previous

AI Testing & Debugging

Next

Generative AI