Autodesk Fabrication Attacher Tips

CADmep, ESTmep and CAMduct all use the concept of an Attacher. This is what tells Fabrication which way to route elbows and branches.

Most people know how to place and rotate the Attacher. There are a few other tricks to working with the Attacher that you may not know about.

Up or Down, How to Get Around

Depending on your view orientation, you may notice part of the Attacher turns from Red to Blue or Green. As you rotate the Attacher it’s color will change to indicate the direction the arrow is pointing.

  • Green = Grass (Attacher is pointing away from you)
  • Blue = Sky (Attacher is pointing toward you)

Rotation Tricks

Depending oh which program you’re in (CADmep, ESTmep or CAMduct) and the keys you press, the Attacher rotates differently. Here’s a chart explaining those nuances.

RotationMethodCADmepESTmepCAMduct
90 Degrees CCWClickYesYesYes
90 Degrees CWShift+ClickNoYesYes
180 Degrees (Flip)Ctrl+ClickYesYesYes
15 Degrees CCWAlt+ClickYesNoNo

CADmep – Click Attacher to Rotate Counter Clockwise 90 Degrees

CADmep – Ctrl+Click Attacher to Rotate 180 Degrees (Flip)

CADmep – Alt+Click Attacher yo Rotate Counter Clockwise 15 Degrees

ESTmep / CAMduct – Click Attacher to Rotate Counter Clockwise 90 Degrees

ESTmep / CAMduct – Shift+Click Attacher to Rotate Clockwise 90 Degrees

ESTmep / CAMduct – Ctrl+Click to Rotate Attacher 180 Degrees (Flip)

Fabrication – Attacher Tip #2

Here’s another simple Attacher tip for Fabrication products. If you hold down the Shift key while clicking on the Attacher arrow in CADmep, ESTmep or CAMduct,. the arrow rotates the opposite direction.


Clicking the Attacher – Notice it Rotates in the “Clockwise” Direction

Clicking the Attacher – Notice it Rotates in the “Counter-Clockwise” Direction

Fabrication – Attacher Tip #1

Sometimes the best tips are the simplest. They can often be forgotten about or never learned because of that. Here’s a reminder for those that may not know or have forgotten…

In CADmep, or the 3d viewer of ESTmep or CAMduct, you can hold the Control key while clicking the attacher arrow to rotate the arrow 180 degrees. The below screen recordings are both done from CAMduct but ESTmep or CADmep work just the same.

Clicking the Attacher – Notice it Rotates in 90-Degree Increments
Ctrl-Clicking the Attacher – Notice it Rotates in 180-Degree Increments

Autodesk Fabrication COD Script Libraries

Over the years, I’ve written a number of scripts helpful for managing an Autodesk Fabrication configuration. I’ve given them away in my Autodesk University session I’ve taught so they’ve circulated around a bit.

I’ve rewritten most, streamlined them, made enhancements, added others, etc, etc. Because I’m always updating and changing them, I thought I’d host them here too. I can then just post when I update them.

There’s are 2 sets of scripts covering the following topics…

  • Debugging Properties Scripts
  • Job Item Scripts
  • Library Item Scripts

One set is for use in 2019.0 and earlier versions (but work in any version), the others are designed for 2019.1 and later when Autodesk added support for the Pattern Number property.

You can get to the scripts from the menu or click here. The scripts are free to use for all except employees of ENGworks or anyone working on the behalf of ENGworks. (contractors, consultants, etc.) who are prohibited from use.

ITM Dimension/Option Locking Hack

When you build content, it’s often desirable to have certain dimensions or options locked. This even applies to connectors, seams and dampers but to a lesser degree.

If you have a lot of Dimensions and/or Options to Lock or Unlock, you don’t have to individually pick each one. You can lock or unlock many very quickly provided they’re in a row.

The trick is simple….pick the button to lock/unlock the first field you want to change, and then while still holding the pick button drag your mouse up or down. This is a fast an efficient way to lock large groups of properties without picking each one.

The following recording shows this process. We’re using Pattern Number (CID) 910 as our example.

Fabrication CADmep Help

It’s sometimes easy to miss new things. This is why I want to point out something that was added in 2015. CADmep now has an APPHELP command. You can type APPHELP at the command prompt to bring up CADmep’s help system.

If you’re online, the help is pulled from Autodesk’s web site from the following URLs…

When you’re not online, APPHELP  loads the help system that’s installed locally. You can find it in these folders…

  • C:\Program Files\Autodesk\Fabrication 2015\Help\index.html
  • C:\Program Files\Autodesk\Fabrication 2016\Help\index.html
  • C:\Program Files\Autodesk\Fabrication 2017\Help\index.html
  • C:\Program Files\Autodesk\Fabrication 2018\Help\index.html
  • C:\Program Files\Autodesk\Fabrication 2019\Help\index.html

But what if you’re using CAMduct or ESTmep? No worries. The other products work the same way. Instead of typing APPHELP, type F1 on your keyboard or use the Help pull down menu.

Fabrication Area Calculation

Have you ever had a duct fitting seemingly calculate the area significantly under what it really way? The answer may be right under your nose.

