Introduction:

FreePCB is a free, open-source PCB editor for Microsoft Windows, released under the GNU General Public License. It was designed to be easy to learn and easy to use, yet capable of professional-quality work. It does not have a built-in autorouter, but it can use the FreeRoute web-based autorouter at www.freerouting.net. Some of its features are:

The layout for a small PCB is shown in the screenshot below.

 

Latest News:

Dec. 11, 2021

For various reasons, I've been unable to work on FreePCB since the last release in 2010. I intended to keep this website up but my hosting contract expired and I didn't get the notices so the site has been down since August. I've restored it, but lost the data for the User Forum, so I've turned that off.

Sept. 11, 2010

Version 1.359 released. This mainly fixes a few more bugs. See the User Forum/Latest News for more details.

Also, the Wiki is down for the time being while we install some new software.

Aug. 9, 2010

I've added a Wiki to the website, and the first page is a FAQ being created by gnuarm from the User Forum. Please take a look at it, and add comments if you have ideas for it. We're complete newbies to this Wiki thing, so its a work in progress.

Aug. 3, 2010

Utility fpcb2cad added to the download page. This converts *.fpc files to GenCad format, which is used for interchange of PCB data. The utility was written by "edeheld" of the User Forum. Here is a link to the thread: FreePCB to Gencad 1.4 converter.

July 21, 2010

Version 1.358 released. This fixes a bug where moving a vertex with ratline visibility turned off created problems.

July 16, 2010

The executables for version 1.357 showed their version incorrectly as 1.356. I've fixed this and reposted them on the Downloads page.

July 15, 2010

Well, it didn't take long for the first bug to be reported, and it was a serious one so I've fixed it and released 1.357. See the User Forum/Latest News for more details.

July 14, 2010

I've posted a new version of FreePCB (1.356). I've fixed all of the bugs that I could find in the much-maligned version 1.355. I've also added a few new features. I hope that everyone will give it a good workout and report any bugs. I promise to fix them ASAP. See the User Forum/Latest News for more details.

Also, I've switched the source code repository for public access from Berlios to Google. The URL for Subversion is https://freepcb.googlecode.com/svn. The URL for web access is http://code.google.com/p/freepcb/source/browse/. The current release is in "tags/version_1356".

July 14, 2010

I've posted a new version of FreePCB (1.356). I've fixed all of the bugs that I could find in the much-maligned version 1.355. I've also added a few new features. I hope that everyone will give it a good workout and report any bugs. I promise to fix them ASAP. See the User Forum/Latest News for more details.

Also, I've switched the source code repository for public access from Berlios to Google. The URL for Subversion is https://freepcb.googlecode.com/svn. The URL for web access is http://code.google.com/p/freepcb/source/browse/. The current release is in "tags/version_1356".

June 1, 2010

I'm BACK!

I'm sorry for neglecting FreePCB for the past year or so, but I got overloaded at work and then had a few other issues to deal with, so I had to put FreePCB on hold for a while. Now that things are more or less back to normal, I'd like to take up where I left off. I'll start by looking at the bug reports for things to fix.

Thanks to Bruce and the other regulars on the User Forum for keeping things alive while I was gone.

Apr. 22, 2009

I've posted the most recent versions of Bruce Parham's utilities FpcLib and FpcRef on the Downloads page.

Feb. 1, 2009

There is a new version (1.41) of Bruce Parham's FpcPlace utility on the Downloads page. Actually, this was posted on the User Forum Nov. 21, 2008, but I missed it.

Jan. 25, 2009

There is a new version of FreePCB (1.355). This fixes multiple bugs, including an annoying one where moving or changing the footprint of a part using a dialog could cause errors in traces routed to the part. See the User Forum/Latest News for more details.

There is a new version (1.303) of Bruce Parham's FpcROUTE utility. Click here for more details.
There is a new version (1.40) of Bruce's FPCfab utility. Click here for more details.
Bruce has also created a PDF describing the updates to FreePCB since the User Guide was written. Click here for more details.
These are all posted on the Downloads page.

Nov. 19, 2008

There is a new version (1.301) of Bruce Parham's FpcROUTE on the Downloads page.

