Creating a custom power port (power symbol or power label)
Disclaimer: This part assumes a general understanding of the symbol editor. Basics are explained in the previous sections.
A detailed introduction to power ports can be found on stackexchange.
Short version of it: A power symbol is a special type of global label.
The label name is fixed in the symbol itself and can not be changed in eeschema. (It is controlled by the pin name) This is the main reason why you would want custom power symbols. Another reason might be that you are unhappy with the graphical style of the default symbols.
Symbol properties (new symbol dialog)
Use the intended label name (will become the net name) as the symbol name. This is for your convenience. Setting it to something else means you will not be able to know what the net name will become!
The Reference prefix must start with “#”. This tells kicad that this is a virtual component that should not get a footprint on the pcb. It also means this symbol is not included in the BOM.
Enable “Create symbol as a power symbol”. This tells kicad to include this symbol in the “place power port” dialog. This also has the side effect to do the same as starting the reference with “#”. (KiCad will kind of add “#” to your reference if this option is enabled. This behavior is however a bit buggy meaning it is still better to explicitly add “#” to the reference when creating the symbol.)
All other settings are made that way to make the symbol nicer inside the symbol editor.
The pin (The thing that makes this part into a label)
Invisible power input pins are global labels. The label name is controlled by the pin name. Make sure the pin name and symbol name match! (This is for your own sanity. KiCad will happily accept a power port where this is not the case. Readers of your schematic will be confused if you do not ensure this rule is followed.)
Invisible power input pins can be used in other applications than power ports. (Some multi unit symbols in the official library still use this to connect them to power)
The power port is the only place where using this does not come with very strange side effects. (Do not use this feature for anything else than power ports unless you know what you are doing!)
You can set the pin length to anything. The power ports of the official lib use a length of 0. (Makes the symbol look nicer inside the editor)
Finishing the symbol
Place the pin at the symbol origin. (This is just a convention making the symbol easier to use.) Make sure the graphic you create somehow shows where the connection point is. (Remember the pin is not visible in eeschema)
Move the fields around to make the symbol look nice and hide the reference field. (Does not really make sense to be shown.)
If everything went well then you should be able to add your symbol using the “add power port” button inside of eeschema