diff --git a/liblights/include/samsung_lights.h b/liblights/include/samsung_lights.h
index fce1308..b866a4e 100644
--- a/liblights/include/samsung_lights.h
+++ b/liblights/include/samsung_lights.h
@@ -29,6 +29,7 @@
 #define PANEL_MAX_BRIGHTNESS_NODE "/sys/class/backlight/panel/max_brightness"
 #define BUTTON_BRIGHTNESS_NODE "/sys/class/sec/sec_touchkey/brightness"
 #define LED_BLINK_NODE "/sys/class/sec/led/led_blink"
+#define LED_BLN_NODE "/sys/class/misc/backlightnotification/notification_led"
 
 // Uncomment to enable variable button brightness
 //#define VAR_BUTTON_BRIGHTNESS 1
diff --git a/liblights/lights.c b/liblights/lights.c
index ad6edc6..27be248 100644
--- a/liblights/lights.c
+++ b/liblights/lights.c
@@ -43,6 +43,7 @@
     COMPONENT_BACKLIGHT = 0x1,
     COMPONENT_BUTTON_LIGHT = 0x2,
     COMPONENT_LED = 0x4,
+    COMPONENT_BLN = 0x8,
 };
 
 enum light_t {
@@ -76,6 +77,10 @@
         hw_components |= COMPONENT_BUTTON_LIGHT;
     if (access(LED_BLINK_NODE, W_OK) == 0)
         hw_components |= COMPONENT_LED;
+#ifdef LED_BLN_NODE
+    if (access(LED_BLN_NODE, W_OK) == 0)
+        hw_components |= COMPONENT_BLN;
+#endif
 }
 
 void init_g_lock(void)
@@ -293,6 +298,19 @@
     return err;
 }
 
+#ifdef LED_BLN_NODE
+static int set_light_bln_notifications(struct light_device_t *dev __unused,
+                                  struct light_state_t const *state)
+{
+    int err = 0;
+
+    pthread_mutex_lock(&g_lock);
+    err = write_str(LED_BLN_NODE, state->color & COLOR_MASK ? "1" : "0");
+    pthread_mutex_unlock(&g_lock);
+
+    return err;
+}
+#endif
 static int set_light_leds_battery(struct light_device_t *dev __unused,
                                   struct light_state_t const *state)
 {
@@ -352,6 +370,12 @@
     } else if (0 == strcmp(LIGHT_ID_NOTIFICATIONS, name)) {
         requested_component = COMPONENT_LED;
         set_light = set_light_leds_notifications;
+#ifdef LED_BLN_NODE
+        if (hw_components & COMPONENT_BLN) {
+            requested_component = COMPONENT_BLN;
+            set_light = set_light_bln_notifications;
+        }
+#endif
     } else if (0 == strcmp(LIGHT_ID_ATTENTION, name)) {
         requested_component = COMPONENT_LED;
         set_light = set_light_leds_attention;
