70 lines
1.7 KiB
C
70 lines
1.7 KiB
C
#include <stdbool.h>
|
|
#include <stdint.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
#include "app_config.h"
|
|
#include "apply_old_config.h"
|
|
#include "sdk_config.h"
|
|
|
|
#include "nrf_log.h"
|
|
#include "nrf_log_ctrl.h"
|
|
#include "nrf_log_default_backends.h"
|
|
|
|
#include "nrf_delay.h"
|
|
#include "nrf_gpio.h"
|
|
|
|
#include "nrf_sdh.h"
|
|
#include "nrf_sdh_ble.h"
|
|
#include "nrf_sdh_freertos.h"
|
|
|
|
#include "ble_conn_state.h"
|
|
|
|
#include "ble_dfu.h"
|
|
#include "ble_dis.h"
|
|
#include "nrf_ble_gatt.h"
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#define MANUFACTURER_NAME "MEMCHIP" /**< Manufacturer. Will be passed to Device Information Service. */
|
|
#define HW_REV STRINGIFY(MAJOR_PRODUCT_NUMBER) "." STRINGIFY(MINOR_PRODUCT_NUMBER) "." STRINGIFY(MAJOR_VERSION_NUMBER) "." STRINGIFY(MINOR_VERSION_NUMBER)
|
|
#define FW_REV "0.1.0"
|
|
#define SER_NUM "0000-00-00-00001"
|
|
#define MODULE_NAME ELITE_DEVICE_NAME
|
|
|
|
static void le_dis_init(void)
|
|
{
|
|
ble_dis_init_t dis_init;
|
|
ble_dis_sys_id_t sys_id;
|
|
|
|
memset(&dis_init, 0, sizeof(dis_init));
|
|
memset(&sys_id, 0, sizeof(dis_init));
|
|
|
|
ble_srv_ascii_to_utf8(&dis_init.manufact_name_str, MANUFACTURER_NAME);
|
|
ble_srv_ascii_to_utf8(&dis_init.fw_rev_str, FW_REV);
|
|
ble_srv_ascii_to_utf8(&dis_init.hw_rev_str, HW_REV);
|
|
ble_srv_ascii_to_utf8(&dis_init.model_num_str, MODULE_NAME);
|
|
ble_srv_ascii_to_utf8(&dis_init.serial_num_str, SER_NUM);
|
|
dis_init.p_sys_id = &sys_id;
|
|
dis_init.dis_char_rd_sec = SEC_OPEN;
|
|
|
|
ret_code_t err_code = ble_dis_init(&dis_init);
|
|
APP_ERROR_CHECK(err_code);
|
|
}
|
|
|
|
void le_srv_init(void)
|
|
{
|
|
le_dis_init();
|
|
|
|
extern void le_dfu_init(void);
|
|
le_dfu_init();
|
|
|
|
extern void le_elite_srv_init(void);
|
|
le_elite_srv_init(); // customer service
|
|
}
|