Free Trials

Download a free trial to find out which Altium software best suits your needs

How to Buy

Contact your local sales office to get started on improving your design environment


Download the latest in PCB design and EDA software

  • Altium Designer

    Complete Environment for Schematic + Layout

  • CircuitStudio

    Entry Level, Professional PCB Design Tool

  • CircuitMaker

    Community Based PCB Design Tool


    Agile PCB Design For Teams

  • Altium 365

    Connecting PCB Design to the Manufacturing Floor

  • Altium Concord Pro

    Complete Solution for Library Management

  • Octopart

    Extensive, Easy-to-Use Component Database

  • PDN Analyzer

    Natural and Effortless Power Distribution Network Analysis

  • See All Extensions

    World-Renowned Technology for Embedded Systems Development

  • Live Courses

    Learn best practices with instructional training available worldwide

  • On-Demand Courses

    Gain comprehensive knowledge without leaving your home or office

  • Altium 365 Viewer

    View & Share electronic designs in your browser

  • Altium Designer 20

    The most powerful, modern and easy-to-use PCB design tool for professional use


    Annual PCB Design Summit

    • Forum

      Where Altium users and enthusiasts can interact with each other

    • Blog

      Our blog about things that interest us and hopefully you too

    • Ideas

      Submit ideas and vote for new features you want in Altium tools

    • Bug Crunch

      Help make the software better by submitting bugs and voting on what's important

    • Wall

      A stream of events on AltiumLive you follow by participating in or subscribing to

    • Beta Program

      Information about participating in our Beta program and getting early access to Altium tools

    All Resources

    Explore the latest content from blog posts to social media and technical white papers gathered together for your convenience


    Take a look at what download options are available to best suit your needs

    How to Buy

    Contact your local sales office to get started improving your design environment

    • Documentation

      The documentation area is where you can find extensive, versioned information about our software online, for free.

    • Training & Events

      View the schedule and register for training events all around the world and online

    • Design Content

      Browse our vast library of free design content including components, templates and reference designs

    • Webinars

      Attend a live webinar online or get instant access to our on demand series of webinars

    • Support

      Get your questions answered with our variety of direct support and self-service options

    • Technical Papers

      Stay up to date with the latest technology and industry trends with our complete collection of technical white papers.

    • Video Library

      Quick and to-the-point video tutorials to get you started with Altium Designer

    Why Version Control Should Be Implemented in Your PCB Design Software

    May 8, 2017
    Blue screen of death
    Everyone’s worst nightmare - the blue screen of death!

    Getting back into the flow after a business trip is never easy, but my return this week has been particularly challenging. We have a time critical contract with our client, so everyone on the project is operating at >100%. I was staying on track until I opened my Board design software and saw that someone had made changes to my layout. They removed two of the four tines from my smart fork. These were significant changes. Bad changes. I felt my brain crash and was left with the mental equivalent of the blue screen of death.

    Why the breakdown? Well, we were rushing to meet deadlines and had not set up any sort of change or version control. Instead, we were saving our files on a company file share, so the changes made overwrote any copy I had of the working design. No problem, I thought, we can go to a backup from a week ago and get the original version. Yeah, so IT had not been notified of the project share, and no backups were made. There is no record of the working design.

    Don’t Be Me, Backup Your Designs

    I was in a hurry and didn’t back up my PCB layout. Don’t be like me.

    So, what is the best way to manage changes to a project? Sure, I can make manual copies of my design file from time to time. I can also ask IT to make regular backups of the entire project share, or I can automate backups with free or online tools. There are many options, unfortunately, none of them are that great for PCB designers.

    In an ideal world, the best option would be to put the design into a version control system, and here’s why:

    • All my work will be in a safe place, that’s priority number one.
    • It’s easier to collaborate with other people on my team.
    • I can compare versions of files and list the differences between versions, aka diffs.
    • I can revert to a previous version of a file, after multiple revisions.
    • I can add comments and labels to explain changes or track the project milestones.
    • I can work on different aspects of a design in different branches without worrying that the changes will interfere with each other.
    • I can subscribe multiple computers and choose when to sync user changes on each one.
    • I will have to consider and comment on the changes I’ve made as I check them in.
    Remember cloud is another persons hard drive
    It’s important to backup your data to an external source, but remember that there is no cloud, it’s just someone else’s computer.

    What to Look For in a Version Control System

    If you have ever explored the world of PCB version source control you know there are many solution providers to choose from including Git, Subversion, Mercurial and more.  Some are more established than others, but most offer the same set of core features and provide the benefits listed above. Here’s the issue, the majority were originally designed for the software world, and aren’t great for hardware design programs.

    For PCB layout, it is important that you find a system that will allow you to track changes between files and be able to view their differences as graphics. This site makes it pretty clear that tracking PCB design changes visually is superior to comparing lines of code. Here’s the catch, if you want this sort of version control, you’re going to have to export your designs as PDFs and use a PDF Diff program to track any changes. This means that you can kiss your metadata (material specs, layer specs, etc.) goodbye. Granted, this is better than having to start from scratch, but re-entering this data is a time sink. Even worse, if you weren’t the one who initially set the specifications, you’ll have to spend additional time tracking that person down.

    In the software world, you can simply add and remove files from a repository, or "repo." Once a file is added to the repo any changes to it have to be checked in, or ‘committed’. As expected, these repository setups are generally not well suited for managing the contents of PCB or CAD files since they are primarily made for software.

    If you’re like me and want to keep things easy, the simplest and most effective option is to choose PCB design software that comes with integrated version control. This will save you the time of having to bodge your way through ill-suited version control. PCB software, such as Altium Designer®, integrate version control into their software, which makes it easy enough for a mechanical engineer to use. Out of the box, it supports Subversion, CVS and other systems that provide the standard Microsoft SCC interface. Honestly, I need all the help I can get, so I’ve also started using Altium Vault® . My original designs might be long gone, but hey, at least my components are up-to-date!

    Multiple users
    Version control can help you keep track of design modifications for single and multiple users

    PCB version control is like insuranc--you don’t know you need it until you need it. If I had been using PCB design software with PCB version control, then I would not be in my current situation. 

    Check out Altium Designer in action...

    Version Control

    most recent articles

    Back to Home