The following two properties dialogs are for the same fitting. For simplicity, connectors and seams were set to “None

Notice the properties window on the left says 4 sq/ft and the one on the right is 20 sq/ft. You’ll notice a little lower the “Cost Units

Autodesk Fabrication: Best Practice #7

Don’t work in a Live Sync’d Database

This warrants a little explanation.  Many companies have multiple locations and need to sync Fabrication configurations between those sites. Other companies have their Fabrication configuration copied locally to the users system from a central network location.

To keep from having to manually keep different sites or local computers up to date, it’s natural to look so some of the many technology solutions like Microsoft’s One Drive, Box.net, Dropbox, Google Drive, DFS Replication etc. 

Here’s the problem….most of these solutions sync files in their own order and time frame. You often can’t control when they sync. When using CADmep, ESTmep or CAMduct, just using the software can cause the program to read back from the database files. Many of the database files reference each other using indexes. Take for example, the Specifications and Materials….both of those database areas refer to each other.

When changes are made, what happens is the files get updated where you make the changes, but the two files that get changed, may sync somewhere else at different times. As you’re using the software, if it happens to reread some of the database files when some are sync’d and others aren’t, this can cause unspecified problems.

One of the more common issues is when a system you’ve drawn changes to a completely different system. Have you ever had a Cast Iron No-Hub waste line all of the sudden day it’s Supply Air 2″ Positing Water Gauge?  This is our of sync syncing issues is often the result.

How do you work around this? Try to find sync solutions that allow more control, like after hours sync. I personally like an old batch file running RoboCopy as it allows a lot of control and I can have it fire up when the user logs on. They can also manually run it during the day if I push our a critical update otherwise the get the update tomorrow when they log in. When syncing servers from different sites, I schedule it to run after hours. 

This issue is most common w/CADmep, ESTmep and CAMduct. Because Revit loads and stores your services, it doesn’t read back to the database unless you explicitly tell it to reload the services so it’s risk is greatly reduced to the point where I wouldn’t worry about it.

Now, there are people that are doing local Sync’s in real time. My prior firm, we had some…let say…”creative folks” who would take liberties with the database if they knew it was local. As such, I used Windows OffLine Files to sync a local copy but make it look like it’s still on line. This is a Sync’d local copy and goes against what I recommend above. However, we forced it to rescan frequently so when there were changes, they were small, just a few files and they’d sync quickly about the same time. Larger changes involving a lot of files can open up your risk window to having issues.

If you’re going to use life syncing utilities, proceed carefully and watch for unexplained issues. Making large changes after hours and smaller changing during working hours can help.

And if you’re considering using Window’s Offline Files, prepare for a long learning curve and experiment with yourself first. Offline Files have little control from the User Interface and is best managed with Group Policy.

CADmep Properties via AutoLISP

If you’re an AutoLISP programmer and use Autodesk Fabrication CADmep, you most likely know that there’s a COD Scripting language in Autodesk Fabrication that provides read and/or write access to CADmep properties. The problem with COD Scripts, is that sometimes they’re not powerful enough to do all of the other things you’d like to do and you may want to use AutoLISP.

What you may not know is that you can access the vast majority of CADmep properties from AutoLISP. To so this, you need to configure CADmep’s List Setup dialog which will provide a light weight but similar interface to what you see when you build reports in Autodesk Fabrication. 

To access List Setup, right-click in an open area or the drawing editor and then select “CADmep” -> “Setup” -> “List Setup” from the menu. 

List Setup will Provide access to CADmep Properties

Configuring List Setup will provide access to the configured properties via DXF codes which are one of the most common ways of accessing object properties in AutoLISP. (You can also access these same DXF based properties via VBA, ARX or .Net)

The following image shows the List Setup dialog before (left) and after (right) being configured. Simply add the properties you want to extract in the order you want them.

Before and After Configuration of List Setup

Once you’ve configured the properties you want, a simple call to the (ENTGET) function in AutoLISP will return the data you’re looking for. You can see in the following image, that we’ve saved the DXF data to two different variables in the VisualLISP editor. The listsetup-blank variable (left) was done before configuration and the listsetup-config variable (right) was done after the configuration of List Setup.

CADmep Properties can be Found in the 300 DXF Group Codes

The code used to extract the data is the following….

(setq listsetup-blank (entget (car (entsel))))
(setq listsetup-config (entget (car (entsel))))

Because the VisualLISP editor does not word wrap it’s results, you can use the Inspect

Now, there are a few things to know about this method….

  • All CADmep properties show up in DXF Group Code 300. If you are returning multiple properties, you’ll have multiple 300 codes to parse through.
  • The order the properties are configured in List Setup is the order the properties will appear when returned in AutoLISP. There really is no other foolproof way of knowing which codes are which properties (unless obvious by their value) without knowing the order List Setup was configured.
  • If you later change the properties or their order, you’ll likely break your existing code. Think carefully about what you may want later and add it from the start even if you don’t want it at this time. If you need to add properties later, simply add them to the end of the list.
  • This method works well for reading Fabrication properties. It doesn’t allow you to set them using functions like “(ENTMOD)” or “(ENTUPD)