diff --git a/profiles/input/hog_device.c b/profiles/input/hog_device.c
index b8a58bc..c7b5bcb 100644
--- a/profiles/input/hog_device.c
+++ b/profiles/input/hog_device.c
hogdev->attrib = g_attrib_ref(attrib);
- gatt_discover_char(hogdev->attrib, prim->range.start, prim->range.end,
- NULL, char_discovered_cb, hogdev);
-
hogdev->report_cb_id = g_attrib_register(hogdev->attrib,
ATT_OP_HANDLE_NOTIFY, report_value_cb,
hogdev, NULL);
+
+ if (hogdev->reports == NULL) {
+ gatt_discover_char(hogdev->attrib, prim->range.start,
+ prim->range.end, NULL,
+ char_discovered_cb, hogdev);
+ }
}
static void attio_disconnected_cb(gpointer user_data)