ECOs and version numbers

It is important to be able to track different versions of hardware, in exactly the same way as it is required to track different versions of software. To this end companies use drawing numbers, revision levels, ECOs and controlled documents. The method described here might seem rather rigorous, especially for a small project, but once it is in place it reduces the scope for errors considerably, and costs little in effort to run.

Each company handles ECOs and version numbers differently. There probably isn't a "best" method. Some companies use serial numbers and a lookup list to tell what version of board is being used. Some companies use date code. Some companies use a simple "Version 1...2...3" and some companies use a simple "Issue A...B...C". There are all the combinations between.

At AirBorn electronics, we use a PCB number (e.g. AB9407111) on our circuit diagrams that refers to an identically numbered Printed Circuit Board, an identically numbered parts list, and an identically numbered Gerber file - tieing the group together. Thus every time a new version of a PCB is made, its matching files form a unique set... Actually, by virtue of a special "component" the number is carried through to the PCB and parts list automatically, so it takes some amount of effort if we ever want to remove it from the other documents.

Circuit diagrams have a revision number (e.g. "V1.02a") that is basically a climbing record of changes to the document. This number is independent of the PCB number, as sometimes there will be changes to a schematic that can be reworked on existing PCBs. An example could be a different resistor value - a new schematic diagram might be required, but existing PCB laminates could be used with just a simple modification. The drawing number would remain the same, as a new PCB has not been issued - but the schematic revision level would climb, to reflect the new issue of diagram.

It is also possible (although more rare) that a printed circuit board would be reissued with no modification to the circuit diagrm. This would normally be because of some mechanical change (e.g. moving a component or mounting hole) or cosmetic (e.g. labelling) change of the PCB. In this case the PCB number would change on all documents - but the schematic revision number could remain the same, indicating that this was, in fact, exactly the same circuit design.

When a modification is required to equipment that has been shipped or is otherwise outside of the immediate control of the electronic designers, an Engineering Change Order (ECO) is issued. An ECO is an instruction to implement an engineering change, and must specify the equipment to be altered (PCB number and revision level), the modification, and its applicability.

Applicability of ECOs determines which units will be modified - some common definitions might be:
  • Mandatory on all current and future production
  • Mandatory on all units held in stock
  • Optional on units already in the field (subject to the occurrence of symptoms)
  • Mandatory on all current production only
  • Not applicable to future production (future units will not need this modification)

Noise Injector test unit The ECO will usually include a statement of why the ECO was required, or what production or design fault the ECO remedies. Often modifications are made to equipment to accommodate a change in some outside factor - e.g. a shift in specification of a certain part used on the board, or a problem with an interfacing device. The number of ECOs is not a reflection on the quality of the design - some companies just issue more ECOs than others, and often it is easier to alter a PCB that is in regular production to work around a fault in an interfacing device, and so an ECO might be issued to this effect - even though, strictly speaking, there was no problem in the PCB being modified.

The original issue documentation files are "Controlled documents". Previously, when the documentation was in paper format, a record was kept of the location of the documents (alhtough in practice that usually meant the files themselves are kept in a safe place), and whenever a modification occured to the equipment, the controlled documents were updated. In this way, the controlled document always represented the known latest version of the board. Nowadays a server contains the "Controlled documents" and everyone has access to the latest version by just accessing a webpage, so it is that much easier.

Uncontrolled documents are copies of controlled documents made at an instant in time, and may be out of date if modifications have occurred since that time. In the same way, a standard way of distributing PCB documentation is a PDF or gerber file sent by email - it is a copy, it is uncontrolled, and the reader is left to check if it is up to date.

©2013 AirBorn - Last updated 27 April 2013