nRF5 SDK v17.0.0
Modules | Data Structures | Macros | Typedefs | Enumerations | Functions
Eddystone Configuration Service

Eddystone Configuration Service module. More...

Modules

 Eddystone Configuration Service configuration
 

Data Structures

struct  nrf_ble_escs_broadcast_cap_t
 Data fields in the Broadcast Capabilities characteristic. More...
 
struct  nrf_ble_escs_lock_state_write_t
 Write data fields of the Lock State characteristic. More...
 
union  nrf_ble_escs_lock_state_t
 Lock State characteristic. More...
 
union  nrf_ble_escs_unlock_t
 Unlock characteristic (read/write). More...
 
struct  nrf_ble_escs_public_ecdh_key_t
 Public ECDH Key characteristic. More...
 
struct  nrf_ble_escs_eid_id_key_t
 EID Identity Key characteristic. More...
 
union  nrf_ble_escs_remain_conntbl_t
 Unlock characteristic (read/write). More...
 
struct  nrf_ble_escs_init_params_t
 Eddystone Configuration Service initialization parameters (corresponding to required characteristics). More...
 
struct  nrf_ble_escs_init_t
 Eddystone Configuration Service initialization structure. More...
 
struct  nrf_ble_escs_s
 

Macros

#define BLE_ESCS_NUMBER_OF_CHARACTERISTICS   13
 Number of characteristics contained in the Eddystone Configuration Service.
 
#define BLE_UUID_ESCS_SERVICE   0x7500
 UUID of the Eddystone Configuration Service.
 
#define BLE_UUID_ESCS_BROADCAST_CAP_CHAR   0x7501
 
#define BLE_UUID_ESCS_ACTIVE_SLOT_CHAR   0x7502
 
#define BLE_UUID_ESCS_ADV_INTERVAL_CHAR   0x7503
 
#define BLE_UUID_ESCS_RADIO_TX_PWR_CHAR   0x7504
 
#define BLE_UUID_ESCS_ADV_TX_PWR_CHAR   0x7505
 
#define BLE_UUID_ESCS_LOCK_STATE_CHAR   0x7506
 
#define BLE_UUID_ESCS_UNLOCK_CHAR   0x7507
 
#define BLE_UUID_ESCS_PUBLIC_ECDH_KEY_CHAR   0x7508
 
#define BLE_UUID_ESCS_EID_ID_KEY_CHAR   0x7509
 
#define BLE_UUID_ESCS_RW_ADV_SLOT_CHAR   0x750A
 
#define BLE_UUID_ESCS_FACTORY_RESET_CHAR   0x750B
 
#define BLE_UUID_ESCS_REMAIN_CONNECTABLE_CHAR   0x750C
 
#define ESCS_BASE_UUID
 
#define NRF_BLE_ESCS_BROADCAST_CAP_LEN   (ESCS_NUM_OF_SUPPORTED_TX_POWER + 6)
 

Typedefs

typedef uint8_t nrf_ble_escs_active_slot_t
 
typedef uint16_t nrf_ble_escs_adv_interval_t
 
typedef int8_t nrf_ble_escs_radio_tx_pwr_t
 
typedef int8_t nrf_ble_escs_adv_tx_pwr_t
 
typedef uint8_t nrf_ble_escs_factory_reset_t
 
typedef struct nrf_ble_escs_s nrf_ble_escs_t
 
typedef void(* nrf_ble_escs_write_evt_handler_t )(nrf_ble_escs_t *p_escs, uint16_t uuid, uint16_t value_handle, uint8_t const *p_data, uint16_t length)
 
typedef void(* nrf_ble_escs_read_evt_handler_t )(nrf_ble_escs_t *p_escs, uint16_t uuid, uint16_t value_handle)
 

Enumerations

enum  nrf_ble_escs_lock_state_read_t {
  NRF_BLE_ESCS_LOCK_STATE_LOCKED = (0x00),
  NRF_BLE_ESCS_LOCK_STATE_UNLOCKED = (0x01),
  NRF_BLE_ESCS_LOCK_STATE_UNLOCKED_AUTO_RELOCK_DISABLED
}
 Read states of the Lock State characteristic.
 
enum  nrf_ble_escs_lock_byte_t {
  NRF_BLE_ESCS_LOCK_BYTE_LOCK = (0x00),
  NRF_BLE_ESCS_LOCK_BYTE_DISABLE_AUTO_RELOCK = (0x02)
}
 Write bytes of the Lock State characteristic.
 

Functions

ret_code_t nrf_ble_escs_init (nrf_ble_escs_t *p_escs, const nrf_ble_escs_init_t *p_ecs_init)
 Function for initializing the Eddystone Configuration Service. More...
 
ret_code_t nrf_ble_escs_on_ble_evt (nrf_ble_escs_t *p_escs, ble_evt_t const *p_ble_evt)
 Function for handling the Eddystone Configuration Service's BLE events. More...
 

Detailed Description

Eddystone Configuration Service module.

Macro Definition Documentation

#define ESCS_BASE_UUID
Value:
{{0x95, 0xE2, 0xED, 0xEB, 0x1B, 0xA0, 0x39, 0x8A, 0xDF, 0x4B, 0xD3, 0x8E, 0x00, 0x00, 0xC8, \
0xA3}}

Function Documentation

ret_code_t nrf_ble_escs_init ( nrf_ble_escs_t p_escs,
const nrf_ble_escs_init_t p_ecs_init 
)

Function for initializing the Eddystone Configuration Service.

Parameters
[out]p_escsEddystone Configuration Service structure. This structure must be supplied by the application. It is initialized by this function and will later be used to identify this particular service instance.
[in]p_ecs_initInformation needed to initialize the service.
Return values
NRF_SUCCESSIf the service was successfully initialized. Otherwise, an error code is returned.
NRF_ERROR_NULLIf either of the pointers p_escs or p_ecs_init is NULL.
ret_code_t nrf_ble_escs_on_ble_evt ( nrf_ble_escs_t p_escs,
ble_evt_t const *  p_ble_evt 
)

Function for handling the Eddystone Configuration Service's BLE events.

The Eddystone Configuration Service expects the application to call this function each time an event is received from the SoftDevice. This function processes the event if it is relevant and calls the Eddystone Configuration Service event handler of the application if necessary.

Parameters
[in]p_escsEddystone Configuration Service structure.
[in]p_ble_evtEvent received from the SoftDevice.
Return values
NRF_ERROR_NULLIf any of the arguments given are NULL.
NRF_SUCCESSotherwise.

Documentation feedback | Developer Zone | Subscribe | Updated