Oct. 20, 2008

There is a modified version of TinyCad.exe on the Downloads page. This was created by Gil (gldf from the User Forum). It adds the ability to export values in the PADS netlist.

Oct. 13, 2008

Version 1.354 posted. This includes a nice feature: the ability to move trace segments while maintaining the angles of adjacent segments. This was added to the code by Pete Koziar (AKA CharteuseDog from the user Forum). There are also some important bug-fixes. See the User Forum/Latest News for more details.

Sept. 18, 2008

There was an error in some of the footprints in the th_header_40_mil_holes.fpl library file, which I've corrected. I've also posted th_sip_40_mil_holes.fpl, which is a library of SIP footprints with 40 mil holes and 60 mil pads. These files are on the Downloads page.

There is also a new version of FPCfab by Bruce Parham on the Downloads page.

August 12, 2008

More new stuff on the Downloads page:

- I've posted a new version 1.353 of FreePCB. This seems pretty stable, so I'm recommending it for all users. There are both debug and release versions, and there is a new combined update. See the User Forum/Latest News for more details.

- There is a new version of the library file for through-hole headers with 100 mil pin spacing. These have larger 40 mil holes and 60 mil pads so that standard 0.25" square pins will fit. The new file is called th_header_40_mil_holes.fpl. I would suggest that you add it to the freepcb/lib folder. You may want to remove or rename the original file (th_header.fpl) to avoid confusion. If you load a project file with the old footprints, you will see a warning about the small holes.

- There is also a new version 1.13 of FpcPoly by Bruce Parham. See his post in User Forum/Comments and Questions for new features.

August 3, 2008

There's lots of new stuff on the Downloads page. There are new versions of the FpcLib, FpcROUTE and FpcRef utilities from Bruce Parham, and there is a new version of Guillaume Rosanis' PCB-Tools (GerberRender, PCB-View, PCB-Render and PCB-Print). These are all updated to work with the latest alpha versions of FreePCB. The executables for FpcROUTE and GerberRender should be placed in the freepcb\bin folder, since FreePCB uses these utilities directly for some of its functions.

Since the latest versions of FreePCB are pretty stable, the next release will be a non-alpha version, and I'll provide a combined update that will include the latest versions of the essential utilities.

July 15, 2008

There is a new version (1.12) of Bruce Parham's FpcPoly on the Downloads page.

July 8, 2008

There are 2 new items of contributed software on the Downloads page:
- FpcPoly is a command-line utility written by Bruce Parham, for translating some of the Gerber files produced by FreePCB into a form suitable for producing very realistic renderings of the top and bottom of the PCB. The actual rendering is done by Guillaume Rosanis' PCB-Render program.
- NetValue is a program for converting TinyCAD netlists to PADS-PCB netlists. For parts, it sets the package name to the "Package" attribute of  the TinyCAD symbol, if it exists. Using the extra information available, it can set the FreePCB "Value" of a part to be a comma-separated string containing any or all of the attributes attached to a TinyCAD symbol including the Symbol name and Package. It was written by Phil Walker, whose username on the Forum is "philboard".

July 7, 2008

Version 1.352a posted. This fixes a bug that caused crashes when editing a footprint and trying to apply it to multiple parts. This is another alpha version, but I would suggest that more experienced users start using it since it seems pretty stable. As always, please check your Gerbers before submitting them. If you find any bugs, let me know and I'll fix them ASAP.

July 6, 2008

Version 1.351a posted. This fixes a bug that could cause crashes when trying to edit a part that doesn't have a footprint. This is another alpha version, not recommended for production work.

July 5, 2008

Since my new hosting service allows it, I turned on the "subscriptions" feature of the User Forum, that allows registered users to receive an email once a day with all of the new postings on Forums that they subscribe to. You can select these Forums by editing your profile.

July 3, 2008

Version 1.350a posted. This fixes a bug that was introduced in version 1.349a, that prevented clearances being drawn on inner layers for some through-hole pins.

July 2, 2008

Version 1.349a posted. This fixes a bug that was causing crashes, mainly when generating Gerber files for inner copper layers. This is still an alpha version.

