diff --git a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
index f22d2beca4101dd721d6e90dc9d9d8d921a9aa1a..4c6a37f67971b830f29393e5508504c69ef05a06 100644
--- a/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
+++ b/DDG4/edm4hep/Geant4Output2EDM4hep.cpp
@@ -23,6 +23,7 @@
 /// podio include files
 #include <podio/Frame.h>
 #include <podio/ROOTFrameWriter.h>
+#include <podio/podioVersion.h>
 
 /// Namespace for the AIDA detector description toolkit
 namespace dd4hep {
@@ -107,10 +108,13 @@ namespace dd4hep {
         printout(DEBUG, "Geant4OutputEDM4hep", "Saving event parameter: %s", p.first);
         frame.putParameter(p.first, p.second);
       }
+#if podio_VERSION_MAJOR > 0 || podio_VERSION_MINOR > 16 || podio_VERSION_PATCH > 2
+      // This functionality is only present in podio > 0.16.2
       for (auto const& p: this->dblParameters()) {
         printout(DEBUG, "Geant4OutputEDM4hep", "Saving event parameter: %s", p.first);
         frame.putParameter(p.first, p.second);
       }
+#endif
     }
   }    // End namespace sim
 }      // End namespace dd4hep
@@ -378,7 +382,10 @@ void Geant4Output2EDM4hep::saveEvent(OutputContext<G4Event>& ctxt)  {
     runNumber = parameters->runNumber() + runNumberOffset;
     eventNumber = parameters->eventNumber() + eventNumberOffset;
     parameters->extractParameters(m_frame);
+#if podio_VERSION_MAJOR > 0 || podio_VERSION_MINOR > 16 || podio_VERSION_PATCH > 2
+    // This functionality is only present in podio > 0.16.2
     eventWeight = m_frame.getParameter<double>("EventWeights");
+#endif
   } else { // ... or from DD4hep framework
     runNumber = m_runNo + runNumberOffset;
     eventNumber = ctxt.context->GetEventID() + eventNumberOffset;