diff --git a/sysfs.cpp b/sysfs.cpp
index 0eb7863..f348be4 100644
--- a/sysfs.cpp
+++ b/sysfs.cpp
@@ -289,7 +289,8 @@
         const std::string& id,
         const std::string& sensor,
         size_t retries,
-        std::chrono::milliseconds delay) const
+        std::chrono::milliseconds delay,
+        bool isOCC) const
 {
     int64_t val;
     std::ifstream ifs;
@@ -334,6 +335,25 @@
                 exit(0);
             }
 
+            if (isOCC)
+            {
+                if (rc == EAGAIN)
+                {
+                    // For the OCCs, when an EAGAIN is return, just set the
+                    // value to 0 (0x00 = sensor is unavailable)
+                    val = 0;
+                    break;
+                }
+                else if (rc == EREMOTEIO)
+                {
+                    // For the OCCs, when an EREMOTEIO is return, set the
+                    // value to 255*1000
+                    // (0xFF = sensor is failed, 1000 = sensor factor)
+                    val = 255000;
+                    break;
+                }
+            }
+
             if (0 == std::count(
                         retryableErrors.begin(),
                         retryableErrors.end(),
