Hi,
I have the following initialization for advertising:
ret_code_t err_code; ble_advertising_init_t init; memset(&init, 0, sizeof(init)); init.advdata.name_type = BLE_ADVDATA_FULL_NAME; init.advdata.include_appearance = true; init.advdata.flags = BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE; init.advdata.uuids_complete.uuid_cnt = sizeof(m_adv_uuids[0]) / sizeof(m_adv_uuids[0]); init.advdata.uuids_complete.p_uuids = &m_adv_uuids[service_index]; NRF_LOG_INFO("UUID %i, index %i", init.advdata.uuids_complete.p_uuids->uuid, service_index); init.srdata.name_type = BLE_ADVDATA_FULL_NAME; init.config.ble_adv_fast_enabled = true; init.config.ble_adv_fast_interval = APP_ADV_INTERVAL; init.config.ble_adv_fast_timeout = APP_ADV_TIMEOUT_IN_SECONDS; init.evt_handler = on_adv_evt; err_code = ble_advertising_init(this->m_advertising, &init); APP_ERROR_CHECK(err_code); ble_advertising_conn_cfg_tag_set(this->m_advertising, APP_BLE_CONN_CFG_TAG); NRF_LOG_INFO("Advertising initialized.");
The name consists of an acronym od three letters and a underscore e,g, XXX_ and a six digit ID. Like XXX_12E124.
On iOS I can see the full name normally, on android aswell but sometimes I only get XXX_. This is very often the case when I try to connect to a PC e.g. mac book or Linux Ubuntu. It takes several seconds until the full name is advertised. How can I force to only advertise the full name and not the short name.
Thanks,
Constantin