SmartSnippets DA1459x SDK
Files | Data Structures | Macros | Enumerations | Functions | Variables
Device Information Service

Device Information Service Client. More...

Files

file  dis_client.h
 Device Information Service Client header file.
 

Data Structures

struct  dis_client_callbacks_t
 

Macros

#define __PACKED_STRUCT   struct __attribute__((packed, aligned(1)))
 

Enumerations

enum  dis_client_cap_t {
  DIS_CLIENT_CAP_MANUFACTURER_NAME = 0x0001, DIS_CLIENT_CAP_MODEL_NUMBER = 0x0002, DIS_CLIENT_CAP_SERIAL_NUMBER = 0x0004, DIS_CLIENT_CAP_HARDWARE_REVISION = 0x0008,
  DIS_CLIENT_CAP_FIRMWARE_REVISION = 0x0010, DIS_CLIENT_CAP_SOFTWARE_REVISION = 0x0020, DIS_CLIENT_CAP_SYSTEM_ID = 0x0040, DIS_CLIENT_CAP_REG_CERT = 0x0080,
  DIS_CLIENT_CAP_PNP_ID = 0x0100
}
 

Functions

ble_client_tdis_client_init (const dis_client_callbacks_t *cb, const ble_evt_gattc_browse_svc_t *evt)
 Register DIS Client instance. More...
 
dis_client_cap_t dis_client_get_capabilities (ble_client_t *dis_client)
 Get DIS capabilities. More...
 
bool dis_client_read (ble_client_t *dis_client, dis_client_cap_t capability)
 Read DIS capability (supported characteristic) More...
 
ble_client_tdis_client_init_from_data (uint16_t conn_idx, const dis_client_callbacks_t *cb, const void *data, size_t length)
 Initialize and register DIS Client instance from data buffer. More...
 

Variables

typedef __PACKED_STRUCT
 

Detailed Description

Device Information Service Client.

Macro Definition Documentation

◆ __PACKED_STRUCT

typedef __PACKED_STRUCT   struct __attribute__((packed, aligned(1)))

Device Information Service PNP ID

Enumeration Type Documentation

◆ dis_client_cap_t

Capabilities (supported characteristics)

Enumerator
DIS_CLIENT_CAP_MANUFACTURER_NAME 

Manufacturer Name String Characteristic

DIS_CLIENT_CAP_MODEL_NUMBER 

Model Number String Characteristic

DIS_CLIENT_CAP_SERIAL_NUMBER 

Serial Number String Characteristic

DIS_CLIENT_CAP_HARDWARE_REVISION 

Hardware Revision String Characteristic

DIS_CLIENT_CAP_FIRMWARE_REVISION 

Firmware Revision String Characteristic

DIS_CLIENT_CAP_SOFTWARE_REVISION 

Software Revision String Characteristic

DIS_CLIENT_CAP_SYSTEM_ID 

System Id Characteristic

DIS_CLIENT_CAP_REG_CERT 

IEEE 11073-20601 Regulatory Certification Data List Characteristic

DIS_CLIENT_CAP_PNP_ID 

PNP ID Characteristic

Function Documentation

◆ dis_client_get_capabilities()

dis_client_cap_t dis_client_get_capabilities ( ble_client_t dis_client)

Get DIS capabilities.

Functions returns bit mask with capabilities (supported characteristics).

Parameters
[in]dis_clientclient instance
Returns
Bit mask with capabilities

◆ dis_client_init()

ble_client_t* dis_client_init ( const dis_client_callbacks_t cb,
const ble_evt_gattc_browse_svc_t evt 
)

Register DIS Client instance.

Function registers DIS Client

Parameters
[in]cbapplication callbacks
[in]evtbrowse svc event with Device Information Service details
Returns
Client instance

◆ dis_client_init_from_data()

ble_client_t* dis_client_init_from_data ( uint16_t  conn_idx,
const dis_client_callbacks_t cb,
const void *  data,
size_t  length 
)

Initialize and register DIS Client instance from data buffer.

Function sematics is very similar to dis_client_init() but internal data is initialized by buffered context and the client is automatically added to active clients collection.

Parameters
[in]conn_idxconnection index
[in]cbapplication callbacks
[in]databuffered context data
[in]lengthdata buffer's length
Returns
client instance when initialized properly, NULL otherwise

◆ dis_client_read()

bool dis_client_read ( ble_client_t dis_client,
dis_client_cap_t  capability 
)

Read DIS capability (supported characteristic)

Function reads capability (supported characteristic).

Parameters
[in]dis_clientclient instance
[in]capabilitycapability (supported characteristic type)
Returns
True if read request has been sent successfully, false otherwise

Variable Documentation

◆ __PACKED_STRUCT

typedef __PACKED_STRUCT
Initial value:
{
uint8_t manufacturer[5]

Device Information Service System ID

Device Information Service PNP ID