pinebuds/services/ble_app/app_dis/app_dis.h
2022-08-15 17:20:27 +08:00

135 lines
4.2 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/***************************************************************************
*
* Copyright 2015-2019 BES.
* All rights reserved. All unpublished rights reserved.
*
* No part of this work may be used or reproduced in any form or by any
* means, or stored in a database or retrieval system, without prior written
* permission of BES.
*
* Use of this work is governed by a license granted by BES.
* This work contains confidential and proprietary information of
* BES. which is protected by copyright, trade secret,
* trademark and other intellectual property rights.
*
****************************************************************************/
#ifndef APP_DIS_H_
#define APP_DIS_H_
/**
****************************************************************************************
* @addtogroup APP
*
* @brief Device Information Application Module Entry point.
*
* @{
****************************************************************************************
*/
/*
* INCLUDE FILES
****************************************************************************************
*/
#include "rwip_config.h" // SW Configuration
#if (BLE_APP_DIS)
#include <stdint.h>
/*
* DEFINES
****************************************************************************************
*/
/// Manufacturer Name Value
#define APP_DIS_MANUFACTURER_NAME ("RivieraWaves SAS")
#define APP_DIS_MANUFACTURER_NAME_LEN (16)
/// Model Number String Value
#define APP_DIS_MODEL_NB_STR ("RW-BLE-1.0")
#define APP_DIS_MODEL_NB_STR_LEN (10)
/// Serial Number
#define APP_DIS_SERIAL_NB_STR ("1.0.0.0-LE")
#define APP_DIS_SERIAL_NB_STR_LEN (10)
/// Firmware Revision
#define APP_DIS_FIRM_REV_STR ("6.1.2")
#define APP_DIS_FIRM_REV_STR_LEN (5)
/// System ID Value - LSB -> MSB
#define APP_DIS_SYSTEM_ID ("\x12\x34\x56\xFF\xFE\x9A\xBC\xDE")
#define APP_DIS_SYSTEM_ID_LEN (8)
/// Hardware Revision String
#define APP_DIS_HARD_REV_STR ("1.0.0")
#define APP_DIS_HARD_REV_STR_LEN (5)
/// Software Revision String
#define APP_DIS_SW_REV_STR ("6.3.0")
#define APP_DIS_SW_REV_STR_LEN (5)
/// IEEE
#define APP_DIS_IEEE ("\xFF\xEE\xDD\xCC\xBB\xAA")
#define APP_DIS_IEEE_LEN (6)
/**
* PNP ID Value - LSB -> MSB
* Vendor ID Source : 0x02 (USB Implementers Forum assigned Vendor ID value)
* Vendor ID : 0x045E (Microsoft Corp)
* Product ID : 0x0040
* Product Version : 0x0300
*/
#define APP_DIS_PNP_ID ("\x02\x5E\x04\x40\x00\x00\x03")
#define APP_DIS_PNP_ID_LEN (7)
#if (BLE_APP_HID)
#define APP_DIS_FEATURES (DIS_MANUFACTURER_NAME_CHAR_SUP |\
DIS_MODEL_NB_STR_CHAR_SUP |\
DIS_SYSTEM_ID_CHAR_SUP |\
DIS_PNP_ID_CHAR_SUP)
#else
#define APP_DIS_FEATURES (DIS_ALL_FEAT_SUP)
#endif //(BLE_APP_HID)
/*
* GLOBAL VARIABLES DECLARATION
****************************************************************************************
*/
/// Table of message handlers
extern const struct ke_state_handler app_dis_table_handler;
/*
* GLOBAL FUNCTIONS DECLARATION
****************************************************************************************
*/
/**
****************************************************************************************
* @brief Initialize Device Information Service Application
****************************************************************************************
*/
void app_dis_init(void);
/**
****************************************************************************************
* @brief Add a Device Information Service instance in the DB
****************************************************************************************
*/
void app_dis_add_dis(void);
/**
****************************************************************************************
* @brief Enable the Device Information Service
****************************************************************************************
*/
void app_dis_enable_prf(uint16_t conhdl);
#endif //BLE_APP_DIS
/// @} APP
#endif //APP_DIS_H_