FAQ: DipTrace pick and place data export
Posted: Tue Mar 17, 2015 7:56 am
Any pick and place machine (not just mine) needs at least five pieces of information from each component:
Component designator (DipTrace: RefDes)
Component value
Component footprint (DipTrace: Pattern)
Center X
Center Y
We are talking about the first three here, and DipTrace has a problem.
For a component, DipTrace has fields for RefDes, Value, Pattern and Name. RefDes is the designator identifying individual parts. Value is as it says; for example, telling different value resistors apart. Pattern is the name of the footprint, telling what is actually printed on the PCB. The use of Name field seems to be not consistent(!), and is the smaller part of the issue.
The bigger part of the problem is that DipTrace does not export Pattern to the pick and place file. DipTrace has acknowledged the issue and said that they will release new version that corrects this “this spring”.
So, let’s look at a test board I got from a customer. He said: “Just placed some simple components directly in PCB from Diptrace standard library.” The board had some resistors, BC846B transistors and LM258AD ICs. The resistors had name and pattern both as RES_0603, and no value; the value would be determined at design time for real design, of course. The ICs had name as LM258AD, pattern as SOIC-8/150mil and also, no value – and here is the smaller issue. At first look, it seems that filling in the value for the ICs or transistors is unnecessary, as the name identifies the part already. Not so.
Even when DipTrace does start to export the pattern, it would not be a sufficient solution. When pattern is a choice in export, exporting RefDes, Name and Pattern would give out for the ICs [U1, LM258AD, SOIC-8/150mil, x, y] which is right. But for resistors, one would get [R6, RES_0603, RES_0603, x, y] which is not good, the value is absolutely needed. Exporting RefDes, Value and Pattern does not work either, as resistors come out correctly as [R6, 10k, RES_0603, x, y] but the ICs would be [U1, -, SOIC-8/150mil, x, y] which is not good either.
One solution would be to edit the libraries so that parts that currently have no value (like the ICs and transistors in our example) will get their value field filled in. This is not a trivial task and might break existing designs, so not all user or companies will want to this route. So, here are my suggestions; you might see other solutions:
In future, when Pattern is exported, my suggested solution is to require designs to have a filled Value field for all components, either automatically from edited (should we say “corrected”?) libraries, or manually added.
Before the coming DipTrace revision, I suggest to manually add Pattern field to the pick and place file. Excel can read and write CSV files, so the task might be tolerable.
Let me finish by pointing out again, that although this discussion is on the LitePlacer forums, this issue is not just for the LitePlacer machine, but applies equally to any pick and place machine using Diptrace pick and place output.
Component designator (DipTrace: RefDes)
Component value
Component footprint (DipTrace: Pattern)
Center X
Center Y
We are talking about the first three here, and DipTrace has a problem.
For a component, DipTrace has fields for RefDes, Value, Pattern and Name. RefDes is the designator identifying individual parts. Value is as it says; for example, telling different value resistors apart. Pattern is the name of the footprint, telling what is actually printed on the PCB. The use of Name field seems to be not consistent(!), and is the smaller part of the issue.
The bigger part of the problem is that DipTrace does not export Pattern to the pick and place file. DipTrace has acknowledged the issue and said that they will release new version that corrects this “this spring”.
So, let’s look at a test board I got from a customer. He said: “Just placed some simple components directly in PCB from Diptrace standard library.” The board had some resistors, BC846B transistors and LM258AD ICs. The resistors had name and pattern both as RES_0603, and no value; the value would be determined at design time for real design, of course. The ICs had name as LM258AD, pattern as SOIC-8/150mil and also, no value – and here is the smaller issue. At first look, it seems that filling in the value for the ICs or transistors is unnecessary, as the name identifies the part already. Not so.
Even when DipTrace does start to export the pattern, it would not be a sufficient solution. When pattern is a choice in export, exporting RefDes, Name and Pattern would give out for the ICs [U1, LM258AD, SOIC-8/150mil, x, y] which is right. But for resistors, one would get [R6, RES_0603, RES_0603, x, y] which is not good, the value is absolutely needed. Exporting RefDes, Value and Pattern does not work either, as resistors come out correctly as [R6, 10k, RES_0603, x, y] but the ICs would be [U1, -, SOIC-8/150mil, x, y] which is not good either.
One solution would be to edit the libraries so that parts that currently have no value (like the ICs and transistors in our example) will get their value field filled in. This is not a trivial task and might break existing designs, so not all user or companies will want to this route. So, here are my suggestions; you might see other solutions:
In future, when Pattern is exported, my suggested solution is to require designs to have a filled Value field for all components, either automatically from edited (should we say “corrected”?) libraries, or manually added.
Before the coming DipTrace revision, I suggest to manually add Pattern field to the pick and place file. Excel can read and write CSV files, so the task might be tolerable.
Let me finish by pointing out again, that although this discussion is on the LitePlacer forums, this issue is not just for the LitePlacer machine, but applies equally to any pick and place machine using Diptrace pick and place output.