If I am laying out a PCB, it’s often useful to have silkscreen labels to aid assembly or debugging of the assembled PCB. For example, polarity symbols, signal names, or the colour of an LED. Now, I know I could edit the footprint, or add a reference in EESchema, but for many jobs it is easier to add the labels during PCB layout. At present, I just add text to the relevant silkscreen layer. This works just fine, but if I later drag the component to somewhere else on the PCB, my silkscreen label can get left behind. What I am looking for a is a way to “attach” or “associate” my silkscreen label with a specific footprint, so that it if I drag the footprint, my label goes with it.
Does a feature like this exist? Am I looking in the wrong place? I know I can import values from EEschema and use those, but this text is more specific to the PCB, for example, polarity markings for components.
If you want text to move with the footprint, it has to be part of the footprint.
I first tried to add a custom field to the symbol in Eeschema, but that does not seem to be propagated to Pcbnew.
Then, in Pcbnew I edited the properties of a Footprint and added “Some_Text” to the footprint, and also set it’s layer to “F.SilkS” (Default is F.Fab) This works just fine.
A word of caution:
You may loose all these texts if you update the footprints, so be careful when you update the PCB from the schematic. So make sure the “[ ] Update footprints” checkbox is off when you update the PCB. Therefore I advise to first copy the footprints into a project specific library, and then add these texts to the footprint in the library. (And also make sure Eeschema links to the footprint in that library). If you do this, only the moved locations of the texts get lost wen the footprints get updated (So still put that checkbox off), but at least the texts themself stay.