TI中文支持网
TI专业的中文技术问题搜集分享网站

请问下Ble 5协议中的发送Coded PHY广播时,从HCI命令如果配置使用S=2还是S=8呢?

请教一个Ble 5协议的问题呢,在发送扩展广播时,如果采用Coded PHY,Controller是根据什么来决定使用S=2还是S=8编码的呢?
在HCI命令里只看到可以设置广播时采用Coded PHY方式,但没有具体配置S=2还是S=8的地方。
难道是由controller自己决定采用s=2或s=8吗,不需要由Host设置吗,有点不明白呢?
谢谢先
Viki Shi:

Every packet sent on LE Coded PHY contains a coding indicator (CI), which indicates the coding of the packet. Thus, when a packet is being received on the LE Coded PHY, the receiver uses the coding indicator to determine the coding of the packet.

Alvin Chen:

你HOST设置的:

#define GAPADV_PARAMS_AE_LONG_RANGE_CONN {\.eventProps = GAP_ADV_PROP_CONNECTABLE,\.primIntMin = 160,\.primIntMax = 160,\.primChanMap = GAP_ADV_CHAN_ALL,\.peerAddrType = PEER_ADDRTYPE_PUBLIC_OR_PUBLIC_ID,\.peerAddr = { 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa },\.filterPolicy = GAP_ADV_WL_POLICY_ANY_REQ,\.txPower = GAP_ADV_TX_POWER_NO_PREFERENCE,\.primPhy = GAP_ADV_PRIM_PHY_CODED_S2,\.secPhy = GAP_ADV_SEC_PHY_CODED_S2,\.sid = 0\
}
这个广播参数你可以设置为S8或者S2。

user1152997:

回复 Viki Shi:

也就是说接收方不需要设置,通过CI即可知道是s=2还是s=8。 非常感谢。

user1152997:

回复 Viki Shi:

但是发送方在发送广播的时候,从协议的角度,是根据什么信息决定它采用s=2编码还是2=8编码呢?

user1152997:

回复 Alvin Chen:

非常感谢,再请教下,“.primPhy = GAP_ADV_PRIM_PHY_CODED_S2” 和 “.secPhy = GAP_ADV_SEC_PHY_CODED_S2” 在协议中的Host和Controller的HCI接口中有对应的命令吗?我查了下,没查到有相关的命令呢。
如果没有的话,那如果是Host和Controller分离的设备,岂不是不能通过标准HCI命令设置Controller发广播时的编码方式是2还是8呢?怎么理解呢?

Alvin Chen:

回复 user1152997:

“再请教下,“.primPhy = GAP_ADV_PRIM_PHY_CODED_S2” 和 “.secPhy = GAP_ADV_SEC_PHY_CODED_S2” 在协议中的Host和Controller的HCI接口中有对应的命令吗?我查了下,没查到有相关的命令呢。”

你是说协议中没有提供HCI接口? 当你烧录host test app那个demo可以去用HCI命令去控制。至于HCI命令你需要在HCI_tester那个上位机软件里面查一下。

user5992444:

回复 user1152997:

HCI_LE_SetPhyCmd(connList[0].connHandle,LL_PHY_USE_PHY_PARAM,HCI_PHY_2_MBPS,HCI_PHY_2_MBPS, LL_PHY_OPT_NONE);
HCI_LE_SetPhyCmd 是这个吗?我新手

Viki Shi:

回复 user5992444:

是的,详解:dev.ti.com/…/phy.html

user4356510:

应该是s=8

赞(0)
未经允许不得转载:TI中文支持网 » 请问下Ble 5协议中的发送Coded PHY广播时,从HCI命令如果配置使用S=2还是S=8呢?
分享到: 更多 (0)