July 1, 2008

I was on vacation last week, and when I got back I discovered that my email address "allan@freepcb.com" had stopped working, apparently due to a problem with the new hosting service for FreePCB. I'm sure the problem could be fixed, but I've decided to stop using that address anyway, due to the amount of spam it was receiving. From now on, please contact me through the User Forum, where my username is "allan". Also, if you sent me any email at that address in the last 9 days or so, I'm afraid that it has been lost and you'll have to resend it. I'm sorry for any inconvenience this may cause.

June 25, 2008

Version 1.348a released. This is another alpha version, although it should be pretty stable. It fixes several bugs, including some bugs in earlier non-alpha versions. 
Some people are now using the alpha versions for production work. If you do this, your project file may not be backward-compatible with earlier non-alpha versions, depending on what features you use. Also, you won't be able to use autorouting since Bruce is still working on the upgrade to FpcROUTE.

June 11, 2008

Bruce Parham has found a problem with the IPC-7351 libraries, where thermal pads on some footprints were not assigned a pin name, which caused problems in versions of FreePCB earlier than 1.345a. This has been fixed, and new versions of the library files are available on the Downloads page.

June 10, 2008

My first pass at a set of IPC-7351 footprint libraries is posted on the Downloads page. They were extracted from the data files for the PCB Libraries LP Viewer (version 6.20.00). There are three separate library folders with different pad sizes, "Least", "Nominal" and "Most" (i.e. small, medium and large pads). The names of the library files in each folder are derived from the "Description" field of the LP Viewer database.. 
If you use these libraries, I would strongly suggest that you download the LP Viewer application. This allows you to browse the libraries, with excellent graphics and dimensional information, as well as information on alternate names for the footprints and the standard on which they were originally based. Then you can find the corresponding footprint in the FreePCB libraries from the description and name of the land pattern. There are about 1800 footprints in each library folder. Enjoy!

June 4, 2008

Version 1.347a released. This fixes several bugs that crept into the code for reading/writing project files, so that certain part and footprint parameters weren't preserved.

May. 31, 2008

Version 1.346a released. This fixes a bug where FreePCB would crash on opening a project with parts that didn't have footprints assigned.

May. 28, 2008

Bugs already! Two of them are fixed in 1.345a. This is still an alpha version, for testing and comments. I would not recommend it for production work.

May. 27, 2008

I've posted a new version 1.344a. This is an "alpha" version, meaning that isn't quite finished, but I'm releasing it so that anyone who is interested can see the new features and help me test them. Although it seems pretty stable, I would not recommend using it for production work. For one thing, if you use the new features you can create footprints that are not backwards compatible with earlier versions.

Apr. 13, 2008

I've posted a new version 1.343. This is exactly the same as 1.342 except that it fixes a bug where the centroids of parts were not correctly reported in the report file.

Apr. 5, 2008

I've fixed the panelization bug, and posted a new version 1.342. This is exactly the same as 1.341 except for the bug-fix.

Apr. 4, 2008

A bug has been found in the panelization code. The board outline dimensions are rounded to the nearest mil in the Gerber file generator, but not in the drill file generator. Therefore, if you have specified the board dimensions in mm, an error can be introduced. This will be fixed in the next release. In the meantime, if you are using the panelization feature, you should enter the board outline coordinates in mils.

Dec. 18, 2007

I've posted a new version 1.341. This fixes at least 3 bugs in 1.340. I wasn't planning to release a new version this soon, and there is some unfinished code for adding new elements to footprints, so there are a few new menus and dialogs that don't actually do anything. See the User Forum/Latest News for more details.

Dec. 1, 2007

I've posted version 1.211 of FpcROUTE on the Downloads page. This fixes a bug in version 1.210, so everyone should get the new version. I've also put the new version in the 1.340 Combined Update.

Nov. 30, 2007

Well, I didn't get much feedback on the debug2 version, but I'm going to assume that the right-click bug is fixed. So I'm releasing version 1.340 which is basically the same as 1.339_debug2. It's on the Downloads page.

Nov. 14, 2007

