diff --git a/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C b/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C
index 50ad374..117332b 100644
--- a/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C
+++ b/src/engine/engineMesh/fvMotionSolverEngineMesh/fvMotionSolverEngineMesh.C
@@ -46,7 +46,8 @@ Foam::fvMotionSolverEngineMesh::fvMotionSolverEngineMesh(const IOobject& io)
     motionSolver_
     (
         *this,
-        IOdictionary
+        engineDB_.engineIODict()
+        /*IOdictionary
         (
             IOobject
             (
@@ -57,7 +58,7 @@ Foam::fvMotionSolverEngineMesh::fvMotionSolverEngineMesh(const IOobject& io)
                 IOobject::NO_WRITE
             ),
             engineDB_.engineDict()
-        )
+        )*/
     )
 {
     engineDB_.engineDict().readIfPresent("pistonLayers", pistonLayers_);
diff --git a/src/engine/engineTime/engineTime.H b/src/engine/engineTime/engineTime.H
index f80504f..24c2926 100644
--- a/src/engine/engineTime/engineTime.H
+++ b/src/engine/engineTime/engineTime.H
@@ -57,6 +57,9 @@ SourceFiles
 #include "dictionary.H"
 #include "dimensionedScalar.H"
 
+class engineMesh;
+class fvMotionSolverEngineMesh;
+
 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
 
 namespace Foam
@@ -70,6 +73,8 @@ class engineTime
 :
     public Time
 {
+        friend class engineMesh;
+        friend class fvMotionSolverEngineMesh;
     // Private data
 
         IOdictionary dict_;
@@ -95,6 +100,15 @@ class engineTime
         //- adjust read time values
         void timeAdjustment();
 
+protected:
+
+        //- Return the engine geometry dictionary
+        const IOdictionary& engineIODict() const
+        {
+            return dict_;
+        }
+  
+        
 public:
 
     // Constructors
