Nordic stack and drivers for the mbed BLE API

Dependents:   idd_hw5_bleFanProto

Fork of nRF51822 by Nordic Semiconductor

Embed: (wiki syntax)

« Back to documentation index

Battery Service

Battery Service module. More...

Data Structures

struct  ble_bas_evt_t
 Battery Service event. More...
struct  ble_bas_init_t
 Battery Service init structure. More...
struct  ble_bas_s
 Battery Service structure. More...

Typedefs

typedef struct ble_bas_s ble_bas_t
 Battery Service structure.
typedef void(* ble_bas_evt_handler_t )(ble_bas_t *p_bas, ble_bas_evt_t *p_evt)
 Battery Service event handler type.

Enumerations

enum  ble_bas_evt_type_t { BLE_BAS_EVT_NOTIFICATION_ENABLED, BLE_BAS_EVT_NOTIFICATION_DISABLED }
 

Battery Service event type.

More...

Functions

uint32_t ble_bas_init (ble_bas_t *p_bas, const ble_bas_init_t *p_bas_init)
 Function for initializing the Battery Service.
void ble_bas_on_ble_evt (ble_bas_t *p_bas, ble_evt_t *p_ble_evt)
 Function for handling the Application's BLE Stack events.
uint32_t ble_bas_battery_level_update (ble_bas_t *p_bas, uint8_t battery_level)
 Function for updating the battery level.

Detailed Description

Battery Service module.

This module implements the Battery Service with the Battery Level characteristic. During initialization it adds the Battery Service and Battery Level characteristic to the BLE stack database. Optionally it can also add a Report Reference descriptor to the Battery Level characteristic (used when including the Battery Service in the HID service).

If specified, the module will support notification of the Battery Level characteristic through the ble_bas_battery_level_update() function. If an event handler is supplied by the application, the Battery Service will generate Battery Service events to the application.

Note:
The application must propagate BLE stack events to the Battery Service module by calling ble_bas_on_ble_evt() from the from the ble_stack_handler callback.
Attention! To maintain compliance with Nordic Semiconductor ASA Bluetooth profile qualification listings, this section of source code must not be modified.

Typedef Documentation

typedef void(* ble_bas_evt_handler_t)(ble_bas_t *p_bas, ble_bas_evt_t *p_evt)

Battery Service event handler type.

Definition at line 64 of file ble_bas.h.

typedef struct ble_bas_s ble_bas_t

Battery Service structure.

This contains various status information for the service.

Definition at line 61 of file ble_bas.h.


Enumeration Type Documentation

Battery Service event type.

Enumerator:
BLE_BAS_EVT_NOTIFICATION_ENABLED 

Battery value notification enabled event.

BLE_BAS_EVT_NOTIFICATION_DISABLED 

Battery value notification disabled event.

Definition at line 48 of file ble_bas.h.


Function Documentation

uint32_t ble_bas_battery_level_update ( ble_bas_t p_bas,
uint8_t  battery_level 
)

Function for updating the battery level.

The application calls this function after having performed a battery measurement. If notification has been enabled, the battery level characteristic is sent to the client.

Note:
For the requirements in the BAS specification to be fulfilled, this function must be called upon reconnection if the battery level has changed while the service has been disconnected from a bonded client.
Parameters:
[in]p_basBattery Service structure.
[in]battery_levelNew battery measurement value (in percent of full capacity).
Returns:
NRF_SUCCESS on success, otherwise an error code.
uint32_t ble_bas_init ( ble_bas_t p_bas,
const ble_bas_init_t p_bas_init 
)

Function for initializing the Battery Service.

Parameters:
[out]p_basBattery Service structure. This structure will have to be supplied by the application. It will be initialized by this function, and will later be used to identify this particular service instance.
[in]p_bas_initInformation needed to initialize the service.
Returns:
NRF_SUCCESS on successful initialization of service, otherwise an error code.
void ble_bas_on_ble_evt ( ble_bas_t p_bas,
ble_evt_t p_ble_evt 
)

Function for handling the Application's BLE Stack events.

Handles all events from the BLE stack of interest to the Battery Service.

Note:
For the requirements in the BAS specification to be fulfilled, ble_bas_battery_level_update() must be called upon reconnection if the battery level has changed while the service has been disconnected from a bonded client.
Parameters:
[in]p_basBattery Service structure.
[in]p_ble_evtEvent received from the BLE stack.