I've created another version to try and solve the right-click bug . It's called 1.339_debug2, and it's on the Downloads page. Please try it out. If you'd rather just get your work done, you should probably use version 1.338 until the bug is fixed.

Nov. 10, 2007

A bug has apparently appeared in 1.339 that can crash FreePCB on right-clicking. I can't reproduce this myself. The debug assertion indicates that the right-click menu is failing to load. I've created a special debug version of 1.339 that traps this error and should show a message without crashing. It's called 1.339_debug1, and it's on the Downloads page.

Oct. 31, 2007

Version 1.339 posted. This fixes some bugs, and adds a new function to generate a report file which contains board statistics, etc. See the User Forum/Latest News for more details. 
Also, there is a new version (1.12) of the FpcLib utility from Bruce Parham. I've added it to the Downloads page.
So far so good with the new User Forum software...no crashes yet!

Sept. 20, 2007

I apologize for neglecting the User Forum for the past 10 days or so, but I've been on vacation to Barcelona and Madrid, with limited internet access. I gather that the Forum was down for much of this time. This is a recurring problem, where one of the configuration files gets corrupted. The tech support people at my hosting service have been unable to figure it out. I've upgraded to the latest version of the Forum software, and I've tightened the permissions on the configuration files. If this doesn't work, I'll probably have to change hosting services.

Bruce Parham has contributed a command-line utility for editing library files, called FpcLib. You can see Bruce's post describing the software here. I've added the latest version to the Downloads page.

Aug. 14, 2007

Version 1.338 posted. Hopefully, this fixes a bug that could cause crashing on closing the program. See the User Forum/Latest News for more details.

Aug. 9, 2007

Version 1.337 posted. This adds full support for 16 layers. See the User Forum/Latest News for more details.

July 19, 2007

Version 1.336 posted. This fixes some bugs. See the User Forum/Latest News for more details.

July 14, 2007

Version 1.335 posted. This fixes a few bugs and allows changing the net assignment of a copper area. See the User Forum/Latest News for more details.

June 30, 2007

Version 1.334 posted. This increases the display resolution to 0.1 mils for Windows 2000, XP and Vista, and fixes a few bugs. See the User Forum/Latest News for more details.

June 22, 2007

Version 1.333 posted. This fixes several bugs. See the User Forum/Latest News for more details.

June 11, 2007

Version 1.332 posted. This adds several new features. See the User Forum/Latest News for more details.

May 29, 2007

Version 1.331 posted. This adds a "redo" function and rotation of groups. See the User Forum/Latest News for more details.

May 18, 2007

Version 1.330 posted. See the User Forum/Latest News for more details.

May 11, 2007

Version 1.329 posted. See the User Forum/Latest News for more details.

May 8, 2007

Version 1.328 posted. See the User Forum/Latest News for more details.

Apr. 29, 2007

Thanks to Bruce Parham, there is an updated PDF version of the User Guide available on the Downloads page. If you download it, you should extract the files to the freepcb\doc\ folder. The next release of FreePCB will have a link to this file in the Help menu.

Apr. 14, 2007

I've been working on updating the User Guide with the new features that have been added since version 1.2, which was the last stable version . This is a work in progress, which I was planning on releasing with the next stable version, which will be 1.4. However, since I'm now recommending the latest unstable version instead of version 1.2 for new users, I've decided to make it available. You can see it by clicking on User Guide, and you can download it on the Downloads page. If you download it, you should extract the files to the freepcb\doc\user_guide folder.

Apr. 7, 2007

This version fixes a few bugs, and adds the ability to create Gerber files for solder paste masks. It also adds the ability to "panelize" your Gerbers (i.e. create Gerbers with multiple copies of your board). There is also a change in the way it handles importing session files from the FreeRoute autorouter. See the User Forum/Latest News for more details.

Mar. 11, 2007

I've made some changes to the Downloads page. I've added a "combined update" download that includes the latest recommended versions of all files that have changed since version 1.2. This is mainly for new users who are downloading the complete 1.2 distribution. I've also added sections for FpcROUTE and the Hershey font files.

Mar. 6, 2007

