你好,对话框,
我正在开发Dialog 14580 Expert工具包,必须为我们的产品设计一个通过认证测试的测试代码。
目前的任务是
1:最大发射功率模式下使用BLE芯片。
我已经调查了这个,并已经知道只有两个tx的功率级别(I。e近场模式(运行在-20 dBm)和普通模式(运行在0 dBm))。我正在正常模式下运行设备。问:有没有其他方法把BLE芯片在最大tx功率?关于能量等级我说的对吗,还是还有其他能量等级?
2:在运行时选择广告频道。
我目前正在使用UART作为选择通道的输入。在接收到UART命令时,我停止设备广告,将“user_adv_conf.channel_map”变量更改为adv_CHNL_37_EN、adv_CHNL_38_EN或adv_CHNL_39_EN,然后再次开始广告。问题:我这样做对吗?如何检查设备当前使用的通道?
3:实现最大数据传输
我见过UM-B-30,知道如何在两个设备之间实现最大的数据速率。但有没有办法,我可以最大限度地提高数据流速率的单一(非连接)设备(可能在广播模式,通过最小化广告间隔?),然后测量/显示数据速率?
等待你的回复。
谢谢
胡在发
设备:
嗨huzaifa sajid,
1:如数据表所示,580具有正常情况下的0dBm发射输出功率或-20dBm发射输出功率(近场模式)。
2:在580的广告中,您必须停止当前的广告,然后使用新参数发出新的广告命令,在设备广告时,您将无法更改参数,因此,是的,您的操作是正确的。您发送的命令中包含您的设备正在播放广告的频道,您所说的“如何检查设备正在使用的频道”是什么意思,580没有反馈来验证设备确实在特定频道播放广告。为了验证您选择的播发设置,您可以执行的操作是打印出ble_advchmap_get()的结果。这将返回指示设备播发0x1(37)、0x2(38)、0x4(39)和0x7(所有频道)的频道。
3:对于未连接的设备,实现最大吞吐量并不是我们已经测试过或尝试过的事情,因为我看不出这样做有任何意义,我的意思是,如果你正在广播数据,你怎么知道所有数据都会在另一端正确传输,而且广告字符串上只有31个字节可用(其中3个是间接费用)这意味着,一旦所有设备都有您想要传输的数据,您就必须继续更改该字符串,您如何知道所有设备都收到了该数据,以便您可以更新您的字符串?尽管这样做并不复杂,因为您唯一能做的就是使用非常小的广告ng间隔,并且您可以使用的最小连接间隔受到BLE规范的限制,即20ms,因此,一个初步想法是将具有相同内容的几个数据包播发5次,以确保所有设备都收到您的消息,然后更改播发字符串,但这同样是不可靠的。
谢谢你的对话
嗨,MT_dialog,
谢谢分享你的知识。
至于第三点,我们的重点不是通过这种方法传输实际数据。正如我上面提到的,这只是为了通过某种认证;他们唯一的要求是我以最大的速度和最大的tx功率传输(数据可以是冗余的)。那么,在这种情况下,最小的adv区间是多少?另外,从哪里可以获得数据速率监视器应用程序的实际代码?
谢谢胡在发
嗨huzaifa sajid,
我明白了,如果我正确理解了你的目标是什么,我想你需要的不是为了通过认证而创建自定义fw,有为此类操作开发的工具,你检查过UM-B-008:用户手册-生产测试工具吗,请检查一下,我想这是你正在寻找的。关于您的问题,最小和最大广告间隔由BLE规范定义,允许值由广告包的类型定义,因此请检查第7.8.5段的规范4.0[Vol 2]LE设置广告参数命令。关于数据速率监视器应用程序,这是一个过时的应用程序,仅在SDK3上未包含在SDK5的新版本中。在该SDK中,您将能够找到中央和外围的fw,如果您指的是为智能代码段实现的代码,则此源代码不可用。
谢谢你的对话
嗨,MT_dialog,
我看过UM-B-008文档,它正是我想要的。但是,在我的脑海里仍然有一些模棱两可的地方。用户手册给出了命令的说明及其作用。但是有没有办法知道在最底层到底发生了什么。例如,CLI以什么格式将命令发送到对话框工具包?既然我们必须在我们的仪器上运行这个测试,而不是在对话框套件上,我如何才能将这些命令转换为UART命令?有些命令提到数据的连续传输。在这种情况下,传输速率是多少(以kbps为单位)?
谢谢,Huzaifa。
嗨huzaifa sajid,
如第3段中的文件所示,通过UART端口发送的命令采用BLE规范定义的HCI格式,其中一些命令是规范定义的默认命令(在每个命令上)描述第行指示该命令是规范定义的命令还是自定义HCI命令)。我不明白“因为我们必须在仪器上运行此测试,而不是在对话框套件上运行此测试”,实现通过UART接收这些命令的代码是prod_test_xxx工具代码的一部分,因此您的设备应使用此类fw闪烁,以便能够与测试仪通信(请检查AN-B-007蓝牙直接测试模式).关于传输时的数据速率,LE发送器测试命令是关于测试您的BLE RF,我看不出有任何理由让人知道TX程序的数据速率(在这些测试用例中没有定义的传输数据)有效载荷的长度是可配置的,我不知道我们是否有这种信息,因为我不相信它会有任何用处。有没有理由想知道这一点?
谢谢你的对话
嗨,MT_dialog,
知道数据传输速率的唯一原因是,我们可以知道dialog 14580的最大传输速率。至于UART命令,我通过使用RS232 com端口嗅探通信来确定连接管理器发送和接收的命令。似乎每次从外部控制器向对话框发送消息时,都会发送“0x01”头,而从对话框向外部控制器发送“0x04”头。命令的其余部分与“连接管理器”窗口中显示的相同。
我看到了AN-B-007蓝牙直接测试模式v1.1.pdf,它告诉了我们可以测量BLE传输的实际信道的方法(使用不同的工具,如R&S CBT, Anritsu MT8852B等)。还有其他方法做这个任务吗?(也许在接收模式下使用另一个对话框14580 ?)
使用连接管理器发送命令到对话套件,我注意到,在使用任何未调制Rx/Tx命令或Tx连续测试命令后,套件只响应这些命令,而不响应LE发射器测试命令/测试结束命令/重置命令。这是众所周知的问题还是我做错了什么?我尝试过使用启动测试模式按钮,但它也没有得到任何响应。在这种状态下,只有再次下载.hex文件才能修复问题;但是如果这些命令(未调制/连续的tx命令)被发送,问题再次发生。
编辑:我调试了这个问题,当命令按上述顺序给出时,似乎出现了硬故障。
谢谢
胡在发
嗨huzaifa sajid,
期间你要实现的数据trasmition直接测试模式并不代表实际的吞吐量580祝福设备,则在此期间只使用设备的物理层传输或接收的序列测试包没有任何上层协议。为了进行射频PHY测量和测试,上述设备需要通过两线HCI UART充当蓝牙测试器,这是一种标准方法,你需要这些测试器来验证BLE系统的射频性能。
关于你不得到一个回复当你使用LE_Transmitter测试命令,为了直接测试工作的连接管理器你要下载prod_test弗兰克-威廉姆斯,点击启动测试模式,以便适当的界面出现在连接管理器,也确保选择适当的COM端口,除此之外,连接管理器界面应该对所有的测试命令都有效(确保你的设备没有处于睡眠模式,以防你正在试验其他选项卡sleep - XTAL trim)。也有一些问题报告当使用SDK5 prod_test(其中大部分是BLE相关测试人员),所以您应该检查使用的prod_test SDK3,除此之外我不知道有任何其他问题,我可以正确发送的命令从连接管理器/ UART的开发工具。您还可以尝试通过位于实用程序文件夹中的命令行工具发送命令。
谢谢你的对话