diff --git a/sysfs/sysfswrite.cpp b/sysfs/sysfswrite.cpp
index 6ca9b25..93a64dc 100644
--- a/sysfs/sysfswrite.cpp
+++ b/sysfs/sysfswrite.cpp
@@ -29,7 +29,7 @@
     double ovalue = offset + minimum;
 
     std::ofstream ofs;
-    ofs.open(_writepath);
+    ofs.open(_writePath);
     ofs << static_cast<int64_t>(ovalue);
     ofs.close();
 
@@ -39,7 +39,7 @@
 void SysFsWrite::write(double value)
 {
     std::ofstream ofs;
-    ofs.open(_writepath);
+    ofs.open(_writePath);
     ofs << static_cast<int64_t>(value);
     ofs.close();
 
diff --git a/sysfs/sysfswrite.hpp b/sysfs/sysfswrite.hpp
index 9510dff..f877d4a 100644
--- a/sysfs/sysfswrite.hpp
+++ b/sysfs/sysfswrite.hpp
@@ -12,27 +12,27 @@
 class SysFsWritePercent : public WriteInterface
 {
   public:
-    SysFsWritePercent(const std::string& writepath, int64_t min, int64_t max) :
-        WriteInterface(min, max), _writepath(FixupPath(writepath))
+    SysFsWritePercent(const std::string& writePath, int64_t min, int64_t max) :
+        WriteInterface(min, max), _writePath(FixupPath(writePath))
     {
     }
 
     void write(double value) override;
 
   private:
-    std::string _writepath;
+    std::string _writePath;
 };
 
 class SysFsWrite : public WriteInterface
 {
   public:
-    SysFsWrite(const std::string& writepath, int64_t min, int64_t max) :
-        WriteInterface(min, max), _writepath(FixupPath(writepath))
+    SysFsWrite(const std::string& writePath, int64_t min, int64_t max) :
+        WriteInterface(min, max), _writePath(FixupPath(writePath))
     {
     }
 
     void write(double value) override;
 
   private:
-    std::string _writepath;
+    std::string _writePath;
 };
