diff --git a/DeviceParts/src/org/omnirom/device/KeyHandler.java b/DeviceParts/src/org/omnirom/device/KeyHandler.java
index 99466ea..aacded0 100644
--- a/DeviceParts/src/org/omnirom/device/KeyHandler.java
+++ b/DeviceParts/src/org/omnirom/device/KeyHandler.java
@@ -49,6 +49,7 @@
 import android.os.Vibrator;
 import android.provider.Settings;
 import android.provider.Settings.Global;
+import android.provider.Settings.Secure;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
 import android.telephony.SubscriptionInfo;
@@ -96,6 +97,8 @@
     private static final int POCKET_MIN_DELTA_MS = 5000;
     private static final int FP_GESTURE_LONG_PRESS = 188;
 
+    private static final String DT2W_CONTROL_PATH = "/sys/devices/platform/soc/c80000.i2c/i2c-4/4-0038/dclick_mode";
+
     private static final int[] sSupportedGestures = new int[]{
         KEY_GESTURE_C,
         KEY_GESTURE_E,
@@ -107,7 +110,7 @@
         KEY_GESTURE_DOWN_SWIPE,
         KEY_GESTURE_LEFT_SWIPE,
         KEY_GESTURE_RIGHT_SWIPE,
-        //KEY_DOUBLE_TAP,
+        KEY_DOUBLE_TAP,
         FP_GESTURE_LONG_PRESS
     };
 
@@ -121,8 +124,8 @@
         KEY_GESTURE_UP_SWIPE,
         KEY_GESTURE_DOWN_SWIPE,
         KEY_GESTURE_LEFT_SWIPE,
-        KEY_GESTURE_RIGHT_SWIPE
-        //KEY_DOUBLE_TAP
+        KEY_GESTURE_RIGHT_SWIPE,
+        KEY_DOUBLE_TAP
     };
 
     protected final Context mContext;
@@ -149,6 +152,7 @@
     private boolean isFpgesture;
     private boolean isOPCameraAvail;
     private boolean mRestoreUser;
+    private boolean mDoubleTapToWake;
 
     private SensorEventListener mProximitySensor = new SensorEventListener() {
         @Override
@@ -201,6 +205,9 @@
             mContext.getContentResolver().registerContentObserver(Settings.System.getUriFor(
                     Settings.System.OMNI_DEVICE_FEATURE_SETTINGS),
                     false, this);
+            mContext.getContentResolver().registerContentObserver(Settings.Secure.getUriFor(
+                    Settings.Secure.DOUBLE_TAP_TO_WAKE),
+                    false, this);
             update();
             updateDozeSettings();
         }
@@ -224,6 +231,9 @@
             mUseProxiCheck = Settings.System.getIntForUser(
                     mContext.getContentResolver(), Settings.System.OMNI_DEVICE_PROXI_CHECK_ENABLED, 1,
                     UserHandle.USER_CURRENT) == 1;
+            mDoubleTapToWake = Settings.Secure.getInt(
+                    mContext.getContentResolver(), Settings.Secure.DOUBLE_TAP_TO_WAKE, 1) == 1;
+                    updateDoubleTapToWake();
         }
     }
 
@@ -401,6 +411,13 @@
         }
     }
 
+    private void updateDoubleTapToWake() {
+        Log.i(TAG, "udateDoubleTapToWake " + mDoubleTapToWake);
+        if (Utils.fileWritable(DT2W_CONTROL_PATH)) {
+            Utils.writeValue(DT2W_CONTROL_PATH, mDoubleTapToWake ? "1" : "0");
+        }
+    }
+
     private void onDisplayOff() {
         if (DEBUG) Log.i(TAG, "Display off");
         if (enableProxiSensor()) {
diff --git a/prebuilt/system/etc/init/init.qcom.rc b/prebuilt/system/etc/init/init.qcom.rc
index 198323a..ac70ade 100644
--- a/prebuilt/system/etc/init/init.qcom.rc
+++ b/prebuilt/system/etc/init/init.qcom.rc
@@ -38,3 +38,6 @@
 
     chown system system /sys/devices/platform/soc/c80000.i2c/i2c-4/4-0038/fts_gesture_down_mode
     chmod 0660 /sys/devices/platform/soc/c80000.i2c/i2c-4/4-0038/fts_gesture_down_mode
+
+    chown system system /sys/devices/platform/soc/c80000.i2c/i2c-4/4-0038/dclick_mode
+    chmod 0660 /sys/devices/platform/soc/c80000.i2c/i2c-4/4-0038/dclick_mode
