Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Best practice in Setting Package Keepout in Altium

Not open for further replies.


Junior Member level 2
Dec 19, 2011
Reaction score
Trophy points
United Kingdom
Activity points
Hi Guys,

I have been wondering what's the best practice in setting a package keepout in the pcb area in Altium. I am working on an electronics company which most of the products are house on a mechanical metalwork. I have previous experience in cadence allegro and I was using package_keepout_top and package_keepout_bottom to set height restrictions on certain areas of the board. However, in Altium I can't find the certain layer to do that and I also don't know how to create a rule to define height restrictions on specific areas of the board.

For example I have a 85mm by 35mm board, the upper half of the secondary side (bottom side) can accommodate component heights only up to 7mm while on the lower half of the secondary side (bottom side) can accommodate height up to 14mm.

I have tried using the Placement==>Height in Design Rules however it was not able to call the error.

If further details are needed to come up with a good picture of the situation, kindly let me know.

Thank you in advance.

I would advise to generate a custom room based on primitives on the board (via Tools => Convert => Create Room from Selected Primitives) and then set the Height Rule for that room to the desired height.

In order for the Height DRC to work, the components on the board need to have height information embedded in the footprint. This is defined through either the presence of a 3D body, or by the component height value entered in the component properties (for use when no 3D body is present). Ideally you would have both defined. The 3D body info will take priority over the component height properties value. You can see the value of a component's height parameter by double clicking on a part on the PCB; it will be listed in the 1st column labeled "Component Properties". If you have those values specified, then the Height DRC rule should catch any components that exceed your max height in the rules.

Also, make sure you have the "height" rule enabled during the DRC check. (Click Tools > Design Rule Check and configure which rules run on the left side under "Rules to check".)

Hi ArcticCynda,

Thank you for the response.

One thing I noticed with custom rooms is that when there will be a schematic modification while the layout is ongoing and if I'll import changes of the schematic to the pcb file, the custom rooms are overridden. This was the first implementation I did but to my surprised it did not caught the error on the board until I realized that my custom room was already gone due to several schematic updates.

I also don't want to consider disabling the ECO generation for remove rooms in the "Project Options" because it flags "schematic-layout differences" when I import the schematic to layout. It is a red flag during our project checking.

Hi toohec,

I checked my layout settings and all of those mentioned exist or have already been set. Maybe I have tweaked something during the layout process without me knowing it. This project is my first in Altium so I may have done something during layout which have overridden the rule. I have to see to it that all the settings you mentioned are kept enabled. I appreciate your detailed explanation on the settings, it makes me understand more how altium checks component heights in the board.

Not open for further replies.

Part and Inventory Search

Welcome to