![]() |
nRF5 SDK
v12.3.0
|
| Choose documentation: | nRF5 SDK | S130 SoftDevice API | S132 SoftDevice API | S212 SoftDevice API | S332 SoftDevice API |
Types and functions for handling Eddystone slots. More...
Data Structures | |
| struct | es_adv_frame_t |
| Advertisable frame types that can be passed in to the advertising data during non-connectable slot advertising. More... | |
| struct | es_slot_t |
| Slot. More... | |
| struct | es_slot_reg_t |
| Slot registry. More... | |
Functions | |
| void | es_slots_init (const es_slot_t *p_default_slot) |
| Function for initializing the Eddystone slots with default values. More... | |
| void | es_slot_adv_interval_set (uint8_t slot_no, nrf_ble_escs_adv_interval_t *p_adv_interval, bool global) |
| Function for setting the advertising interval of the specified slot. More... | |
| void | es_slot_radio_tx_pwr_set (uint8_t slot_no, nrf_ble_escs_radio_tx_pwr_t radio_tx_pwr) |
| Function for setting the TX power of the specified slot. More... | |
| void | es_slot_on_write (uint8_t slot_no, uint8_t length, uint8_t *p_frame_data) |
| Function for setting the R/W ADV of the specified slot. More... | |
| ret_code_t | es_slot_write_to_flash (uint8_t slot_no) |
| Function for writing the slot's configuration to flash. More... | |
| void | es_slot_encrypted_eid_id_key_set (uint8_t slot_no, nrf_ble_escs_eid_id_key_t *p_eid_id_key) |
| Function for setting the slot's encrypted EID Identity Key to be displayed in the EID Identity Key characteristic. More... | |
| void | es_slot_eid_ready (uint8_t slot_no) |
| Function for marking an EID slot as ready for populating. More... | |
| void | es_slot_tlm_update (void) |
| Function for updating the TLM slot with updated data. | |
| void | es_slot_etlm_update (uint8_t eid_slot_no) |
| Function for updating the TLM slot with eTLM data. More... | |
| const es_slot_reg_t * | es_slot_get_registry (void) |
| Function for getting a pointer to the slot registry. More... | |
| void | es_slot_set_adv_custom_tx_power (uint8_t slot_no, nrf_ble_escs_adv_tx_pwr_t tx_pwr) |
| Function for setting a custom advertisement TX power for a given slot. More... | |
| bool | es_slot_reg_etlm_required (const es_slot_reg_t *p_reg) |
| Function for checking if an eTLM frame is required. More... | |
| bool | es_slot_reg_clear_slot (es_slot_reg_t *p_reg, uint8_t slot_no) |
| Function for clearing a slot. More... | |
| void | es_slot_reg_update_slot_list_info_on_add (es_slot_reg_t *p_reg, uint8_t slot_no, es_frame_type_t frame_type, bool init) |
| Function for updating the state of the slot registry after adding a slot. More... | |
| void | es_slot_reg_init (es_slot_reg_t *p_reg) |
| Function for initializing the slot registry. More... | |
Types and functions for handling Eddystone slots.
| void es_slot_adv_interval_set | ( | uint8_t | slot_no, |
| nrf_ble_escs_adv_interval_t * | p_adv_interval, | ||
| bool | global | ||
| ) |
Function for setting the advertising interval of the specified slot.
For compatibility with the Eddystone specifications, p_adv_interval must point to a 16-bit big endian value (coming from the characteristic write request), which is then converted to a little endian value inside the function before it is written into the variable in the slot.
| [in] | slot_no | The index of the slot. |
| [in,out] | p_adv_interval | Pointer to the advertisement interval (in ms) to set. |
| [in] | global | Flag that should be set if the beacon does not support variable advertising intervals. |
| void es_slot_eid_ready | ( | uint8_t | slot_no | ) |
Function for marking an EID slot as ready for populating.
Call this function when an EID has been generated and the advertisement frame can be populated with the EID.
| [in] | slot_no | The index of the slot. |
| void es_slot_encrypted_eid_id_key_set | ( | uint8_t | slot_no, |
| nrf_ble_escs_eid_id_key_t * | p_eid_id_key | ||
| ) |
Function for setting the slot's encrypted EID Identity Key to be displayed in the EID Identity Key characteristic.
| [in] | slot_no | The index of the slot. |
| [in,out] | p_eid_id_key | Pointer to a nrf_ble_escs_eid_id_key_t structure from where the key will be written. |
| void es_slot_etlm_update | ( | uint8_t | eid_slot_no | ) |
Function for updating the TLM slot with eTLM data.
This function uses the EID identity key from the given EID slot number to update the TLM slot.
| [in] | eid_slot_no | EID slot to get EID identity key from. |
| const es_slot_reg_t* es_slot_get_registry | ( | void | ) |
Function for getting a pointer to the slot registry.
| void es_slot_on_write | ( | uint8_t | slot_no, |
| uint8_t | length, | ||
| uint8_t * | p_frame_data | ||
| ) |
Function for setting the R/W ADV of the specified slot.
| [in] | slot_no | The index of the slot. |
| [in,out] | length | The length of the data written or read. |
| [in,out] | p_frame_data | Pointer to the data. |
| void es_slot_radio_tx_pwr_set | ( | uint8_t | slot_no, |
| nrf_ble_escs_radio_tx_pwr_t | radio_tx_pwr | ||
| ) |
Function for setting the TX power of the specified slot.
| [in] | slot_no | The index of the slot. |
| [in,out] | radio_tx_pwr | TX power value to set. |
| bool es_slot_reg_clear_slot | ( | es_slot_reg_t * | p_reg, |
| uint8_t | slot_no | ||
| ) |
Function for clearing a slot.
| [in] | p_reg | Pointer to the slot registry. |
| [in] | slot_no | The slot number to clear. |
| true | If an EID slot was cleared. |
| bool es_slot_reg_etlm_required | ( | const es_slot_reg_t * | p_reg | ) |
Function for checking if an eTLM frame is required.
| [in] | p_reg | Pointer to the slot registry. |
| true | If an eTLM frame is required. |
| false | Otherwise. |
| void es_slot_reg_init | ( | es_slot_reg_t * | p_reg | ) |
Function for initializing the slot registry.
| [in] | p_reg | Pointer to the slot registry to initialize. |
| void es_slot_reg_update_slot_list_info_on_add | ( | es_slot_reg_t * | p_reg, |
| uint8_t | slot_no, | ||
| es_frame_type_t | frame_type, | ||
| bool | init | ||
| ) |
Function for updating the state of the slot registry after adding a slot.
| [in] | p_reg | Pointer to the slot registry. |
| [in] | slot_no | The slot number that was added. |
| [in] | frame_type | The frame type that was added. |
| [in] | init | Information if the data is loaded during initialization. Set this parameter to false if the call is a result of a write to the Eddystone Configuration Service. |
| void es_slot_set_adv_custom_tx_power | ( | uint8_t | slot_no, |
| nrf_ble_escs_adv_tx_pwr_t | tx_pwr | ||
| ) |
Function for setting a custom advertisement TX power for a given slot.
| [in] | slot_no | The index of the slot. |
| [in] | tx_pwr | Advertised TX power to be set. |
| ret_code_t es_slot_write_to_flash | ( | uint8_t | slot_no | ) |
Function for writing the slot's configuration to flash.
| [in] | slot_no | The index of the slot. |
| void es_slots_init | ( | const es_slot_t * | p_default_slot | ) |
Function for initializing the Eddystone slots with default values.
This function synchronizes all slots with the initial values.
| [in] | p_default_slot | Pointer to the default parameters for a slot. |