diff --git a/packages/open3d/package.py b/packages/open3d/package.py
index c1faaa0b69ada8c402bf59266ee52087d65e8c30..3deedf478b68877a38c3cf729125bc83e305e1f2 100644
--- a/packages/open3d/package.py
+++ b/packages/open3d/package.py
@@ -20,6 +20,9 @@ class Open3d(CMakePackage, CudaPackage):
     license("MIT")
 
     # begin EBRAINS (added): add version
+    version(
+        "0.19.0", tag="v0.19.0", commit="1e7b17438687a0b0c1e5a7187321ac7044afe275", submodules=True
+    )
     version(
         "0.18.0", tag="v0.18.0", commit="0f06a149c4fb9406fd3e432a5cb0c024f38e2f0e", submodules=True
     )
@@ -66,12 +69,13 @@ class Open3d(CMakePackage, CudaPackage):
     depends_on("assimp", when="@0.15:")
     depends_on("jsoncpp", when="@0.15:")
     depends_on("msgpack-c", when="@0.15:")
-    # depends_on("tbb", when="@0.15:")
+    depends_on("tbb", when="@0.15:")
     depends_on("cppzmq", when="@0.15:")
     depends_on("curl", when="@0.17:")
     depends_on("openssl", when="@0.17:")
     # depends_on("vtk", when="@0.17:")
-    depends_on("embree@:3", when="@0.18:")
+    depends_on("embree@:3", when="@0.18")
+    depends_on("embree@4:", when="@0.19:")
     # end EBRAINS
 
     extends("python", when="+python", type=("build", "link", "run"))
@@ -157,7 +161,7 @@ class Open3d(CMakePackage, CudaPackage):
             args.append(self.define("USE_SYSTEM_JSONCPP", True))
             args.append(self.define("USE_SYSTEM_MSGPACK", True))
             args.append(self.define("USE_SYSTEM_NANOFLANN", True))
-            # args.append(self.define("USE_SYSTEM_TBB", True))
+            args.append(self.define("USE_SYSTEM_TBB", True))
             args.append(self.define("USE_SYSTEM_ZEROMQ", True))
         if self.spec.satisfies("@0.17:"):
             args.append(self.define("USE_SYSTEM_CURL", True))
@@ -204,3 +208,4 @@ class Open3d(CMakePackage, CudaPackage):
         with working_dir("spack-test"):
             python = which(python.path)
             python("-c", "import open3d")
+