gap_set_advertising_param(&adv_param);
- uint8_t name[ADV_NAME_BT1_LEN] = ADV_NAME_BT1;
+ //uint8_t name[ADV_NAME_BT1_LEN] = ADV_NAME_BT1;
- scan_rsp_data[0] = ADV_NAME_BT1_LEN + 1;
+ scan_rsp_data[0] = strlen(user_data.ble_name) + 1;
scan_rsp_data[1] = GAP_ADVTYPE_LOCAL_NAME_COMPLETE;
- memcpy(&scan_rsp_data[2], name, ADV_NAME_BT1_LEN);
+ memcpy(&scan_rsp_data[2], user_data.ble_name, strlen(user_data.ble_name));
// Set advertising data & scan response data
//co_printf("gap_bond_manager_get_info 3 !!!!!!!!\n");
gap_set_advertising_data(adv_data, (bond_info.bond_flag == true) ? (sizeof(adv_data) - 7) : sizeof(adv_data));
//co_printf("gap_bond_manager_get_info 4 !!!!!!!!\n");
- gap_set_advertising_rsp_data(scan_rsp_data, ADV_NAME_BT1_LEN + 2);
+ gap_set_advertising_rsp_data(scan_rsp_data, strlen(user_data.ble_name) + 2);
//co_printf("%s\r\n", (bond_info.bond_flag == true) ? "Have bond info" : "Nothing bond info");
}
void simple_peripheral_init(void)
{
// set local device name
- uint8_t local_name[ADV_NAME_BT1_LEN] = ADV_NAME_BT1;
- gap_set_dev_name(local_name, sizeof(local_name));
+ // uint8_t local_name[ADV_NAME_BT1_LEN] = ADV_NAME_BT1;
+ // gap_set_dev_name(local_name, sizeof(local_name));
+ gap_set_dev_name((unsigned char*)user_data.ble_name, strlen(user_data.ble_name));
gap_set_dev_appearance(GAP_APPEARE_HID_MOUSE);
os_timer_init(&update_param_timer, param_timer_func, NULL);
strcpy(user_data.official_url,USER_URL);
memset(user_data.brand,0,sizeof(user_data.brand));
strcpy((char *)user_data.brand,Brand);
+ strcpy((char *)user_data.ble_name,ADV_NAME_BT1);
+
user_data_storage_do(true);
}
+ if(strlen(user_data.ble_name)>sizeof(user_data.ble_name))
+ strcpy((char *)user_data.ble_name,ADV_NAME_BT1);
//user_data.url_switch = 1;//客户强行开
// if (user_data.mouse_mode == WORK_2_4G_MODE)
// {
co_printf("set_mouse_mode:%d\r\n",user_data.mouse_mode);
ret = 1;
}
+ str_tmp = strstr(cmd_str_tmp,"\"set_ble_name\":\"");
+ if(str_tmp)
+ {
+
+ str_tmp += strlen("\"set_ble_name\":\"");
+ num_buf_len = find_c(str_tmp,'\"');
+ if(num_buf_len>=sizeof(user_data.ble_name)-1)
+ num_buf_len = sizeof(user_data.ble_name)-1;
+ memcpy(user_data.ble_name,str_tmp,num_buf_len);
+ user_data.ble_name[num_buf_len]=0;
+ send_buf_len = snprintf(send_buf,SEND_BUF_MAX_LEN,"{\"set_config\":\"1\"}");
+ hid_cmd_send((unsigned char*)send_buf,send_buf_len);
+ user_data_storage_do(true);
+ co_printf("ble_name:%s\r\n",user_data.ble_name);
+ ret = 1;
+ }
}else
{