diff --git a/usb/Usb.cpp b/usb/Usb.cpp
index a608130..9244f16 100644
--- a/usb/Usb.cpp
+++ b/usb/Usb.cpp
@@ -49,6 +49,8 @@
 
 constexpr char kEnabledPath[] = "/sys/class/power_supply/usb/moisture_detection_enabled";
 constexpr char kDetectedPath[] = "/sys/class/power_supply/usb/moisture_detected";
+constexpr char kConsole[] = "init.svc.console";
+constexpr char kDisableContatminantDetection[] = "vendor.usb.contaminantdisable";
 
 void queryVersionHelper(android::hardware::usb::V1_2::implementation::Usb *usb,
                         hidl_vec<PortStatus> *currentPortStatus_1_2);
@@ -132,8 +134,11 @@
 
 Return<void> Usb::enableContaminantPresenceDetection(const hidl_string & /*portName*/,
                                                      bool enable) {
-    std::string status = GetProperty("init.svc.console", "");
-    if (status != "running")
+
+    std::string status = GetProperty(kConsole, "");
+    std::string disable = GetProperty(kDisableContatminantDetection, "");
+
+    if (status != "running" && disable != "true")
         writeFile(kEnabledPath, enable ? "1" : "0");
 
     hidl_vec<PortStatus> currentPortStatus_1_2;
