Contact Sales & After-Sales Service

Contact & Quotation

  • Inquire: Call 0086-755-23203480, or reach out via the form below/your sales contact to discuss our design, manufacturing, and assembly capabilities.
  • Quote: Email your PCB files to Sales@pcbsync.com (Preferred for large files) or submit online. We will contact you promptly. Please ensure your email is correct.
Drag & Drop Files, Choose Files to Upload You can upload up to 3 files.

Notes:
For PCB fabrication, we require PCB design file in Gerber RS-274X format (most preferred), *.PCB/DDB (Protel, inform your program version) format or *.BRD (Eagle) format. For PCB assembly, we require PCB design file in above mentioned format, drilling file and BOM. Click to download BOM template To avoid file missing, please include all files into one folder and compress it into .zip or .rar format.

How to Use Visolate for Isolation Routing: The Complete PCB Engineer’s Guide

As a PCB engineer who’s spent years perfecting in-house prototyping workflows, I’ve tried just about every Gerber-to-G-code tool out there. Visolate consistently stands out for one brilliant reason: it uses Voronoi diagrams to calculate the most efficient toolpaths possible. Instead of tracing around every single trace like most tools, Visolate finds the mathematical midpoint between adjacent traces and mills only there. The result? Shorter milling times, wider traces, and better current-carrying capacity on your boards.

In this guide, I’ll walk you through everything you need to know about using Visolate for isolation routing, from installation to generating production-ready G-code.

What Is Visolate and Why Should You Use It?

Visolate is an open-source Java application developed originally at MIT’s Distributed Robotics Laboratory. The name comes from “Voronoi Isolate,” which perfectly describes what it does: it isolates PCB traces using Voronoi diagram mathematics rather than simple outline tracing.

The Voronoi Advantage Explained

Traditional isolation routing tools work by tracing a path around each copper trace. When two traces run parallel, you end up with two separate cutting passes between them, even when they’re so close the passes might overlap. This wastes time and can cause issues with closely-spaced features.

Visolate takes a smarter approach. It calculates a generalized Voronoi diagram using your PCB traces as “seeds.” Think of it like this: imagine starting small fires simultaneously at every trace on your board. As each fire expands uniformly, it eventually meets fires from neighboring traces. The boundaries where these fires meet are your Voronoi cutting paths.

According to research published by MIT, this approach delivers an average toolpath length reduction of approximately 37% compared to standard outline methods. That’s significant time savings on every board you mill.

Key Benefits of Using Visolate

BenefitTraditional Outline MethodVisolate Voronoi Method
Toolpath LengthLonger (two passes between adjacent traces)Shorter (~37% reduction on average)
Trace WidthFixed at design widthMaximized automatically
Current CapacityLimited by designed trace widthImproved due to wider traces
Milling TimeLongerSignificantly reduced
Tool WearHigher (more cutting distance)Lower
Close-Spaced TracesPotential overlap issuesSingle clean cut

System Requirements and Installation

Visolate is a Java application, which means it runs on Windows, Linux, and macOS without modification. However, it does have some specific requirements due to its unique GPU-based calculation method.

Software Dependencies

The application uses your graphics card’s 3D capabilities to perform geometric calculations, which is actually quite clever. This means you need Java 3D libraries installed alongside the Java Runtime Environment.

For Ubuntu/Debian Linux:

bash

sudo apt-get install –no-install-recommends openjdk-11-jresudo apt-get install –no-install-recommends libjava3d-javasudo apt-get install –no-install-recommends libjava3d-jnisudo apt-get install –no-install-recommends libvecmath-java

For Windows:

  1. Install the Java Development Kit (JDK) from Oracle or adopt OpenJDK
  2. Download Java 3D libraries from the official repository
  3. Place the JAR files in your Java extensions directory

For macOS:

The process is similar to Linux. Use Homebrew to install dependencies:

bash

brew install openjdk

Then manually install Java 3D libraries.

Downloading Visolate

SourceVersionLink Type
GitHub (Traumflug)3.1.1Latest maintained version
SourceForge2.1.6Legacy version
Ubuntu Repositories2.1.6Package manager installation

