diff --git a/epicardium/ble/ble_main.c b/epicardium/ble/ble_main.c index ffff52d90df96c231fc40ab8ca1108a16c3a108b..72fd0569603130ad9b72f5e1dbcb622e0e80d81f 100644 --- a/epicardium/ble/ble_main.c +++ b/epicardium/ble/ble_main.c @@ -352,15 +352,14 @@ static void bleSetup(bleMsg_t *pMsg) AppAdvSetData(APP_ADV_DATA_CONNECTABLE, 0, NULL); AppAdvSetData(APP_SCAN_DATA_CONNECTABLE, 0, NULL); -#if 0 - /* TODO: card10: until we have an BLE dialog, be discoverable and bondable always */ - /* start advertising; automatically set connectable/discoverable mode and bondable mode */ - AppAdvStart(APP_MODE_AUTO_INIT); -#else - /* enter discoverable and bondable mode mode by default */ - AppSetBondable(TRUE); - AppAdvStart(APP_MODE_DISCOVERABLE); -#endif + /* We only want to be bondable when the appropriate dialog is open */ + AppSetBondable(FALSE); + /* TODO: Sadly, not advertising leads to a higher current consumption... */ + if(AppDbCheckBonded() == FALSE) { + AppAdvStop(); + } else { + AppAdvStart(APP_MODE_CONNECTABLE); + } } uint32_t epic_ble_get_compare_value(void)