Layout problem with labels

I found something which is not really a bug, but I think it would be nice to improve it. Here is what I noticed:

  1. Bottom silk layer (B.SilkS) is selected. You want to write something on top silk, but you haven’t verified the layer. This happens all the time, at least to me.
  2. Choose the Text tool (T) on the right. Enter text. When finished, press OK. You get a flipped purple string, which is normal because B.SilkS was selected.
  3. Lay the string on the PCB. It’s reversed. Now choose “edit” (hover on the string and press E). Change the layer… The color changes, but the direction is still flipped.

I think it could be directly flipped when changing layer.



First: It’s text, not labels. Labels are attached to something, for example to wired connections in eeschema to give them a name. I think you mean just text from:
Pcbnew / Place / Text

Changing the layer just does what it is supposed to do. It changes the layer of whatever object was selected.

If you want to flip something to the other side of the board, then use the f shortcut key for “flip”.


But if I flip “fro” I get “orf”. This does not hlep.

1 Like

The text properties window has the option “Mirrored”. Combinations of flip and mirrored allows a text to be readable on any layer.

Of course, because the silk layer text must be mirrored in the layer view if you want it to be correctly in the physical board. If you want to read the texts in the back silk, you flip the physical board which is in your hand. If the board (and mask) material would be transparent, you would see the back text mirrored when looking from the front side. Just like in KiCad.

It’s possible to flip the whole view so that you have the view from back.

The difficulty comes from the real world, not from KiCad, and it’s not terribly difficult. Changing the layer changes the layer; flipping flips.

PCB’s are built up vertically so you are looking through the card. As a result things like this appear mirrored because technically you are looking at the underside.

There is a flip view option to help when you are dealing with things like this.

NOTE: pretty much all PCB programs do this, at least the flip view isn’t hidden like it is in Mentor Xpedition (PITA when you review a layout and the layout engineer was last viewing the bottomside )

I agree with you. There probably would be nothing wrong if any text when changed layer from F to B (from B to F) then the ‘Mirrored’ flag would be at the same time changed to opposite.
But it would be the situation which I describe “Program knows better what you wont then you.” and I generally hate such programs.
If you are in Text Properties editing window it would be surprising if while changing Layer the Mirrored flag is automatically changed. The next step would be to expect that if you change that flag then layer is also automatically changed. Wouldn’t it be? That would limit the program possibilities - you will be not able to have mirrored text if you like to have it.
I have written a program to configure connections of our system in which such things (changing one field changes other field) happens but it is only if changing one setting in dialog box makes other setting incorrect to ensure settings with error are impossible.
It doesn’t happen here - you are allowed to have mirrored text.

I disagree here.
I prefer simple functions with simple actions, and no unexpected interactions.
KiCad already has both functions for moving stuff to another layer, and for flipping stuff between front and back layers.

What would you expect KiCad to do with “complex” selections, where both texts and copper tracks are selected?

Scripts are an excellent choice for stitching together simple operations into more complex combinations. Changing layers is, ans should remain a simple function that does just that. It’s also used for internal copper layers, and yes, sometimes text is also put on internal copper layers. For example for identifying stages or problems during the production process. Some PCB’s have a “window” with a number on each internal layer, and transparency in all other copper layers, so you can see through a produced board if all layers are present.

Hello Piotr!

But it would be the situation which I describe “Program knows better what you wont then you.” and I generally
hate such programs.

Yes, so do I. But from the usefulness point of view, you have to take into account what does makes sense and
what doesn’t.
Does it make sense to mirror a string on top layer?
Does it make sense not to mirror a string on bottom layer?
I would say it doesn’t make sense in most of the cases, and a reasonable way to do it would be that:

  • Changing layer causes text to be mirrored
  • Mirroring text doesn’t cause changing layer.

This would allow mirrored text in the rare cases it’s useful.

But anyway, the flip function seems to do what I want. Thanks for all the replies!


I have never flipped the text (I have done only few KiCad PCBs and never had such need). It looks that you just wonted flip by tried to use Edit for it.
If flip works than Edit should certainly work as it works.
I have just checked that flip not only flips text between SilkS layers but also between Mask layers.
Before KiCad I typically didn’t used SilkS so I placed texts at Mask (got the gold text).
Now I use SilkS at one side and Mask at the other.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.