A bug already! The export .dsn and import .ses functions didn't handle filenames with embedded spaces correctly. Also, the user is now prompted before saving the project file when exporting. Version 1.326 posted. See the User Forum/Latest News for more details.

Mar. 6, 2007

Version 1.325 posted. This adds an interface to the FpcROUTE utility by Bruce Parham, that allows exporting FreePCB projects into the FreeRoute web-based autorouter, and importing the results back into FreePCB. Also, I've changed the compiler settings to try to resolve an incompatibility with Win98. See the User Forum/Latest News for more details.

Feb. 19, 2007

Version 1.324 posted. This adds Group Delete, and allows saving and pasting groups to/from files. It also allows changing the number of layers in an existing project, and fixes a few bugs. See the User Forum/Latest News for more details.

Feb. 12, 2007

Version 1.323 posted. Everyone should upgrade to this version. See the User Forum/Latest News for more details.

Jan. 17, 2007

Version 1.322 posted. This fixes a few bugs. See the User Forum/Latest News for more details.

Dec. 19, 2006

The User Forum is back up, thanks to the excellent tech support people at lowesthosting.com who found a corrupted script file, and restored it from backup.

Dec. 17, 2006

For some reason, the User Forum has stopped working! I've contacted my hosting service for help getting this resolved. Sorry for the inconvenience.

Oct. 22, 2006

Version 1.321 posted. This adds a feature long requested by TinyCAD users, namely preservation of routing when net names are changed. See the User Forum for more details.

Oct. 9, 2006

There is a new version of FPCfab (v. 1.33) by Bruce Parham on the Downloads page.

Sept. 1, 2006

Version 1.319 posted. This fixes several bugs. See the User Forum for more details.

Aug. 29, 2006

Version 1.318 posted. This fixes a bug in the rendering of clearances and a bug that could result in copper areas inside cutouts in other areas not being drawn.

Aug. 28, 2006

Yet another new version, 1.317. This fixes 2 bugs. See the User Forum for more details.
Also, I've added some interesting boards to the Project Gallery.

Aug. 27, 2006

Oops! Bruce Parham has already found a critical bug in 1.315 so I've removed it and posted 1.316.

Aug. 27, 2006

Version 1.315 posted. This fixes multiple bugs. See the User Forum for more details.

Aug. 9, 2006

Version 1.314 posted. This fixes some bugs and improves support for branching traces. See the User Forum for more details.

Aug. 7, 2006

Version 1.313 posted. This fixes a few bugs that were already reported in 1.312. See the User Forum for more details.

Aug. 6, 2006

Version 1.312 posted. This adds branching traces and improves the Group Copy/Paste functions. See the User Forum for more details.

Jul. 15, 2006

Version 1.311 posted. This fixes a bug which mistakenly deletes zero-length trace segments between SMT pads and vias. Also, copper areas can now be placed inside cutouts in other areas. See the User Forum for more details.

Also, I've posted a command-line utility written by Bruce Parham which generates component placement files from a FreePCB project file. It is called FpcPlace, and you can find it on the Downloads page.

Jul. 2, 2006

Version 1.310 posted. This fixes a serious bug which could cause shorts between traces and copper areas that contain cutouts. See the User Forum for more details.

Jul. 1, 2006

Version 1.309 posted. This fixes a bug in group copy and paste where the part references were not positioned correctly. See the User Forum for more details.

Jun. 30, 2006

Version 1.308 posted. This adds copy and paste operations for groups of parts and traces. See the User Forum for more details.

Jun. 1, 2006

Bruce Parham has contributed a command-line application that generates fabrication drawings from Gerber or template files. You can download it from the Downloads page. Be sure to read his application note on creating assembly drawings as well!

Apr. 5, 2006

Version 1.307 posted. This fixes a bug that could cause saving a project to fail. See the User Forum for more details.

Apr. 4, 2006

Sasha Zbrozek has added pictures to his guide to making PCBs at home. The new version (v.0.0.2) is available for download on the Resources and Links page.

Apr. 2, 2006

Version 1.306 posted. This fixes several bugs. See the User Forum for more details.

