2021-03-19
Whenever you work with a remote team, you need to use a hardware version control system to track and manage the version throughout the life cycle of the project.
Some PCBs are very simple, so there is no need to use a large team of multiple designers. Design documents basically appear in two forms: the initial project document, and the final project document after the design is completed. The way our team works is that we often receive some design documents from our customers to help us start the design, and after that, everything must be managed by ourselves. Any project can become very complicated, and the PCB design team needs to track the version throughout the project.
Why should you worry about version tracking? If you receive a change in product function requirements, or a major change in product architecture, or you are ready to complete the finalized design and start preparing for processing, then you'd better clone the project in the current state, and then start developing a new version . Tracking all design changes in a PCB design project requires hardware version control tools, and you can find these tools in DigiPCBA.
What's in hardware version control?
What's in hardware version control? When should hardware version control be used? And what conditions need to be met? Since Linus Torvalds created Git in 2005, the software world has been using version control, and the use of hardware version control systems has only recently caught up. Hardware version control provides us with a simple way to track the early versions of PCB design projects, covering everything from schematics to processing documents and mechanical drawings.
The version control management system is responsible for tracking and managing all information sets (including PCB design data) and a series of sequential changes. I think version control is a necessary feature when possible, especially when your team is working on complex PCB design projects with multiple collaborators. The best version control system for hardware development provides some important functions and information:
List of project versions arranged in chronological order. Through this list, you can view all the added or deleted design documents, the changes made to the PCB design data, the submission date, and any notes about the design revision in chronological order.
The name of the user responsible and submitting the change should be listed in the history of who made the change
Created PCB project release version Whenever you create a project release version with output files, you should be able to view and access the version in the history list
The ability to download or clone each revision The ability to clone a previous version of a project into a new version is the core of version control
Whenever you work with a remote team, you need to use a hardware version control system to track the project version throughout the life cycle
The version control system can track these data and revisions on a local server or a hosted server in the cloud. This allows you to access earlier versions of the project, thereby restoring/cloning the project in its previous state, or simply downloading old project data for other purposes.
When to use hardware version control to clone projects
Whether you are tracking the version of a software project or PCB design data, you may need to revert to an earlier project version for a variety of reasons. If you do plan to clone the project in a version control system, then in some cases, you should consider cloning the project.
Functional requirements change
The customer or engineering team may change the functional requirements of your product for a variety of reasons. When changes occur, you'd better clone the project in its current state, and then apply the revised version to the cloned project. After forking the project to the new version, even if the new functional requirements are deprecated, you can still revert to the previous project.
Device changes
Before starting a new design, especially before starting a new PCB layout, you should first clean up your BOM. Even if you investigate the device inventory very early, the supply chain may still change quickly, and important devices may also enter a discontinued production, final purchase, not recommended for new designs, obsolete or out-of-stock status.
If this happens to an MCU, FPGA, or other dedicated IC, the replacement part may contain completely different pins. In this case, you can clone the current project and put the new device in the new project. If the old device becomes available, then you only need to revert to the old project. I have found that this approach is very useful when customers are obsessed with using a device that they cannot purchase (such as MCU), but at the same time want to find a substitute device that can be purchased to produce circuit boards. When you give them both versions of the project, you will definitely be able to satisfy them.
Ready to process
After you release the design data to the manufacturer (and if you have paid a one-time engineering fee), they may make some changes to the PCB or output files. Before releasing the final project to the processor, I am used to copy the final project, and then I will tell their team that they can make any changes as needed. They usually send back a set of design files, and these files have directly applied all necessary modifications.
DigiPCBA allows you to easily clone projects directly from Altium Designer. Just select the option from the "Project" panel
There may be many ways and reasons for using hardware version control in a PCB design project, but no matter what task you need to accomplish, it is inseparable from a top-level data management system directly integrated with PCB design software.
DigiPCBA is the future of PCB and hardware version control
Version control is a simple and powerful concept, and more designers should consciously accept it in the future. When I first worked with a remote team, every designer needed to track their own series of project revisions on the local computer. In some cases, customers will use proprietary systems to handle these tasks. However, these solutions are inefficient, and third-party solutions cannot be integrated with your PCB design software.
With the Altium Designer® and DigiPCBA platforms, the software version control process can also be used for hardware version control. Design teams can create efficient collaborative PCB design workflows by including designers, end users, and manufacturers in the development process. Everyone on the team has access to supply chain data, annotation functions, and data sharing tools to help simplify the PCB design collaboration process.