# CircuitMaker

CircuitMaker is electronic design automation software for printed circuit board designs, for the hobby, hacker, and maker community. CircuitMaker is available as freeware, and the hardware designed with it may be used for commercial and non-commercial purposes without limitations. It is currently available publicly as version 2.0 by Altium Limited, with the first non-beta release on January 17, 2016.

## History
### MicroCode CircuitMaker

CircuitMaker, TraxMaker and SimCode were originally developed by the Orem-based MicroCode Engineering, Inc. since 1988. CircuitMaker 5 for Windows 3.1, 9x and NT became available in 1997, CircuitMaker 6, CircuitMaker PRO, TraxMaker 3 and TraxMaker PRO in 1998.

### Protel CircuitMaker

Electronic design automation software (https) developer Protel marketed CircuitMaker 2000 as a schematic capture tool, together with TraxMaker as its PCB layout counterpart, as a powerful yet affordable solution for circuit board needs. Its ease of use and comparatively low cost quickly gained it popularity among students, and the software suite was commonly used to teach circuit board design to engineering students in universities. The wide availability of plug-ins and component libraries have accelerated adoption, and quickly amassed a worldwide community. When Protel was renamed Altium Limited in the early 2000s, engineering efforts were redirected towards the development of DXP 2004, and CircuitMaker 2000 was eventually discontinued. Due to its new status as abandonware, CircuitMaker 2000 remained popular among hobby users and students. This popularity has been observed by Altium, and the most successful features of CircuitMaker 2000 have since been integrated in DXP 2004 and later were incorporated into Altium Designer.

### Altium CircuitMaker

Open source hardware and easy-to-use development boards such as the Arduino and the Raspberry Pi have increased community interest in electronics, particularly in fab labs, hackerspaces and makerspaces. The leading EDA software vendors traditionally lack free versions, and professional licenses are unaffordable for amateurs. This resulted in high piracy rates for professional software packages, or users sticking to outdated software, including CircuitMaker 2000. Several initiatives such as EAGLE have attempted to fill this void, releasing restricted versions of semi-professional EDA tools. The rise of KiCad further fragmented the market. This pressure eventually provided the incentive for Altium to release a simplified and more user friendly version of their professional EDA software package and flagship product, Altium Designer, targeted at less complex circuit board projects. This culminated into the rebirth of CircuitMaker as schematic capture and PCB design software.
Despite the resemblance in naming, the current CircuitMaker differs entirely from CircuitMaker 2000 regarding features and graphical user interface: the SPICE simulation module has been removed; the library system has been overhauled; and the controls changed from classic menus to a more modern and visually appealing ribbon interface.

### Merge with Upverter

On 14 May 2018, Altium announced plans to merge CircuitMaker and Upverter into a single, free to use design platform. However, in a blog post on May 11, 2019, Altium COO Ted Pawela stated that the plans had evolved, and the products would remain separate, with interoperability features for the design files.

## Features

CircuitMaker implements schematic capture and PCB design using the same engine as Altium Designer, providing an almost identical user experience. The schematic editor includes basic component placement and circuit design as well as advanced multi-channel design and hierarchical schematics. All schematics are uploaded to the Altium server and can be viewed by anyone with a CircuitMaker account, stimulating design re-use. CircuitMaker supports integration with the Octopart search engine and allows drag and drop placement of components from the Octopart search results if schematic models are attached to them. Users can build missing schematic symbols and commit them to the server, called the Community Vault, making them available for other users. The continuously growing part database eliminates the need for a custom schematic symbol or footprint design for common parts, increasing user-friendliness for beginners. It is not possible to import component models from Altium Designer directly into CircuitMaker, but there are community-supported workarounds to this limitation.
Concurrency editing was added in version 1.3, allowing multiple users to collaborate on a schematic or PCB document simultaneously and exchange thoughts through an integrated comment and annotation system.
Transfer of schematics to a PCB is a straightforward process in CircuitMaker since PCB footprints are automatically attached to any component on the schematic that was picked from the Octopart library. PCB footprints may have simple 3D models or complex STEP models attached to them, enabling real time 3D rendering of the PCB during development. CircuitMaker supports design rule configuration and real time design rule checking. Some advanced features, including differential pair routing, interactive length tuning, and polygon pour management, are also available. Production files can be exported directly, although an external Gerber viewer must be used to check the exports. The entire PCB can also be exported as a 3D STEP model for further use in mechanical 3D CAD software.
CircuitMaker is only available for the Windows operating system. This requires users to have access to a Windows license to use CircuitMaker. As of 2020, CircuitMaker can be run in Wine on Ubuntu, with limitations, but some users reported it does not work on their Linux distribution. Unofficial support for Linux and BSD users is provided by Altium staff and volunteers on the CircuitMaker forum.
While users can import resources from competing EDA software packages, CircuitMaker does not support exporting design resources itself. A workaround for this issue is provided by Altium Designer 15 and 16 which do support the import of CircuitMaker files.

## Open source hardware

CircuitMaker requires a free account to represent its users in the community. An active internet connection is required to start and use the software. Users are allowed to have 5 private projects, the so-called sandbox mode for practicing. By default, all schematics and PCBs are uploaded to the server and can be viewed by other users as soon as they are committed through the internal svn engine. While this renders CircuitMaker undesirable for closed source projects, it encourages collaboration in the community. Users are allowed to fork existing projects, or request permission to collaborate in existing projects. Importing schematic documents and PCBs from other EDA packages (OrCAD, PADS, P-CAD, EAGLE) is supported. Users are allowed to own unlimited projects, and there is no hard limit on board complexity. However, Altium warns that users may experience a performance drop for large projects.
All documents are under version control by default, allowing users to revert changes made in their projects, and build new versions of existing schematic symbols or footprints in the Community Vault. Users can comment on each other's projects and parts, rate them, and propose improvements.
CircuitMaker supports direct generation of production files in industry standard formats such as Gerber and NC Drill, as well as printing of stencils for DIY circuit board etching.