Also, Sasha Zbrozek (a.k.a. kleptophobiac from the User Forum) has written a guide to making PCBs at home. It is available for download on the Resources and Links page. He promises to add to it in the future.

Apr. 1, 2006

Version 1.305 posted. This fixes several bugs. See the User Forum for more details.

Mar. 27, 2006

Version 1.304 posted. This fixes a couple of bugs. See the User Forum for more details.

Mar. 15, 2006

Version 1.303 posted. This includes a patch by Arlen Cox that improves routing from off-grid points. See the User Forum for more details.

Mar. 6, 2006

Version 1.302 posted. For the first time, I've compiled a release version as well as a debug version. See the User Forum for more details.

Mar. 2, 2006

Guillaume Rosanis (a.k.a. Merlin from the User Forum) has contributed a set of software tools for rendering and printing Gerber files. They are posted on the Downloads page. Please give them a try!

Jan. 31, 2006

The User Forum has been intermittently out of service for the past few days. Apparently there have been multiple accesses from certain IPs that seem to be running scripts, and my hosting service has been disabling the gforum.cgi to protect their server. I'm trying to find a solution. In the meantime, if anyone has been running scripts to download all of the forum posts, for example, PLEASE STOP. One of the offending IPs is 201.240.122.22 from Lima, Peru.

Jan. 25, 2006

I've posted a new version of FPCcombine (version 0.20) that creates multiple columns, repeats a given design a specified number of times, and rotates the projects before adding them to the combined project. It is on the Downloads page. Thanks again, Bob!

Jan. 24, 2006

Bob Thakkilapati has contributed a program called "FPCcombine" that performs panelization of multiple projects, by combining them into a single project. It panelizes vertically, but you can move the duplicated projects around with the "Group Move" command. It is posted on the Downloads page. Thanks Bob!

Dec. 11, 2005

Version 1.301 posted. See the User Forum for more details.

Dec. 9, 2005

Oops, I forgot to remove the dependency on DBGHELP.DLL. I've fixed this and reposted Version 1.3.

Dec. 8, 2005

Version 1.3 (unstable) posted. This corrects a bug and includes some new functions for copper areas. See the User Forum for more details.

Nov. 17, 2005

Version 1.205 posted. This corrects 2 bugs and allows "backing up" when routing using the backspace key. See the User Forum for more details.

Oct. 25, 2005

Version 1.204 posted. This corrects a few more editing bugs, and also a bug which sometimes prevented FreePCB from finding the default library folder if it was opened from a shortcut. See the User Forum for more details.

Also, the source code for recent versions is now available for anonymous checkout from the public SVN repository at www.berlios.de. See the Downloads page for more details.

Oct. 23, 2005

Version 1.203 posted. This corrects a few bugs in the Footprint Editor. See the User Forum for more details.

Oct. 12, 2005

Version 1.202 posted. This corrects a few bugs. See the User Forum for more details.

Sep. 13, 2005

Version 1.201 posted. This corrects a bug where undoing pin assignments to nets caused errors.

Sep. 6, 2005

Geoff Thompson has contributed an installer for the Version 1.2 distribution. It is on the Downloads page. Thanks, Geoff!

Aug. 25, 2005

Source code for Version 1.2 posted.

Aug. 14, 2005

Version 1.2 posted. This replaces 1.007 as the recommended "stable" version of FreePCB. It is basically the same as version 1.120 with a few small bug-fixes. The User Guide has also been updated for this version.

Please refer to the "User Forum/Latest News" for more information on these and other recent developments.

Try it out!

If you would like to download FreePCB and try it out, click here. It comes with a fairly complete User Guide, which you can browse by clicking here.

If you use FreePCB to design a PCB, I would STRONGLY suggest that you check your Gerber files with a program such as ViewMate (available for free here) before spending any money to have the boards manufactured. If you make a board successfully, send me a picture and I will post it for everyone to admire!

If you have suggestions, comments or questions, please post them to the User Forum. If you need to contact me directly,  you can send a private message through the Forum, where my username is "allan".

I will try to answer all messages but given the other demands on my time there may be some delay (hopefully a matter of days, not weeks or months).