So, how much do you know about Gerber data???
WBA Consulting
Posts: 2,934
Gerber data is the industry standard format for providing data to PCBA manufacturers, fab houses, etc. when dealing with printed circuit boards. But, did you know it goes way beyond that?
I deal with PCB based RS274 Gerber data pretty much on a daily basis and have so for the past 16 years. Whether I am reviewing a design for a customer, evaluating a design to determine process necessity, or just looking at the latest open source design posted on the internet. I understand the RS274 and 274X gerber formats well enough that I can view/edit gerber files in notepad to determine why some gerber files won't import properly into software that I use (such as GCPrevue or Aegis CircuitCAM). However, I never knew that there was a detailed history behind the Gerber format until I saw this article:
http://www.edn.com/electronics-blogs/now-hear-this/4441862/The-Gerber-behind-the-Gerber-file-format
David Gerber recently wrote a book about his father, H. Joseph Gerber, the inventor of the gerber format. This is a good article and the book looks very interesting as well.
http://www.amazon.com/The-Inventors-Dilemma-Remarkable-Joseph/dp/0300123507
I deal with PCB based RS274 Gerber data pretty much on a daily basis and have so for the past 16 years. Whether I am reviewing a design for a customer, evaluating a design to determine process necessity, or just looking at the latest open source design posted on the internet. I understand the RS274 and 274X gerber formats well enough that I can view/edit gerber files in notepad to determine why some gerber files won't import properly into software that I use (such as GCPrevue or Aegis CircuitCAM). However, I never knew that there was a detailed history behind the Gerber format until I saw this article:
http://www.edn.com/electronics-blogs/now-hear-this/4441862/The-Gerber-behind-the-Gerber-file-format
David Gerber recently wrote a book about his father, H. Joseph Gerber, the inventor of the gerber format. This is a good article and the book looks very interesting as well.
http://www.amazon.com/The-Inventors-Dilemma-Remarkable-Joseph/dp/0300123507
Comments
We were outputting Gerber from the CADSTAR PCB suite back in the 1980's.
I have to read the links provided.
Drew; nice link on the book. Had not seen that, but it only came out late last year.
I worked with Joe Gerber in the 80's. I have to say, he was the sharpest tool in the shed.
We were about the only game in town for Photoplotters, and we sold a bunch. The company wrote a lot of custom software to pull data out of various platforms, and convert to RS-274. Various PCB, ship building, aircraft manufacturing platforms.
Raster plotters were the demise, although we had some of the first on the market.
I never did meet David Gerber. Not sure he worked at the plant. He might be about my age.
https://www.ucamco.com/en/file-formats/gerber/demo-1
Publison, I am jealous. Joseph Gerber is on my list of people I would have loved to meet.
tonyp12, yeah caught wind of Gerber X2 in 2014 when GCPrevue began supporting it. Although I support the advancement of the format, I wish Ucamco wasn't directed many of the "upgrades" to the standard for the good of their own products. It tarnishes the standard as a true "industry driven" standard. Some of the changes simply add features that exist in other output formats that have been readily available for years, so I would think advancing their own software would be more valuable for their products, but that means they have to pay for the software development. In any case, there are some valuable additions to the X2 format and I hope to some day see them get used.
However, if you can read G-Code, you can read gerber (and vice versa) as the similarities are still very visible. Our original ACE KISS 102 Selective solder machine uses Mach 3 and G-Code, so even though I never learned how to program the machine, I can completely understand the programs when I see them.
I am MD of Ucamco. I am puzzled and disappointed by this criticism. It is not clear to me which "upgrades" were directed to for the good of our products. (Nor would I know how to do this.)
1) The situation is different from ODB++ for Mentor. Gerber is not our internal UcamX format, as DPF is. For Ucamco, it is an external format; we must implement "upgrades", just like any other vendor. Gerber "upgrades" are not a natural side effect of extending UcamX. We implemented X2 about a year after the spec was finalized - well after Graphicode.
2) We upgraded the spec in two ways. First we spend a lot of time (and money) on cleaning out and clarifying the specification document. Surely, an unequivocal spec is to the benefit of all users, and not just Ucamco. Second, we developed X2, which allow to add the following attributes to a Gerber file: file functions - which layer is represented by the file - and pad functions - is this an via, an SMD pad,.... There was a lot of request to add this information. Yes, we have implemented X2 in UcamX, and this is a benefit of our software. However, the information is there for all to use, and all are invited to implement X2, and several have. There is nothing in these attributes that is Ucamco specific. Surely, all CAM software can define which image is the top layer, and what pads are vias. Having that information in standard way is a benefit for all
I beg to differ. We went to great lengths to get input of the user community on X2. We are not omniscient. This is illustrated best by the next upcoming extension of the Gerber spec, nested step and repeat. We published the first draft - based on requests from LDI manufacturers - on our website in August 2015 and invited community comment. We are now at the 10th revision based on external input. I do not know what we can do more. By the way, you are all invited to comment - when the spec is frozen it will be too late.
Maybe, but what is wrong with that? Except maybe that it would have been better if we would have developed X2 earlier.
It do not really understand, but we have paid for our own X2 development - as we paid for the development of the specification. If the suggestion is that we should pay for other companies X2 development, the I categorically decline. We derive no license or other revenue from the Gerber format. If people don't want to implement Gerber, so be it.
Thanks for these kind words. We have received quite some positive feedback, and we are actually a little bit proud of what we have done. Hence our surprise on the very negative comments above.
wkr
Karel Tavernier
Karel, thanks for taking the time to join the forums and responding to my comments. (For those unaware, MD means Managing Director.) I did not mean to insult your company, but rather clearly express my opinions about how the standard is being modified as it applies to my industry. My opinions are based upon my utilization of gerber data, the value I see in the upgrades being implemented, and how my software suppliers share their opinions as to the point or value of the X2 format. So far, I haven't seen any value-add for the changes between 274X and 274X2
There is an obvious disparity between advocates of gerber versus advocates of ODB++, but I am not either one of them as I use both routinely for what they are intended for. Even the Wikipedia page for ODB++ shows an argument that Ucamco has against ODB++ and I am fully aware of the Coates/Tavernier debate from PCB Design in September 2014. The fact is that ODB++ has been readily accepted and is in wide use today as both a gerber alternative and a supplement to gerber. I bet much of that is due to ODB++ no longer being proprietary and is licensed free of charge to any adopter. I will agree that the new version is cleaner, although I had no issues with the last Barco published document and still proudly have a copy on my desk sent to me by someone at Barco years ago. And, I would say that the past version was unequivocal as well, but the usage of gerber pushed the limits for some adopters obviously. You have even stated in the 2014 article how many issues that Julian brought up are due to poor implementations of the spec, not the fault of the spec. I completely agree with that statement and see the effects of poor implementation several times a year. I did not say that the new features were specific to Ucamco, but rather directly benefit your products. Other software products that I use that need additional intelligence from the data have added abilities to leverage other existing formats, such as ODB++/IPC-D-356/GenCAD/PDIF/etc, to accomplish the same goal without requiring my customers to do anything differently in how they supply me data already. Maybe tarnish was too strong of a word, but we will just have to be content with disagreeing opinions here. I did not mean paying for X2 development, but rather paying for other software Ucamco develops to have the ability to support other readily available formats that already supply the same information. I don't know UcamX's abilities, but if it supports ODB++ or other more intelligent formats, I don't understand the justification for modifying the gerber format to replicate the intelligence.
And yes, had X2 development started a few years prior to when it did, I would expect to see it competing with all of the abilities of ODB++. As the industry has changed in that the data exchange between designer and manufacturer is much more in depth and robust, ODB++ has definitely gained momentum.
You're very welcome. I apologize if my opinions came across as harsh, but I only intended to clearly convey them. I have been dealing with gerber for 25 years now, heavily for the past 16, (and probably will for the next 24 before I retire), so I am quite confident in my opinions of the gerber format's advantages and faults. Both do exist, but the fault's I deal with are completely covered by other data formats my customers supply with the gerber. Long story short, I have no intentions on debating my opinions regarding gerber X2 as they are founded in my daily use of the format and thus are very valid.
On somewhat of a related note:
Nearly all of the data packages I see nowadays include secondary forms of data from the EDA software. Gerber is always supplied, but it is also always supplemented with some other form of board data. A typical data package consists of:
BOM in Excel format
Gerber (with readme doc, excellon drill, fab drawing, and sometimes panelization data)
Centroid data (CSV or Excel)
Netlist in IPC-D-356 format
ASCii CAD file (could be PADS-POWERPCB, GENCAD, ODB++, PDIF, etc)
Schematic in a PDF
Assembly Drawings (PDF, HPGL, Gerber, or DXF)
Panelization drawing in PDF
I have two for Gerber Photoplotter Model 40. Anybody need one or two?
Absolutely correct! That was the fiducial oc choice back in the day. The reason you can not see the other apertures is due to the fact that there are Kodak neutral density filters on top of the apertures. These had to be adjusted for each machine and lamp output.
The apertures were produced on a Gerber 1434 photoplotter which was the most accurate photoplotter. Most TV masks, if not all, at the time were produced on the 1438. It had a variable aperture head that could rotate to accommodate the curvature in the tv glass.
The machine only cost $750,000 in 1989.
More good reading:
https://en.wikipedia.org/wiki/Joseph_Gerber
I wish I bought a Variable Scale when they had 2 or 3 available.
True enough, but I do not see the problem. I understand that other software has a need for additional intelligence. If the need cannot be handled by Gerber extensions I do not see what Ucamco can do about it. If this need can be handled by Gerber extensions we are open to concrete and constructive proposals. Concrete suggestions and remarks sent to gerber@ucamco.com are alway taken into account - they were the basis for the recent improvements in the specification.
I understand that other information such as components are handled in other formats. This is absolutely fine. I do not hold that Gerber is or must become the All Encompassing Format That Handles Everything. See my article Kick-starting a revolution: IPC-2581 meets Gerber in the PCB Design Magazine http://www.magazines007.com/emag/pub/PCBD-Jan2013/fscommand/PCBDesign-Jan2013.pdf
It is alleged that ODB++ contains everything Gerber X2 does. This is true to some extent. However, this is not the point. ODB++ now exists over 20 years, and is used in 5-10% of PCB fabrication data sets. This low number is not because ODB++ is intrinsically bad - it is not, one surely make PCBs with it. The issue is that ODB++ is complex, and implementing a full image format it correctly is a major undertaking. This is not an issue for behemoths as Mentor or Cadence. However, many PCB CAD/CAM software suppliers are small companies, with just a few people in R&D. For them this is an issue. For bareboard, X2 contains what is missing in Gerber and found in ODB++, and more. The so-called "intelligence". Adding the X2 support to an existing GerberX output software is quite straigtforward. Dont take my word for it. Paul Wells-Edwards from Graphicode's, the first to implement X2 stated: "Used by countless PCB professionals globally and throughout the PCB pre-production process, GC-Prevue is the industry's de facto standard Gerber viewer, so we have worked closely with Ucamco years. The beauty of Gerber is that it's simple, and very widely used, and Ucamco's use of attributes is a very clever and straightforward way to improve and build on it. By extending the format and making it far clearer, Ucamco has improved the CAM task no end. When the opportunity arose to participate in that improvement, we jumped at it.” He adds that the implemention of X2 is simple and straightforward, given that it consists of just 3 new commands and a clear list of standard attributes: “It took is just a week and a half of coding to be able to add the necessary information, so it's a very small step for any CAM system to be able to handle it”. This is something entirely within reach of small companies. If we are accused of leveling the playing field for the small companies I plead guilty as charged.
Anyhow, I do not see what harm X2 can do. It is compatible with good old GerberX - image generation has not changed. Any conforming GerberX reader perfectly reads X2 files, ignoring the attributes and generating the correct image. (If your GerberX input chokes on X2 there is something seriously wrong with it.) If one does not want to use the new capabilities of X2, fine, but please do not stop those that want to make progress. There is an X2 FAQ on www.ucamco.com/downloads for those that want to know more.
But anyhow, the X2 spec is published and cannot realistically be changed or undone. We can only influence the future. We are now working on the next extension of Gerber, nested step and repeat. X2 improves bare board design to fabrication data transfer. Nested step and repeat is about fabrication proper, defining panels more efficiently and with more structure in order to allow serialization. Serializiation is required more and more. A draft specification is published on www.ucamco.com for review by the users. If Gerber is important to you, now is the time to review it. All constructive comments are welcome. When the spec is frozen it is too late.
Back in the day I worked for Racal-Redac on their CADSTAR schematic editor and PCB layout suite.
They had this issue that when drawing a gerber layout on a pen plotter, when the thing had to draw a big round pad it spiralled around and around filling a circle with ink and drilling a soggy hole in the paper! It was interesting to fix that.
Sorry, a bit off topic.
I do worry about putting things like "nested step and repeat" into such a format. All of a sudden the declarative statement about what should be drawn becomes a procedural programming language.
At that point why not give up and use PDF or some such which already has a programming language built in?
PDF is an outstanding graphic arts page description format, with very rich interactive features. However, it is not suited for PCB production data. PDF does not support circular arcs which are ubiquitous in PCBs. Of course, the arcs can be broken up in segments and approximated. This is perfectly fine for documentation but not if one needs to maintain design intent as in CAD to CAM data tranfer. Second, apertures are essential in a PCB format. An aperture represent the shape of a pad one time, which can then repeated many times on the image. This slashes file size, and, more importantly, it is needed to make the file editable. PDF does not have flashed apertures. Third, PDF has a host of fantastic features necessary in graphic arts, but superfluous in PCB - it would be vastly over-complex to use it as PCB CAM input format IMHO. PDF is not suitable for PCB fabrication data.
Post script is a fully Turing complete programming language with graphics primitives built in. It certainly does support circular arcs: It also supports Bézier Splines and pretty much anything else one might want.
I would wager that Post Script can represent anything that Gerber can and be very compact about it.
I had thought that PDF can do anything PostScript can. Perhaps not.
Not that I'm knocking on Gerber. I'm all for the right tool for the job and the simpler the better.
The initial version of PDF had a PostScript compatible graphics primitives but not the programming language - the programming language is fine for image generation but made it impossible to use PostScript as an application format, your initial argument. (Apparently PDF also omitted graphics primitives such as arcs.) This led to the huge success of PDF. The graphics is the hardest to develop and often takes years to make reliable; geometric programming is notoriously hard. PDF re-used the ubiquitous PostScript graphics primitives and turned it into a powerful application format.
https://www.ucamco.com/en/guest/downloads
Expand the "Gerber Format - EN" section for the Gerber File Format Specification PDF
They also have a free online gerber viewer if you don't mind uploading your data.
https://gerber.ucamco.com/