You may have noticed a new setting in Fabrication 2025. You can see it when you edit the properties of a Service Template. It’s shows as Maximum # couplings. Valid settings are 1 to 10. So what is this setting you may ask? Well, don’t go with your instincts. The name is as unintuitive as possible.
To start, couplings are any ITM made from Pattern (CID) 2522. So not necessarily an actual “pipe” coupling. So this setting only applies to any fitting made from Pattern 2522 regardless of what it does in the real world. No other patterns are affected.
Your initial instinct might be that this limits the number of coupling patterns on a service template. You’d be wrong. When you think about it, a lot of things are made from Pattern 2522. Couplings obviously, but also Welds, Flanges. some Reducers, Adaptors, Unions, Bolt Sets, Gaskets, etc. That can easily push the number over 10. So what exactly does this do?
First, a little background. To start this setting only applies to Revit. No other Fabrication products are affected aside from using them to edit the setting. Next, you should know that there was always a coupling limit as it pertained to Revit. It was hard coded to 6 I’m told. This change in the 2025 Fabrication products made it editable to a smaller (minimum 1) or larger number (maximum 10).
What this settings does is control the connect and coupling logic in Revit. Revit’s autofill features like Route and Fill, Multi-Point Routing, Quick Connect and Design to Fabrication are affected. This is because the coupling pattern is special. In most scenarios, pipe is connected to fittings. In come cases, fittings to fittings. Coupling patterns on the other hand, can connect to other coupling patterns repeatedly.
These autofill functions need to process the various options for fittings. This can have performance implications that increase exponentially the more parts you have using those patterns. Let’s look at an example….
The below image shows a pipe flange connection. It’s using 6 coupling patterns in a row in the model. But in your service, there may be even more. Different types of flanges, welds, gasket and bolt set options, etc. It needs to look at all of those to determine the options available. In this case, a coupling limit of 6 would work. That’s how many 2522 patterns you would ever string together to make this connection. So after 6, Revit no longer needs to keep looking for couplings and can limit it’s analysis to other pipe or fittings in your service.
As you can see, the old hard coded value of 7 would be enough to cover most flanged or dielectric connection options. In some very limited edge cases, you might need more. So now you can bump it up to 10. However, you may want to actually reduce it lower. If you’re using ancillaries for gaskets and bolt sets and not drawing ITM’s to quantify them, a setting of 4 would be sufficient. For some systems, you might even be able to go lower.
What happens if the coupling limit is lower than what’s needed? Well, you might have to make those connections manually. Autofill functions wouldn’t provide all of the possible options. In some cases, you might event get broken connections.
Personally I’ve not been able to create a sample dataset and configuration that really demonstrates functionality working or not based on the setting. For the most part, it’s likely not going to affect most users however lowering it might provide some performance improvements in Revit. They tell me ideally the setting would be 3 or 4. But as you can see, if you’re using ITM parts for Bolt Sets and Gaskets, 6 is likely your “Go To” number. But on a plastic system? 3 or 4, maybe even 2 would be sufficient.
I run into a number of people who have had problems with Riser Clamps and Revit Fabrication Parts. I have as well. Here’s how you can work around them…fairly easily.
Problem #1 – Clamp Will Not Attach to Vertical Riser
The first problem I see is with Riser Clamps not attaching to vertical pipe. I’ve seen some creative workarounds. From just placing a clamp in space and moving it to near where it should be to using a modified form of a Grooved Coupling pattern. The following video shows what that would look like if you have this issue.
The fix for this issue is fairly simple. First, make sure you’re using Pattern Number (CID) 838. This is the original Hanger pattern that will allow you to make just about any hanger. Secondly, ensure that you select the ‘Slide‘ option on the pattern.
This is the ONLY Hanger option that will work for vertically oriented pipe.
Once you use the proper option, you can observe that a Riser Clamp will attach to the vertical pipe. This can be seen in the following video.
The second Riser Clamp’s configuration uses the ‘Slide’ option. This allows us to attach it to vertical pipe. This sets us up well for the next issue….oversizing.
Issue #2 – Oversized Riser Clamps
The second issue is that if you set your Insulation Specification’s material to Oversize Hangers, the Riser Clamp will also oversize. This isn’t something you do with a Riser Clamp. Many of us have brought this issue to Autodesk on several occasions, yet they seem to struggle with understanding of our need for an option in this pattern to “ignore” oversize.
Luckily, with a little added work and user intervention, we can work around this. To resolve the issue, create a secondary Riser Insulation Specification with a material that does not oversize hangers.
To do this, you’ll need a duplicate of your Insulation Material. In the image below, we configure the insulation on the right not to oversize for systems where we do not require thermal pipe inserts.
Once you have a secondary Insulation material, you can create the Insulation Specification for the Riser.
Now, all you need to do is override the Insulation Specification on the Riser (vertical pipe) before placing the Riser Clamp. You can see this in the following video.
You can see how the vertical pipe get’s a pipe sized Clamp, where as the horizontal pipe will still oversize because we didn’t change it’s insulation specification.
I’d like to thank Kevin Allen and William Tucker of Comfort Systems USA for pointing out this embarrassingly simple workaround for Insulation Specification that seemed to escaped me.
Fabrication 2024 is out. I’ve updated all the reference information to include 2024 formats. As has been the trend the last few years, little has changed. Summary below…
Fabrication 2023 is out. I’ve updated all the reference information to include 2023 formats. As has been the trend the last few years, little has changed. Summary below…
I’ve made a couple updates to the Autodesk Fabrication script libraries. If you use them, you can download updated versions from here.
Scripts have been updated to include the Connector Material property found on CID/Patterns 522, 1522 & 2512 as shown below…
This property is intended to be used by a connector to specify a alternate material the connector can connect to. This allows a coupling to connect to alternate materials such as with transition couplings.
I’ve made a couple updates to the Autodesk Fabrication script libraries. If you use them, you can download updated versions from here.
Scripts Updated
Debug
Debug ITEM Library.cod
Debug ITEM Sealant.cod
Job Items
WriteAllLibrary (Job).cod
WriteAllSealant (Job).cod
WriteAll_Props (Job).cod
Library Items
WriteAllLibraries (Library).cod
WriteAllSealant (Library).cod
WriteAll_Props (Library).cod
Issues Corrected
Issue 1: Scripts accessing the “Library” property were failing on CID/Pattern 2199. Scripts have been updated to watch for this and report it as an ‘Unknown‘ Library.
Issue 2: Some CID/Patterns can be configured to be pipework or duct work depending on the “Pipework” option’s “Yes/No” status. Scripts were updated to properly report or ignore this property depending on the Sealant value being present.
If the option is set to “Yes“, the pattern is a pipework item. If set to “No”, the pattern is a sheet metal item. Sheet metal items contain the “Sealant” property where as Pipework items do not.
This condition is present in the following CID/Patterns…
149
838
902
1101
1238
1239
1240
1241
1242
1247
1248
Special thanks to Kyle Speropoulos of MMC Contractors in Kansas City for alerting me to this issue.
Resource information for Autodesk Fabrication has been updated. They now include information on the 2020 version of CADmep, ESTmep and CAMduct. In short, nothing has changed.
The FabViewer Command Reference did have one new command added. However, this was not new to the 2020 version. The CADmep 2019.1 update added a command which was missed previously.
It no secret that not every Autodesk Fabrication pattern is supported in Revit. I’ve recently finished a more in-depth analysis of which patterns are and are not supported in Revit. Each of the 703 different pattern types were tested in each version and each update of Revit.
On the Fabrication COD Scripts page, you can find a Revit Support Report script. That script will analyse your ITM library and generate a CSV report of the status of every ITM in your Fabrication Configuration.
You can also find the complete results of my testing on the Revit Support page. Here’s a summary of the the testing…
Tested Version
Each of the below versions of Revit were tested with all the the 704 different patterns:
2016
2016R2
2061R2SP7
2017.0
2017.1
2017.2
2018.0
2018.1
2018.2
2018.3
2019.0
2019.1
2019.2
Testing Criteria
“Supported” for purposes of this testing is based on whether Revit allows a particular pattern to be used in the Fabrication Part Browser.
Testing Results
Testing results will have one of the following status descriptions.
No – No Revit support
Varies ({verison}) – Revit support varies between Revit version
Yes (Risk) – Revit does support but use NOT recommended due to issues
New ({version}) – New Pattern supported in later Revit versions
Yes – Pattern is supported in all Revit versions with no significant issues
Support Status = No
No – Parts not supported by the Parts Browser are obviously listed as having “No” support. There are a total of 84 different patterns listed in this category. They are as follows…
125
126
127
128
129
130
141
158
202
203
204
205
206
207
208
209
210
211
212
213
215
216
218
220
221
228
230
301
302
308
503
505
521
530
764
765
803
804
805
806
833
873
910
913
928
960
961
964
966
969
974
980
983
985
994
996
999
1049
1102
1106
1114
1142
1150
1152
1157
1161
1162
1165
1168
1169
1181
1194
1196
1198
2185
2189
2190
2191
2192
2199
2200
2873
3108
3873
Support Status = Varies
Varies(version) – In some cases, Fabrication Parts were initially allowed or supported in earlier versions and later were restricted. These parts have a status of “Varies” followed by the version where the change occurred. It’s recommended you avoid use of these patterns even in versions where they work as they will not be supported in later versions. There are 17 patterns that once worked in Revit but are no longer supported. They are as follows…
0
182
222
381
845
853
855
864
876
898
903
912
915
971
1105
1170
1175
Support Status = Yes (Risk)
Yes (Risk) – Patterns that list “Yes (Risk)” are technically supported in Revit but I highly recommend avoiding their use. Patterns with this status have issues like inserting at the Revit’s Project Base Point and not the cursor location. They also have a tendency to crash Revit if you attempt to grip or edit them. As a result, I highly recommend avoiding their use. There are 29 patterns in this category. They are listed here…
119
189
317
346
347
348
349
350
351
352
353
368
369
390
392
397
398
415
810
828
922
930
962
963
968
973
1159
1160
1176
Support Status = New
New (version) – Some patterns were not around in earlier versions of Revit but later added and supported in Revit. These patterns are listed as “New” followed by the version of Revit they became available in. These patterns are generally safe to use for Revit. There are 19 patterns in this category which are listed here…
217
1206
1207
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
2197
2198
2217
Support Status = Yes
Yes – Parts allowed by the browser that work across all versions of Revit are listed with e “Yes” status. There are 555 patterns in this category. They are listed here…
I’ve been asked from time to time, which Autodesk Fabrication Patterns (CID’s) support exporting points for field layout. If you want to use Trimble, Topcon or similar hardware for field layout like hanger inserts for MEP, these points are important.
So, with this post, we’ll show you that information but also hope to accomplish something else in the process. I’ll walk you through a couple ways to do it, one significantly better than the other. It’s not really important that you know how to do this same process again, once you have the information, you’ll likely save it somewhere. However, knowing how to do this process will hopefully give you ideas about techniques you can use for other types of data mining and extraction. It’s not hard after all, you just need to get creative with few things you already likely know how to do.
If you’d rather just get to the data, scroll to the end of this post and you’ll find the list of pattern numbers. Otherwise, follow along and at the same time, explore some options for learning how to get this type of data yourself.
Step 1 – Get a copy of Every CID
The MAKEPAT command in Fabrication is how we create new ITM’s based on a particular CID. Most people working with Fabrication for a while know that. What they may not know is that you don’t have to randomly type patter numbers and run the command hundreds of times. CAMduct can do them all at once. If you don’ have CAMduct, install a trail version which you can download from Autodesk’s web site.
After starting CAMduct with a new project, the first step is to turn off prompting for Oversize which would keep prompting you on some large sheet metal patterns that exceed the material size. We turn this off to make the process run without pausing for user input.
Turn OFF Oversize Checking
The next step is to display CAMduct’s Command Window screen by pressing “CTRL-SHIFT-C“.
Pressing “CTRL-SHIFT-C” on the Keyboard Displays the Command Window.
Next, in the Command Window, type the command “MAKEPAT ALL” and press <Enter>. (Note that the Command Window is also part of ESTmep but the MAKEPAT ALL function is not supported in ESTmep, only CAMduct.)
“MAKEPAT ALL” will Create One of Each Pattern
Depending on the speed and resources of your computer or even other running processes, this can appear as if it’s locked up CAMduct at times. However, be patient and let it sit. Unless the software crashes, the process will complete. I’ve seen cases where it can take over 10 minutes or more.
When complete, there is no prompt. You’ll just notice the cursor back in the Command Window’s typing area. The last pattern should be CID 4522. You’ll also see the Job Contents will contain each pattern that was successfully taken off. These patterns exist only in this job, not in your database so you’ll want to save this job in CAMduct’s MAJ file format for future reference. If you like, you can download my copy here.
All Successful and Supported CID’s Are Now in One MAJ.
Step 2 – Examine Patterns
Now that we have a file with all the patterns, we can examine them. There’s a lot, and doing each one individually will take a lot of time. If you’ve ever been to one of my Autodesk University sessions, you’ll know that I frequently supply a lot of Fabrication COD scripts. This is where they can come in handy. You can download them here.
I typically place my COD scripts under the Scripts folder in my Fabrication Configuration like so…
Scripts Extracted to the Configuration’s “Scripts” Folder
If you look at a Hanger CID (1249 for example) you’ll see in it’s Options tab that there’s an “Export” option that tells CADmep if it should export field layout points or not.
The “Export” Option Controls Field Layout Point Exports
We’ll use this to determine which CID’s export points which is where the scripts come in. For this example, we’ll be using the following script…
.\Scripts\Job Items\WriteAllOptions (Job).cod
This script will write all the Options for all the item in the CAMduct Job. To do this, click the Job Contents button on the ribbon, select all the items in the job, Right-Click and select the Execute Script option then browse to the above referenced COD script.
Use “Execute Script” to Run a COD Script on All Selected Items
After the script completes, it’ll have written to a text file all the options and their values for each of the items in the job along with their CID. You can find the file located in the root of your fabrication configuration’s Items folder. This is the file you’ll be looking for…
.\Items\WriteDWGOptions.Txt
Using Microsoft Excel, open the text file. Make sure you change the file extension to Text Files so Excel displays the file you created.
Change Excel’s File Type to “Text Files (*.prn;*txt;*.csv)“
This will bring up Excel’s Text Import Wizard. Select the “Delimited” radio button and click Next.
Use “Delimited” as the Import Option in Excel
In the next screen of the Wizard, you’ll select the “Comma” toggle as one of the delimiters and then click the Next button.
Use the “Comma” Option as the Delimiter
In the next wizard page, you’ll highlight all the columns in the bottom portion and select the “Text” radio button to tell Excel to treat all the columns as text. From there, click the Finish button.
Change All Columns to “Text” Data Format
From here, Excel displays a line item for each option of each item in the job. You can now quickly filter this list by clicking the Data ribbon menu and selecting the Filter button. This adds a drop down arrow control in the first row of each column. “Column E” is the “Name” of the option. When you click the drop down arrow in that column, you see a list of all the values. Uncheck the top “(Select All)” option to deselect all the values and then scroll to the “Export” option and select it. This tells Excel to only display rows containing this text. From here, click the OK button.
Use AutoFilter to Display Only the Rows that Contain the “Export” Option
Once this is done, you’ll get a very short list in Excel. The left most column, “Column A“, is the CID or Pattern Number for each item in the job (we make one of each pattern) that has the Export option.
Excel Quickly Filters Options to Only Those With an “Export” Option.
So now we have a list of Pattern Numbers that you know will export points for field layout. You also learned how you can use some of the scripts I have to Export and mine data from your fabrication configuration. The question you have to ask now is, are we certain this data is correct?
Autodesk Fabrication allows you to rename Dimension and Option names. That would suggest that it’s possible to miss an option that was renamed to something other than Export. In this case, because we used CAMduct to create all the patterns from scratch, it’s most likely that it’ll have all the default names for it’s Options and Dimensions.
We’re still not in the clear however. It’s possible some patterns that support field layout points don’t have an Export option or have a similar option but name it something else. For this reason, we can’t be certain we know ALL the CID’s but we can be certain that we know SOME of them.
Step 3 – An Second (Better) Approach
How can we be certain we know ALL the CID’s that support field layout point exports? The simple answer is to export all of the items and see which have points.
To do this, we can use Fabrication CADmep. Start AutoCAD and load Fabrication CADmep. From here, if you saved the job you created in CAMduct as an MAJ file, you can use the “OpenJob” command in CADmep to import all those Items into CADmep.
CADmep will display all the items in the Fab Viewer before importing. Simply click the OK button to complete the import process.
MAJ Imported into CADmep Displays Items in an Array
Once the MAJ is imported, CADmep will display all the Items in a large array. From here, we can use the “FPOINTE” command (previously the “TRIME” command) to export all the points. When the command asks you to select the points, type “ALL” at the select objects prompt. This will display the Field Point Sort dialog.
All Items Supporting Field Point Exports Will Appear in this Dialog.
Now we could finish exporting the points at this time but we’re not going to. This is because not all the information in this window actually gets exported. Specifically, the Tag column which displays the Item number (not the CID) and we need to know which Item number (which CAMduct sequentially numbered) to find the Item so we can check it’s CID later.
Instead, we’re going to select all the points in the bottom of the dialog, Right-Click and select “Copy” to copy the entries into the Windows Clipboard.
Without going into all the steps here, the next thing we naturally want to try is to Paste the items into Excel. If you go ahead and try it, you’ll likely notice that the coordinate fields are missing (that’s an interesting story with some history in itself) which isn’t a big deal for our purpose. But upon closer examination, you’ll also see that the columns aren’t lining up in Excel. Pasting this data into Excel is not going to work without a lot of fixing of data.
So the next thing I try, I paste the data into a blank Notepad file to see what it looks like there.
“FPOINTE” Data Pasted Into Notepad
Looking at the data in Notepad, you can easily see there’s columns. A little lower in the file you see the columns tend to shift, bit there’s definitely columns there. A little further experimentation using the cursor and keyboard arrow keys you can see the cursor jump between columns. This is a clear indication that columns are separated with Tab character. If your data doesn’t look like this, try looking at the Word Wrap setting in the Format pull down menu and turning it off.
At this point, you should be guessing what’s next. Save the TXT file and open it in Excel like you did earlier. The only difference is that instead of selecting a comma as a delimiter, you want to make sure that Tab is selected as the delimiter, The resulting data in Excel should look like the following image…
“FPOINTE” Data Opened in Excel
Lets keep in mind that some patterns export more than one point so there’s duplicates that aren’t needed. Additionally, we really don’t care about any of the exported data except for the Item Number which was in the Tag column in the Field Point Sort. This column is in Column F of Excel. For this reason, we’ll delete all the columns except for F. When you’re done, Column F will shift to Column A. From here, we can use Excel’s Remove Duplicates function on the Data ribbon to remove the duplicate Item Numbers.
Remove All Columns Except the One With the Tag Data and Run Remove Duplicates
When you’re done, you’ll have a nice short list of each pattern’s ItemNumber that was able to be exported. Note, this is the sequential Item Number that CAMduct assigned when creating the patterns. This is NOTthe CID or Pattern Number. Keep this Excel file opened for now, we’ll get back to it later.
At this point, it wouldn’t be too hard to look up each item number in CADmep or CAMduct and check it’s properties to find the Pattern Number of the item. But that can still take some time. We’ll go through another step to automatically look up the Item Number and show you the Pattern Number of the Item.
Step 4 – Using The Item Number to Find The Pattern Number (CID)
We need to somehow tie the Item Number to the CID or PatternNumber. To accomplish this, we’ll again turn to our scripts. All of my COD Scripts typically export the CID number. There’s also typically a script for each property. So we’ll be using the following script which will export the CID and Item Number of all the items in our drawing.
.\Scripts\Job Items\WriteAllNumbers (Job).cod
Type “ExecuteScript” in CADmep and browse to the above script file. At the Select Objects prompt, type “ALL” to select all the items in the drawing to run the script on. When the script is finished, it’ll export the data to the root of the Items folder like before. Open it just the same as you did prior making sure you use a Comma for a delimiter and change the column data types to Text.
.\Items\WriteDWGNumbers.Txt
Once you open the Item Number export file, it’ll look like the following image. This is what we’ll use to cross reference the Item Numbers with their corresponding Pattern Number.
Item Numbers Exported from our Job
Because we need to look up the Item Number in Excel, we’ll want to move the Number column in front of the CID column. This is because the function that we’re going to use in Excel needs the number it’s looking up in the first column. When complete, your data should look like the following image…
Number Column Moved To The First Column
Next, we’ll move this entire worksheet to the first Excel file that contains our points. Right-Click on the worksheet tab and select “Move or Copy…“, use the drop down list in the Move or Copy dialog to select the spreadsheet with your exported point data and move it to the end. Click OK when done. This will move the sheet with exported Item Numbers and CID’s to the end of the other workbook.
Move the Exported Item Numbers Worksheet to Your Point Export File
When you’re done, you’ll have two separate tabs in your first Workbook. One lists only the Item Numbers of the successfully exported points, the other contains the Item Numbers and corresponding CID’s.
Go to the first worksheet tab where it lists a single column with the Items Numbers that were exported. Add a blank row at the top and type the text “Item Number” in Column A and “Pattern Number” in Column B. In cell B2, type the following formula…
=VLOOKUP(A2,WriteDWGNumbers!$A$1:$C$701,2,FALSE)
After typing the formula, copy it to the remaining cells in the column to complete the cross reference.
This formula tells Excel to look at the ItemNumber, and find it in the first column of the range in the second worksheet that lists all the ItemNumbers and CID’s. When it finds that corresponding ItemNumber, return the value from the second column which contains the CID. The “$” in the cell address of the range tells Excel to NOT increment the range address as the formula is copied down…you want to look at the same range no matter what. Finally, the False flag tells Excel to do a strict match and not try to interpret close results. Your finished data should look like the following…
This completes our final list of Pattern Numbers (CID’s) that support Field Point Exports. You can look at my Excel file by downloading it from here.
Note that when we looked only at Items that contained the Export option, there were 14 patterns. However when we tested against the actual point export in CADmep, we ended up with 25 patterns. Our final list of PatternNumbers (CID’s) that support field point exports is here…
149
321
322
838
972
1049
1189
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1972
2189
2190
2191
2192
Hopefully you’ve gained an idea on how to use some of the scripts, Excel and other processes to mine and extract data from your Fabrication configuration. It’s using techniques like these that allow me to assemble a lot of the information I have on this site like which versions of software have which CIDs’s and which ones are supported in Revit.