MEPover package can only create one HVAC zone

Hello everyone,

with the MEPover package I want to create several new HVAC zones and then rename them.

With MEPover\Zone.NewZone I can only create one zone per level at a time (next number), but with Revit command HVAC-Zone multiple zones per level.B_Zonierung MEPover_2021-01-29_09-52-39

Where is the error? Which command must be executed after Zone.NewZone?

Many thanks and best regards

Hi Rolf,

Sorry for the late reply. You can supply the node with a list of levels and it will create a zone for every entry in that list. So in this example it will create 3 zones for the level:

I hope that helps.

1 Like

Hi T_Pover,

thank you very much, “List create” will help.

I’m a beginner with Dynamo and Pyton. Every beginning is difficult.

I have seen in “if isinstance(IN[0], list)” but I have no idea how to use it.

Best regards

Hi T_Pover,

unfortunately there is a problem with Zone.AddSpaces:
Warning: This custom block contains an invalid input. Correct the input before saving the user-defined block.

My Revit version German 2021.1.1 + MEPover 2020.6.2 (package was re-downloaded again)!?
Is it not possible to use this combination?

Best regards

Double click on the Zone.AddSpaces node to open the custom node.

Navigate to the inputs - one of them will be bright red. Chang the first word which will likely be Zone or something similar to zone or _zone. Save the node and go back to the main graph and see if it cleared itself up. Do the same thing for any other nodes which indicate an incorrect input.

PS: going though the Dynamo Primer is a great way to get started. Don’t skip any exercises even if the outcome feels like something you won’t soon need. The point is to learn the methods, not producing the results.
About | The Dynamo Primer (

Hi JacobSmall,

thanks for pointing out that Dynamo Prymer has worked through it in full.
So do country-specific translations always have to be taken into account with variable names?

The name of the input variable with error message has been changed. This error has been eliminated.
All other variables are without errors.
Unfortunately, the rooms are still not not moved to the newly created zone.

Does anything have to be changed (output variables …)?

Best regards


It’s not that. Is a country specific translation, but that Dynamo uses “Zone” as a class. The lowercase value being a different string works fine. :slight_smile:

Looks like there may be other issues with the node - try moving the python out of the custom node space and into the workspace to see if any other errors are exposed.

Hello JacobSmall,

renaming the input “Zone” to “_zone” is the solution. MEPover package has no problems in Python. After restarting Revit, the node works.

Thanks and best regards

1 Like

Hello all,

I have enjoyed following this conversation. I was wondering what are a few next steps to consider when trying to get the zones to be assigned to a space?

Creating the above graphs have been helpful in my learning and understanding of this process. The image below shows basically the same graph has the one from Rolf above so thank you for sharing.

I have seen some really cool stuff from others regarding this topic and was hoping to get to a place where I could get zones to automatically be assigned to spaces (eventually based on exterior wall, similar loads, and similar temperature set points). Any thoughts would be appreciated.

Luke @T_Pover

  • Providing a list to the inputs to NewZone will let you make multiple zones.

  • You need to order the transactions for NewZone and AddSpaces via a passthrough node or transaction nodes in order to get it to apply the zoning with one iteration.

  • The assignment method is truly the trickiest part. That’s been omitted in this example just to have a proof of concept.

1 Like

Hi Luke,

cool solution ?:

Our idea:
Room type (e.g. according to Ashrea …) and MEP zone according to room name
1.1 Room name (unique list!)
1.2.1 Room type with fuzzy automatic (like Sigma-Aec see below)
1.2.2 Room name according to Exel - room type manually via selection list
1.3 MEP zone like room type (1 room type = 1 MEP zone)
1.4 Create and rename non-existent zones!
1.5.1 Room type on the rooms
1.5.2 Rooms in the zones (not zones in the rooms!)

I look forward to seeing other ideas!

Best regards

Rolf 1

Hello Robert,

please upload the * .dyn. I would like to test your process, but not create it myself.

Best regards


Hello @Robert_Younger

Thank you for sharing your thoughts and description. This graph is nice and has helped me learn more about zones. It is cool to see that this graph allows an individual to zone and place 2 or more spaces per zone…

When you say assign, I imagine you are thinking of assigning zones based on temperature set points, exterior wall load, and things like that… Is that true?

Thank you again for your help and comments.


When you say assign, I imagine you are thinking of assigning zones based on temperature set points, exterior wall load, and things like that… Is that true?

Yes. In an ideal HVAC world you would query room position (exterior assemblies vs interior), setpoints, usage, and anticipated budget (zone qty) to generate a preliminary zoning layout. My personal experience on this is that the traditional + manual approach varies quite a lot between firms and designers, even if they start from the same fundamentals. This can be due to project knowledge that doesn’t easily transfer to a script customization.

As such I tend to limit to setpoints and as many zones as possible… if I am having the zoning conversation with a client it’s almost a guarantee that the final product will be fundamentally different from the first attempt.

1 Like