Revit - ETABS connection - Scaling issue

  • Objective: To import model from Revit to ETABS ( Ro simply simply create a link between Revit and ETABS)

  • Issue: The model gets scaled down by a lot when exporting from Revit to ETABS. I am not sure if it is because of some problems with the units. But I have tried to make sure the units are aligned in both models.

  • Example: The sample model I am trying has a width and length of 5m. But when imported to ETABS, it has become 0.1969m.

  • Speckle link: https://app.speckle.systems/projects/bca460e8cd/models/f426fe218d

This is my first time exploring Revit and ETABS connector. When I import model from Revit to ETABS, the model is extremely scaled down.

Can someone explain why this is happening and how to resolve this problem?

@Mohamed_Sabith, can you set the project as a shared link? No one can access your model without doing so.

Thanks @jonathon
I just made it as Shared link.

Hey @Mohamed_Sabith ,

I just looked at your model. It seems to be sent from Revit 2020. That version’s API has a limitation. Can you try sending from a later version (preferably 2022 and above) and see if it persists?

Hello @gokermu and @Mohamed_Sabith,

I’m experiencing the exact same issue.
The model seems to be scaled down.

I conducted tests on Etabs 19.1.0 and Revit 2024.

Here’s an example: The dimensions between both columns should be 5.86m, but when I receive data in Revit, it scales down to 1.786m. I can’t seem to find any scaling option during the sending or receiving process using Speckle.

Please note that I can already tell that the issue comes from the import process in Revit. The units on the Speckle web app seem fine. However, the model scales down when I import it into Revit. But I could be wrong !

Etabs :

Revit:

Speckle link :
https://app.speckle.systems/projects/200f6a00f4/models/b1eee1581a

Hey @gokermu
Thanks for looking into this.

However, I wasn’t using Revit 2020. I was using Revit 2023 for this.

And according to @Gab, the issue is there with Revit 2024 also.

2 Likes

Hey @Gab @Mohamed_Sabith ,

I looked into the issue you reported and it seems like you were right. The units are being sent correctly from ETABS but unfortunately, something seems to be going wrong when receiving them in Revit. We’ll definitely look into it and get back to you as soon as we can. Thanks so much for bringing this to our attention, we really appreciate it!

2 Likes

I’ve invested numerous hours since last week attempting to devise a workaround to resolve this issue, but unfortunately, it’s proving to be quite challenging. Is there anyone familiar with a method to export the data in millimeters instead of meters in Speckle? I strongly believe this adjustment would resolve the problem. Despite my efforts in Etabs, it consistently exports data in meters :cry:

2 Likes

Hey @Gab ,

To address the current problem, you can utilize Grasshopper as a bridge between ETABS and Revit. I have provided a sample script that can produce Revit columns, beams, braces, and floors based on ETABS geometry. Kindly review the script and let me know if it’s beneficial to you.

(This is a workaround until we actually fix the units issue.)

9916 - revit to etabs scaling issue.gh (21.2 KB)

2 Likes

Thank you @gokermu for this workaround. You’re awesome! Unfortunately, I’ve never used Rhino/Grasshopper before. I’ll install the trial version and quickly train myself on this software. I’ll keep you updated.

In the meantime, let me know if I can help in any way for a fix without using Rhino.
We are eager to implement this workflow on a large scale in our projects :slight_smile:

2 Likes

@Mohamed_Sabith @gokermu @jonathon

The Grasshopper script isn’t suitable for our needs. My colleague and I recently collaborated to address this issue and find a more fitting solution. Our efforts yielded conclusive results! :smiley:

First and foremost, we needed to grasp how ETABS stores its data. ETABS stores data in internal units aligned with the program’s calculations and algorithms. When a project is initiated in Metric or Imperial units, the database remains locked in that unit system by default, regardless of subsequent unit changes. Although altering units during a project only affects the visual display in the user interface, the exported units format remains fixed, as Speckle retrieves the unit from the source.

An essential step to ensure successful data transfer is initializing the model in U.S. Customary units. Failure to do so may lead to compatibility issues between Revit and ETABS due to scaling discrepancies.

It seems plausible that the Speckle connector for ETABS was designed around an Imperial database. Therefore, initiating the database in metric units may disrupt the transfer process.

Here’s a workaround that circumvents these challenges without relying on Grasshopper:

  1. Open the “consistent units” settings. If the units displayed are anything other than “in,” you may encounter the same issue we did.Note: Even if you change this setting to “mm,” the internal units remain unchanged; it’s merely a visual adjustment.

image
image

  1. Export your ETABS model to the .e2k text format and close the project afterward.

  1. Create a new project with U.S. Default units.

image

  1. Once the new project is initiated, import your model in .e2k format.

Now, your ETABS model should seamlessly connect to Speckle!
While this workaround resolves our immediate needs, a permanent solution from the Speckle team would be greatly appreciated. Contact me if you need additionnal information :slight_smile:

3 Likes

This is a really valuable information for us @Gab it is so helpful people expert domain knowledge contribute in this way. Thank you

1 Like

Hey @Gab

Thanks for reporting this issue. The confusing issue here is that Revit is using the units value on the POINT objects, not the LINE object. If you look at you line a bit closer, you’ll see that the points don’t have units. Therefore, when you receive it in Revit, Revit is kind of just guessing at the units.

image

However, I can’t seem to reproduce this issue. When I try, all of my units are defined. Could you share part of the ETABS model that has this issue.

I’m wondering if the issue is that in your consistent units form that you showed, there is a mix of imperial and metric units (m & F). If I try to set a model to these units, the consistant units form just resets itself to metric units the next time that I open it

1 Like

Hi @connor

We’ve identified the source of the problem, and you’ve seen it correctly.

The file I had was initially exported with a mix of imperial and metric units.
Here’s what happened and how you could reproduce the issue :

  • Export the model in .e2k
    image

  • You can choose the units format, this will become the new internal units of the model. once you import back into a new file.
    image

Therefore, if there’s a mix of units (imperial and metric), data points in Speckle won’t export correctly, as Connor mentioned. In conclusion, ensure your file is initialized with either Metric or Imperial units only, and everything should function properly. I don’t believe Speckle requires a fix for this issue.
I’ve cautioned all engineers to double check Etabs model before initiating collaboration on Speckle.

If someone encounters this issue, the fix I mentioned earlier is still applicable. It involves converting the units of a Etabs model.

Thank you all for your time, all of this was causing confusion to my team.

Hey @Gab,

Thanks for showing how to reproduce and solve this issue. This actually led me find a better way that we can retrieve the ETABS document units. So, although consistent units are currently needed, from speckle connector version 2.19 and onward, this will not be needed so you won’t have to pay attention to it.

2 Likes