The GitHub version maintained by Traumflug is recommended since it includes important fixes for modern operating systems and respects trace thickness in calculations.

Running Visolate

Once installed, launch Visolate from the terminal:

bash

java -jar visolate-3.1.1.jar

If you see error messages about missing libraries, double-check that Java 3D is properly installed and accessible to your Java runtime.

Windows Tip: Create a batch file containing java -jar visolate-3.1.1.jar in the same directory as the JAR file. This also opens a console window where you can see diagnostic messages, which is helpful for troubleshooting.

Preparing Your Gerber Files

Before loading files into Visolate, you need properly formatted Gerber outputs from your PCB design software. This is where many engineers run into their first problems.

Supported Gerber Features

Visolate reads RS-274X format Gerber files, but there’s a catch: polygon fills (G36/G37 commands) aren’t fully supported. If your design uses filled polygons, you’ll see a “TBD polygon mode” error.

Quick Fix for Polygon Issues:

Open your Gerber file in a text editor and remove:

  • All lines containing “G36”
  • All lines containing “G37”
  • Everything between G36/G37 pairs

Yes, you lose some geometry, but for many boards this workaround is sufficient.

gEDA/PCB Specific Considerations

If you’re using gEDA/PCB, the software generates non-round pins using polygons. For Voronoi milling, round pins work just fine. Edit your .pcb file and remove all instances of “octagon” and “square” from pin definitions, then re-export your Gerber.

Exporting from KiCad

KiCad exports in Gerber X2 format by default, which has caused compatibility issues with Visolate in some cases. Try exporting in legacy Gerber format if you encounter problems. Check the “Use Protel filename extensions” option for better compatibility with older tools.

Step-by-Step: Generating Toolpaths with Visolate

Now let’s walk through the actual process of converting a Gerber file to G-code.

Step 1: Load Your Gerber File

Click the “Browse” button at the top of the Visolate window and select your copper layer Gerber file. After loading, click “Fit” to center the design in the display area.

If your board doesn’t appear, check the terminal window for error messages. Common issues include unsupported Gerber commands or coordinate system mismatches.

Step 2: Fix Topology

Click the “Fix Topology” button. This step analyzes your design and identifies separate electrical networks. Visolate needs this information to understand which copper areas should remain isolated from each other.

The terminal will display how many nets were found and how many half-edge loops were created. This gives you a sanity check that the file was parsed correctly.

Step 3: Select Your Toolpath Type

Here’s where Visolate shines. You have two main options:

Voronoi Mode: Calculates the mathematically optimal path equidistant from all traces. This maximizes trace width and minimizes cutting distance.

Outline Mode: Traditional trace-following approach. Use this when you need precise control over trace width or when Voronoi results don’t suit your design.

Select your preference in the Processing section of the interface.

Step 4: Configure Tool Parameters

Set your tool diameter in the G-Code section. This value affects path offset calculations. For V-bits, enter the effective cutting width at your intended depth, not the tip diameter.

Step 5: Adjust DPI (Resolution)

The DPI setting controls the accuracy of your G-code output. Higher values produce more precise toolpaths with more G-code lines.

DPI SettingUse CaseFile Size Impact
100-500Simple designs, fast millingSmall
500-1000General prototypingMedium
1000-3000Fine-pitch componentsLarge
3000-5000Maximum precision requiredVery large

For most hobby work, 1000 DPI provides a good balance. Professional prototyping might warrant 2000-3000 DPI.

Step 6: Generate and Review Toolpaths

Click “Make Toolpaths” and watch the magic happen. Visolate will render the calculated paths on screen. Review them carefully, looking for:

  • Uncut areas between traces
  • Paths that come too close to traces
  • Missing isolation around pads
  • Unusual artifacts or errors

Step 7: Configure G-Code Output

Before saving, configure your G-code parameters:

  • Coordinate Origin: Use “left upper coordinates” to set where G-code 0,0 will be
  • Absolute vs Relative: Most CNC controllers prefer absolute coordinates
  • Z-depths: Set your cutting depth and safe travel height

