Pipe.ByLines by MEPover

Dear all,
I would like to explore the use of Pipe.ByLines provided by MEPover.
I have created a simple scene containing two lines. When I connect the list of lines to the “Pipe.ByLines” node, Revit freezes and does not return. What could be the reason for this?

I am using DYNAMO v.3.3.0 and Revit 2025.

My units at Revit side is meters. What unit is used at the Dynamo side?

Also, how do I make sure that I use a specific pipe segment (e.g. PVC Sch-40) at the Dynamo scene?

Best regards,
Lines.dyn (53.6 KB)

not sure mepover will work in 25…guess its build for ironpython 2.7…but openmep have some similar nodes for that and should work in 25…but try copy the python from mepover to canvas and connect and set python engine and see what kind of warning you get…if any

Dear Sovitek and all,
MEPOver is not working in Revit 2025.4. Revit freezes.
So, I switched to OpenMEP as you suggested. It is not working for Revit 2025.4. The OpenMEP addon does not appear in the packages list of Dynamo.
Therefore, I had to switch to Revit 2024.3
Here, Revit freezes again when I connect the “Pipe System Types” node to Pipe.CreateByLine.
Is there again an ironpython problem?
Regards,

PipeLines.dyn (49.8 KB)

Try this python code instead.

# Import Revit API
import clr
clr.AddReference('RevitAPI')
clr.AddReference('RevitServices')
from Autodesk.Revit.DB import *
from Autodesk.Revit.DB.Plumbing import *
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager

# Assign Dynamo inputs
IN[0] #StartPoint (Point.ByCoordinates)
IN[1] #EndPoint (Point.ByCoordinates)
IN[2] #PipeType
IN[3] #SystemType
IN[4] #level
IN[5] #Diameter

# Get current document
doc = DocumentManager.Instance.CurrentDBDocument

# Create pipe
def create_pipe(start_point, end_point, pipe_type, system_type, level, diameter):
    # Convert Dynamo points to Revit XYZ - with explicit typing
    start_xyz = XYZ(float(start_point.X), float(start_point.Y), float(start_point.Z))
    end_xyz = XYZ(float(end_point.X), float(end_point.Y), float(end_point.Z))
    
    # Create the pipe with explicit ElementId casting
    pipe = Pipe.Create(
        doc,
        ElementId(system_type.Id),
        ElementId(pipe_type.Id),
        ElementId(level.Id),
        start_xyz,
        end_xyz
    )
    
    # Set the diameter
    parameter = pipe.get_Parameter(BuiltInParameter.RBS_PIPE_DIAMETER_PARAM)
    parameter.Set(diameter)
    
    return pipe

# Run transaction
TransactionManager.Instance.EnsureInTransaction(doc)
result = create_pipe(IN[0], IN[1], IN[2], IN[3], IN[4], IN[5])
TransactionManager.Instance.TransactionTaskDone()

# Output the created pipe
OUT = result

The MEPover Pipe.ByLines node works for me in 2025 with all the correct inputs. Can you make sure you have the latest version of the package (and IronPython) installed and try again in Manual mode?