| FORUM

FEDEVEL
Platform forum

urgent question about assembly layer

hajri_abderaouf , 02-22-2016, 07:12 AM
i had a problem with assembly layer, .designator not change when i update may pcb from library.
mairomaster , 02-22-2016, 07:24 AM
You should enable special strings convertion. You can do it from Design -> Board Layer & Colors -> View Options -> Convert Special Strings.
hajri_abderaouf , 02-22-2016, 07:33 AM
Thanks mairo,problem solved,but i had find another problem when i'm checking my pcb,why i can't get two layer assembly top and assembly bottom..all the designator come on one mechanical.
mairomaster , 02-22-2016, 07:42 AM
In order to have them on separate layers, you have to set up layer pairs from:
Design -> Board Layer & Colors -> Layer Pairs (button).

That works the following way. Imagine you have a component which normally has the assembly information on Mechanical Layer 1. If you move the component to the bottom side of the board, you might want the assembly information to move to Mechanical Layer 11 for example. Then you need to create a layer pair from layer M1 and layer M11. When you create the pair, the assembly information will automatically move between those two layers, when you are moving the component between the top/bottom side of the board.

The big problem with this, for which I still don't have a solution, is that it works only if you set up the layer pairs in the bigging of the PCB layout, when you still have all the components placed in the top layer and you haven't moved anything to the bottom. If you already have particular components on the bottom layer, when you create the mechanical layer pair, Altium will not automatically update the particular mechanical layers - it updates only when you are shifting a particular component manually.

I don't know a solution of this and I find it a big limitation of Altium in case you forget to set up the layer pairs in the beginning of the layout. If somebody knows an easy walk around this, please let me know.
hajri_abderaouf , 02-22-2016, 09:57 AM
Thanks a lot mairo,you saved me,what i have do?i create layer pair and i called them assembly top and assembly bottom,after that i just select all the component on bottom with the option find similar object ,i had move them all to top and return them to bottom without close the window of "find similar", after that i had update all component from library and it's done automatically..
thanks another time mairomaster
mairomaster , 02-22-2016, 10:03 AM
Yeah you figured out a good way to to it, cool.
robertferanec , 02-22-2016, 02:35 PM
Martin told me, that if you create the assembly drawing layer pair later, moving components from bottom to top may just move them to a different assembly layer, but updating from library should help. However, I do not have access to Altium at this moment, so can not check it.
avion , 06-21-2018, 06:27 AM
Hello @robertferanec and @mairomaster

I have a problem with this. I have finished my design but my mech layers are all mixed up. I tried the suggested method above updating from libraries to layer pairs but the mech layers are still mixed up. I cannot select and change mech layer objects individually either. I hope altium fixes this. I hope my P&P file will be enough for the assembly house to assemble all the components. Is the pin or the chip corner dot showing the rotation of the ICs really necessary for the assembly house ?

I'm hoping to use my top and bottom overlay layers to show component designators and pin 1 or corner dot on ICs if needed.
mairomaster , 06-22-2018, 01:44 AM
Can you calrifity, please? What do you mean by messed up? To select and change mechanical layer primitives which are part of footprints you have to unlock the components primitives first. That is a hacky problem to fix problems though and it's really not recommended in most of the cases - it can lead to all sorts of problems.
robertferanec , 06-22-2018, 02:17 AM
@avion, please can you add some screenshots to see what do you mean?
avion , 06-25-2018, 12:37 AM
I dont have a picture at the moment. When I update from pcb libraries the mech designators dont appear on the right layers, it seems random. @mairomaster I tired many things and you can actually fix it but as you said it can be very confusing and result in error.

To summarize

Main problem:
Some bottom component mech primitives such as designators and component outlines appear on top layer and vise versa.

Solution:
1. Find Similar Objects -> Select all "Flipped on Layer" on all layers and press OK.
2. Check "Lock" in PCB Inspector
3. Uncheck "lock primitives" in PCB Inspector
4. uncheck " Flipped on Layer" in PCB Inspector (at this stage your footprint will be rotated and cause many short circuit errors. but once updated from library it goes back to correct rotation. Weiiird....)
5. go to pcb lib and "update pcb with all".

This seemed to work very well for creating my layer pairs correctly according to the mech layers in pcb libs; designators, 3d, and component outlines.
Paul van Avesaath , 07-16-2018, 03:41 AM

i use a script to adjust the designators automatically to set them in the correct orientation.. its not perfect but man does it help.

the script name is from an old file i adapted so it says ad14 but still works in AD18..

run the script
(first it will tell you the altium version you are using)

then set the maximum height ( i usually use 20mil)

then run (thi takes some time) then it will still be on the top overlay / Bottom overlay

then use the filter queries
IsDesignator and OnLayer('Top Overlay')

then move them with the properties window to a mechanical layer..

do the same for the bottom overlay and to another mechanical layer..

and you set..


hope this helps!
Paul van Avesaath , 07-16-2018, 03:44 AM
Originally posted by avion
I dont have a picture at the moment. When I update from pcb libraries the mech designators dont appear on the right layers, it seems random. @mairomaster I tired many things and you can actually fix it but as you said it can be very confusing and result in error.

To summarize

Main problem:
Some bottom component mech primitives such as designators and component outlines appear on top layer and vise versa.

Solution:
1. Find Similar Objects -> Select all "Flipped on Layer" on all layers and press OK.
2. Check "Lock" in PCB Inspector
3. Uncheck "lock primitives" in PCB Inspector
4. uncheck " Flipped on Layer" in PCB Inspector (at this stage your footprint will be rotated and cause many short circuit errors. but once updated from library it goes back to correct rotation. Weiiird....)
5. go to pcb lib and "update pcb with all".

This seemed to work very well for creating my layer pairs correctly according to the mech layers in pcb libs; designators, 3d, and component outlines.


dude i am sorry i completely misread your problem..

anyway

try the queries

IsDesignator and InComponentClass('Top Side Components')
IsDesignator and InComponentClass('Bottom Side Components')

IsDesignator and InComponentClass('Bottom Side Components') and OnLayer('01 Designator top')
IsDesignator and InComponentClass('Top Side Components') and OnLayer('02 Designator bottom')

to find flipped components

(ObjectKind = 'Component') And (ComponentFlippedOnLayer = 'True')

Use our interactive Discord forum to reply or ask new questions.
Discord invite
Discord forum link (after invitation)

Didn't find what you were looking for?