Step 8: Save the G-Code

Click the save button in the G-Code section and choose your output filename. Always preview the resulting G-code in a simulator before sending it to your machine.

Visolate G-Code Settings Reference

Here’s a quick reference table for typical G-code settings:

ParameterTypical ValueNotes
Z-Safe (Travel Height)0.5-2.0 mmHigher is safer, slower
Z-Work (Cut Depth)-0.05 to -0.15 mmDepends on copper thickness
Feed Rate100-400 mm/minSlower for V-bits
Spindle Speed10,000-30,000 RPMHigher is generally better
Tool Diameter0.1-0.5 mmEffective width at cut depth

Choosing the Right Cutting Tool

Tool selection dramatically affects your isolation routing results. Here’s what works in practice.

V-Bits (Engraving Bits)

V-bits are popular because they’re strong, fast, and can achieve very fine isolation widths. The tradeoff is that cut width varies with depth, so board flatness becomes critical.

AngleTip SizeBest For
10-20°0.1 mmFine-pitch SMD, tight spacing
30°0.1-0.2 mmGeneral prototyping
45-60°0.2-0.3 mmWider traces, easier alignment
90°0.3+ mmQuick prototypes, large spacing

Sharper tips (10-20°) give finer cuts but are more sensitive to leveling errors. Every 0.1mm of depth variation changes cut width by 17% with a 10° bit, versus 200% with a 90° bit.

Flat End Mills

Flat end mills produce consistent cut widths regardless of depth, making them more forgiving of board warpage. However, small diameters (under 0.5mm) are fragile and require slower feed rates.

For most hobby CNC machines, a 30° V-bit with a 0.1-0.2mm tip offers the best balance of precision and durability.

Dealing with Board Flatness Issues

This is arguably the biggest challenge in PCB milling. Even slight warpage causes V-bits to cut wider or narrower than intended.

Auto-Leveling Solutions

Many G-code senders (bCNC, ChiliPeppr, Universal Gcode Sender) offer PCB auto-leveling. The process works like this:

  1. Probe multiple points across your board surface
  2. Build a height map of surface variations
  3. Modify Z-coordinates in real-time during milling

This requires a conductive probe setup, usually just a wire clipped to the tool and another to the copper surface.

Bed Flattening Alternative

If auto-leveling isn’t available, try bed flattening:

  1. Mount a sacrificial board to your CNC bed
  2. Mill the surface flat using a large end mill
  3. Secure your PCB blank directly to the flattened surface

This eliminates bed-induced height variations, though you’re still subject to any warpage in the PCB material itself.

Physical Fixturing Tips

  • Use double-sided tape rated for CNC work
  • Apply tape in a grid pattern to prevent bubbles
  • Consider vacuum holddown for critical work
  • For bowed boards, a center screw can help flatten

Command-Line and Automation

Visolate supports command-line operation for batch processing. This is valuable when you need consistent, repeatable results.

Basic Command-Line Usage

bash

visolate –auto –dpi 1000 –output output.ngc input.gbr

Available Command-Line Options

OptionDescription
-a, –autoEnable auto-mode (load, process, save, exit)
–dpi VALUESet rendering resolution
-o, –output FILESpecify output G-code file
-x, –flip-xMirror across Y axis
-y, –flip-yMirror across X axis
–absoluteUse absolute coordinates
-h, –helpShow help

Auto mode still requires an X display and graphics card since calculations happen on the GPU.

Troubleshooting Common Problems

“TBD Polygon Mode” Error

Cause: Your Gerber contains polygon fills (G36/G37)
Solution: Edit the Gerber to remove polygon commands, or regenerate from your PCB software without filled polygons

Toolpaths Missing Between Close Traces

Cause: DPI too low to resolve fine details
Solution: Increase DPI setting to 2000 or higher

G-Code Origin in Wrong Location

Cause: Coordinate system mismatch
Solution: Use “left upper coordinates” setting and verify with a G-code previewer before milling

Traces Not Fully Isolated

Cause: Tool diameter set incorrectly
Solution: Measure your actual cut width with a test cut and adjust the tool diameter parameter accordingly

