On my schematics I add a field to symbols that contains the company’s own inventory number for each part: Example (somewhat fake)
Reference: R101
Value: 10k
XCoPN: 23-B103
I would like the XCoPN field to appear on the PCB footprint, ultimately in an assembly drawing. I can see how to manually add such a field to a footprint, and make it visible on a particular layer, position it and so on…
But how do I create that footprint field and populate it with data automatically from the schematic?
I am using 5.1.9-1, but if this is something that improves in 6.x, that would be interesting too.
Unfortunately not on the PCB and any asset generated from the PCB. AFAIK, in 5.1.x the only component data transferred to the PCB is Ref’D, Value, Footprint, and TimeStamp. (The timestamp is the default link between the symbol in the schematic and the footprint on the board, replaced by UUID in 5.99.) Thus any custom fields that you put into the schematic simply don’t exist in the PCB file. If you use the schematic for BOM generation then you can get all the custom fields exported into a table format that you could then use in a (custom) script to merge the BOM with the placement file generated from the PCB. I’m personally unaware of any such script so that might be up to you (or your organization) to create.
Yes, schematic --> custom BOM --> other uses is something we do. However, it would be a bit more complicated to get that data into the actual PCB file, both the code to do it, and the workflow.
It sounds like the 5.99 way of doing it solves all that. However, we are using Kikit for panelization, and so far as I know, Kikit for 5.99/6.0 is waiting for the Python API to include certain functions and to stabilize.