This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

explanation for eddystone project

Hi, is their any brief explanation for nrf5-sdk-for-eddystone project firmware newly released by nordic. I go through the project but it is very hard to understand can any one help. I add UUID, TLM frames successfully and it advertising. when I try to add EID frame it not advertising. The code I used to add EID frame is image description

i=2 block for TLM frame and i=3 block for EID frame. In EID block (i=3) if I call eddystone_adv_slot_adv_frame_set(i); it not advertising. If comment that line it advertising and in TLM frame gives data like etelemetry data, salt and message integrity check, in EID frame it showing encrypted key which I given image description.

when I call eddystone_adv_slot_adv_frame_set(i); function for EID frame it initialize security module right. but when call call eddystone_adv_slot_adv_frame_set(i); function for EID frame device is not advertising where I do wrong?

Parents
  • I known the basics of Bluetooth and Eddystone and I successfully added URL,UUID and TLM frames and they are advertising fine but when I try to add EID frame when I call eddystone_adv_slot_adv_frame_set function board get restarting. the code I am using to uuid EID frame is

    else if (i == 3) { m_slots[i].slot_no = i; m_slots[i].adv_intrvl = p_ble_ecs_init->p_init_vals->adv_intrvl; m_slots[i].radio_tx_pwr = p_ble_ecs_init->p_init_vals->radio_tx_pwr; m_slots[i].frame_rw_buffer[0] = 0x30; memcpy((m_slots[i]).frame_rw_buffer + 1, (char *)eid_frame_data, sizeof(eid_frame_data)); m_slots[i].frame_rw_length = 17 + 1; // +1 for frame type memcpy(&(m_slots[i].eid_id_key.key), (p_ble_ecs_init->p_init_vals->eid_id_key.key), ECS_AES_KEY_SIZE); m_slots[i].adv_frame.eid.frame_type = 0x30; memcpy(&(m_slots[i].adv_frame.eid.eid),eddystone_eid_uuid, EDDYSTONE_EID_ID_LENGTH); m_slots[i].is_configured = true; err_code = eddystone_adv_slot_adv_frame_set(i); APP_ERROR_CHECK(err_code);

Reply
  • I known the basics of Bluetooth and Eddystone and I successfully added URL,UUID and TLM frames and they are advertising fine but when I try to add EID frame when I call eddystone_adv_slot_adv_frame_set function board get restarting. the code I am using to uuid EID frame is

    else if (i == 3) { m_slots[i].slot_no = i; m_slots[i].adv_intrvl = p_ble_ecs_init->p_init_vals->adv_intrvl; m_slots[i].radio_tx_pwr = p_ble_ecs_init->p_init_vals->radio_tx_pwr; m_slots[i].frame_rw_buffer[0] = 0x30; memcpy((m_slots[i]).frame_rw_buffer + 1, (char *)eid_frame_data, sizeof(eid_frame_data)); m_slots[i].frame_rw_length = 17 + 1; // +1 for frame type memcpy(&(m_slots[i].eid_id_key.key), (p_ble_ecs_init->p_init_vals->eid_id_key.key), ECS_AES_KEY_SIZE); m_slots[i].adv_frame.eid.frame_type = 0x30; memcpy(&(m_slots[i].adv_frame.eid.eid),eddystone_eid_uuid, EDDYSTONE_EID_ID_LENGTH); m_slots[i].is_configured = true; err_code = eddystone_adv_slot_adv_frame_set(i); APP_ERROR_CHECK(err_code);

Children
No Data
Related