diff --git a/doc/mgmt-api.txt b/doc/mgmt-api.txt
index 5e87cb6..34421ee 100644
--- a/doc/mgmt-api.txt
+++ b/doc/mgmt-api.txt
@@ -173,3 +173,10 @@
 
 Event Code		0x0005
 Event Parameters	Controller_Index (2 Octets)
+
+Controller Powered Event
+========================
+
+Event Code		0x0006
+Event Parameters	Controller_Index (2 Octets)
+			Powered (1 Octet)
diff --git a/lib/mgmt.h b/lib/mgmt.h
index 70cf4b6..46bc73f 100644
--- a/lib/mgmt.h
+++ b/lib/mgmt.h
@@ -96,3 +96,9 @@
 struct mgmt_ev_index_removed {
 	uint16_t index;
 } __packed;
+
+#define MGMT_EV_POWERED			0x0006
+struct mgmt_ev_powered {
+	uint16_t index;
+	uint8_t powered;
+} __packed;
diff --git a/plugins/mgmtops.c b/plugins/mgmtops.c
index 05317b7..a7117fa 100644
--- a/plugins/mgmtops.c
+++ b/plugins/mgmtops.c
@@ -171,6 +171,28 @@
 	remove_controller(index);
 }
 
+static void mgmt_powered(int sk, void *buf, size_t len)
+{
+	struct mgmt_ev_powered *ev = buf;
+	uint16_t index;
+
+	if (len < sizeof(*ev)) {
+		error("Too small powered event");
+		return;
+	}
+
+	index = btohs(bt_get_unaligned(&ev->index));
+
+	if (index > max_index) {
+		DBG("Ignoring powered event for unknown controller %u", index);
+		return;
+	}
+
+	controllers[index].enabled = ev->powered;
+
+	DBG("Controller %u powered %s", index, ev->powered ? "on" : "off");
+}
+
 static void read_index_list_complete(int sk, void *buf, size_t len)
 {
 	struct mgmt_rp_read_index_list *rp = buf;
@@ -364,6 +386,9 @@
 	case MGMT_EV_INDEX_REMOVED:
 		mgmt_index_removed(sk, buf + MGMT_HDR_SIZE, len);
 		break;
+	case MGMT_EV_POWERED:
+		mgmt_powered(sk, buf + MGMT_HDR_SIZE, len);
+		break;
 	default:
 		error("Unknown Management opcode %u", opcode);
 		break;
