diff --git a/src/functionObjects/field/binField/binModels/binModel/binModel.C b/src/functionObjects/field/binField/binModels/binModel/binModel.C
index 5e351b078372971f04dbaa1e8f02e4ffa0a5bdd3..6670a4b2ee1c8e71e4cc305bf356d6727365f5f8 100644
--- a/src/functionObjects/field/binField/binModels/binModel/binModel.C
+++ b/src/functionObjects/field/binField/binModels/binModel/binModel.C
@@ -148,6 +148,11 @@ Foam::binModel::binModel
 
 bool Foam::binModel::read(const dictionary& dict)
 {
+    if (!functionObjects::writeFile::read(dict))
+    {
+        return false;
+    }
+
     patchSet_ = mesh_.boundaryMesh().patchSet(dict.get<wordRes>("patches"));
     fieldNames_ = dict.get<wordHashSet>("fields").sortedToc();
 
diff --git a/src/functionObjects/field/binField/binModels/singleDirectionUniformBin/singleDirectionUniformBinTemplates.C b/src/functionObjects/field/binField/binModels/singleDirectionUniformBin/singleDirectionUniformBinTemplates.C
index 5fedd25a11483a38da197ee0f3afecd3c8920000..04714fe74db8bbe3cae1eb361908341dfe0d8466 100644
--- a/src/functionObjects/field/binField/binModels/singleDirectionUniformBin/singleDirectionUniformBinTemplates.C
+++ b/src/functionObjects/field/binField/binModels/singleDirectionUniformBin/singleDirectionUniformBinTemplates.C
@@ -104,7 +104,7 @@ bool Foam::binModels::singleDirectionUniformBin::processField
         return false;
     }
 
-    if (Pstream::master() && !writtenHeader_)
+    if (writeToFile() && !writtenHeader_)
     {
         writeFileHeader<Type>(filePtrs_[fieldi]);
     }
@@ -183,7 +183,7 @@ bool Foam::binModels::singleDirectionUniformBin::processField
         }
     }
 
-    if (Pstream::master())
+    if (writeToFile())
     {
         writeBinnedData(data, filePtrs_[fieldi]);
     }
diff --git a/src/functionObjects/field/binField/binModels/uniformBin/uniformBinTemplates.C b/src/functionObjects/field/binField/binModels/uniformBin/uniformBinTemplates.C
index 8f7c1c103e180ba82ab9ae198343a0b982f27d57..12d7e9c1cea624fd0922cab3660d4a293f8317a7 100644
--- a/src/functionObjects/field/binField/binModels/uniformBin/uniformBinTemplates.C
+++ b/src/functionObjects/field/binField/binModels/uniformBin/uniformBinTemplates.C
@@ -98,7 +98,7 @@ bool Foam::binModels::uniformBin::processField(const label fieldi)
         return false;
     }
 
-    if (Pstream::master() && !writtenHeader_)
+    if (writeToFile() && !writtenHeader_)
     {
         writeFileHeader<Type>(filePtrs_[fieldi]);
     }
@@ -166,7 +166,7 @@ bool Foam::binModels::uniformBin::processField(const label fieldi)
         }
     }
 
-    if (Pstream::master())
+    if (writeToFile())
     {
         writeBinnedData(data, filePtrs_[fieldi]);
     }