Firefly开源社区

标题: 【转】BLE固件开发--更新连接参数 [打印本页]

作者: 安安    时间: 2015-6-25 11:28
标题: 【转】BLE固件开发--更新连接参数
低功耗蓝牙里重要的三个连接参数:Connection Interval,Slave Latency,Supervision Timeout.这三个参数决定了BLE的功耗。
    更新连接参数的相关api:
  1. // Update cnx parameters
  2.                     if (((struct gap_le_create_conn_req_cmp_evt *)param)->conn_info.con_interval < GAP_PPCP_CONN_INTV_MIN)
  3.                     {
  4.                         // Update connection parameters here
  5.                         struct gap_conn_param_update conn_par;
  6.                         /// Connection interval minimum
  7.                         conn_par.intv_min = GAP_PPCP_CONN_INTV_MIN;
  8.                         /// Connection interval maximum
  9.                         conn_par.intv_max = GAP_PPCP_CONN_INTV_MAX;
  10.                         /// Latency
  11.                         conn_par.latency = GAP_PPCP_SLAVE_LATENCY;
  12.                         /// Supervision timeout, Time = N * 10 msec
  13.                         conn_par.time_out = GAP_PPCP_STO_MULT;
  14.                         app_gap_param_update_req(((struct gap_le_create_conn_req_cmp_evt *)param)->conn_info.conhdl, &conn_par);
  15.                     }
复制代码

    ios app连接时,apple公司有自己的规范,这三个参数的设置必须在其规范内才可生效:
    ● Interval Max * (Slave Latency + 1) ≤ 2 seconds
    ● Interval Min ≥ 20 ms
    ● Interval Min + 20 ms ≤ Interval Max Slave Latency ≤ 4
    ● connSupervisionTimeout ≤ 6 seconds
    ● Interval Max * (Slave Latency + 1) * 3 < connSupervisionTimeout
作者: suoma    时间: 2015-6-25 17:15
谢谢分享学习一下




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1