Application Won’t Start

Cause: Missing Java 3D libraries
Solution: Verify all dependencies are installed and accessible to Java runtime

Alternative Software Options

While Visolate excels at Voronoi toolpath generation, other tools might better suit certain workflows:

SoftwareStrengthsWeaknesses
FlatCAMExcellent multi-pass support, active developmentSteeper learning curve
pcb2gcodeCommand-line, good integration with build systemsConfiguration heavy
Line GrinderWindows-native, double-sided board supportWindows only
CopperCAMCommercial, excellent resultsPaid software

For pure Voronoi-based routing, Visolate remains unique in the open-source space.

Useful Resources and Downloads

Here are the essential links for getting started with Visolate and PCB isolation routing:

Visolate Downloads:

  • GitHub Repository: github.com/Traumflug/Visolate
  • SourceForge Archive: sourceforge.net/projects/visolate

Related Documentation:

  • MIT Research Paper: “Voronoi Toolpaths for PCB Mechanical Etch” (IEEE ICRA 2005)
  • RepRap Wiki PCB Milling Guide: reprap.org/wiki/PCB_Milling
  • FlatCAM Documentation: flatcam.org/manual

Complementary Tools:

  • FlatCAM: flatcam.org
  • KiCad: kicad.org
  • gEDA: geda-project.org

FAQs About Visolate and Isolation Routing

Can Visolate generate drilling G-code?

No, Visolate focuses specifically on isolation milling toolpaths. For drilling, you’ll need a separate tool like FlatCAM or pcb2gcode to process your Excellon drill files.

Does Visolate work with Gerber X2 files?

Visolate was designed for RS-274X (Gerber X1) format. Gerber X2 files may cause parsing errors. If you’re using KiCad or other modern EDA tools, try exporting in legacy format for better compatibility.

What’s the minimum trace spacing Visolate can handle?

The practical limit depends more on your CNC machine’s precision and your cutting tool than on Visolate itself. The software can generate toolpaths for very fine features, but achieving them requires proper leveling and a quality V-bit. Most hobby setups work reliably down to 0.3-0.5mm trace spacing.

Why does Visolate need a graphics card?

Visolate uses your GPU to perform geometric calculations using 3D rendering techniques. This was an innovative approach when the software was developed at MIT, allowing complex Voronoi diagram computation using standard graphics hardware rather than custom algorithms.

Can I use Visolate for double-sided boards?

Yes, but you’ll need to process each side separately and handle the alignment yourself. Export separate Gerber files for top and bottom copper layers, generate toolpaths for each, and use registration pins or a flip jig on your CNC machine.

Conclusion

Visolate offers a mathematically elegant solution to PCB isolation routing that most other tools can’t match. The Voronoi approach genuinely reduces milling time while maximizing trace width, which matters for power delivery and signal integrity.

The software has its quirks, certainly. The Gerber parser limitations and dependency on Java 3D can cause headaches. But once you have it running, the results speak for themselves. Those fat traces and efficient toolpaths make prototyping faster and produce boards that just work better.

If you’re serious about in-house PCB fabrication, add Visolate to your toolkit. Combined with proper board leveling and the right cutting tools, it can transform your prototyping workflow.

Leave a Reply

Your email address will not be published. Required fields are marked *

Contact Sales & After-Sales Service

Contact & Quotation

  • Inquire: Call 0086-755-23203480, or reach out via the form below/your sales contact to discuss our design, manufacturing, and assembly capabilities.

  • Quote: Email your PCB files to Sales@pcbsync.com (Preferred for large files) or submit online. We will contact you promptly. Please ensure your email is correct.

Drag & Drop Files, Choose Files to Upload You can upload up to 3 files.

Notes:
For PCB fabrication, we require PCB design file in Gerber RS-274X format (most preferred), *.PCB/DDB (Protel, inform your program version) format or *.BRD (Eagle) format. For PCB assembly, we require PCB design file in above mentioned format, drilling file and BOM. Click to download BOM template To avoid file missing, please include all files into one folder and compress it into .zip or .rar format.