Telink white logo with Telink word in small size

您现在使用 IE

我们建议您改用下列浏览器,以获得更好的体验。

点击下载:

Chrome

Firefox

Safari

Edge

Telink white logo with Telink word
Rotate your device top arrow

旋转设备

Rotate your device bottom arrow
Preloader image
正在加载
Telink white logo with Telink word in small size

泰凌微电子 BLE 单连接 SDK(四):B85m_master_kma_dongle 例程使用演示

Telink Staff

September 13, 2022

Applications

Bluetooth phone screen

在泰凌Wiki网站上提供了多种应用场景的软件SDK,供客户选择使用。本系列的几篇文章主要讲述”Bluetooth LE Single Connection”,此SDK是单连接应用的SDK,所谓的单连接就是蓝牙芯片做从机跟主机(一般是手机)建立点对点连接,或者蓝牙芯片做主机跟其他的从机建立点对点连接的应用场景。

本篇文章详细讲述此SDK中的B85m_master_kma_dongle例程的使用及注意事项,以便客户尽快熟悉起来,加快项目开发进度。

一、master_kma_dongle例程说明

适用825x芯片和827x芯片,所以编译选项中又分为了825x_master_kma_dongle和827x_master_kma_dongle(下文统称master_dongle)。

master_dongle例程是单连接SDK中唯一的做master主机的demo例程,kma是keyboard mouse audio的缩写,并基于dongle板使用,这就是例程名字的由来。作为主机可以和ble_sample、ble_remote和module等从机例程建立连接并通信。该例程主要功能:BLE数据传输,给从机进行OTA升级等。

*注意1master_dongle例程默认没有低功耗功能,用户可以根据handbook低功耗章节的说明自行实现。或者使用多连接sdk中的带低功耗的主机例程。

*注意2由于蓝牙芯片的RAM限制,master无法提供完整的service discovery功能。目前例程中只提供了简单的SDP服务,即根据提供的特定UUID来做服务发现。

二、开发板选择

以TLSR8258 master dongle例程为例,是基于TLSR8258 Dongle板(型号C1T139A3_V2.0A)做开发,如下图所示:

三、配合ble_remote例程的使用

在上一篇“b85m_ble_remote例程使用”提到了remote和master dongle一起使用来传输BLE音频,本文就详细介绍下。

  1. 编译ble_remote例程并将固件下载到RCU遥控器板并上电。
  2. 编译master dongle例程并将固件下载到TLSR8258 Dongle板,以USB接口直接插到电脑上,默认LED灯都不亮。
  3. 将RCU遥控器靠近master dongle板(必须保证靠近,主机第一次配对连接,会选择较强广播信号强度的从机),再按dongle板上的SW2按键,dongle会自动连接RCU遥控器并配对。蓝牙连接成功后,dongle板上红色LED灯常亮。当处于连接状态时,如果按dongle板上的SW1按键,断开蓝牙连接并解除配对,并且dongle板上白色LED灯常亮。
  4. 处于连接状态时,在电脑上打开text文本,按RCU上的“1~9”按键,即可输入数字“1~9”。
  5. 处于连接状态时,首先在电脑端打开上位机软件audacity,并点击开始录音。然后长按RCU上的“语音”按键2s,此时RCU上红色LED亮,表示正处于BLE音频传输状态,此时人对着RCU遥控器说话,RCU采集到人的声音并使用BLE传输到dongle端,dongle通过USB给到audacity软件并录音。最后短按RCU上的“语音”按键,结束语音功能,RCU上红色LED灯灭。Audacity软件的操作如下图所示:

四、OTA升级

此处OTA升级,是master dongle作为主机给从机进行OTA升级。而单连接SDK中的ble_sample、ble_remote和module例程都是支持OTA功能的从机demo。本文选择ble_sample例程,讲述OTA升级的方法。准备两个TLSR8258 Dongle板子,一个用作待升级的设备称之为DUT,另一个用于OTA升级的主机仍称之为master dongle。

1、在DUT上为了识别OTA升级是否成功,将ble_sample例程的广播和扫描回复数据中的名称做下修改,在升级前后分别用手机扫描广播名称,即可验证OTA升级与否。比如编译后生成的文件分别命名为:

8258_ble_sample_VHID.bin
8258_ble_sample_XHID.bin
并将8258_ble_sample_VHID.bin固件下载到DUT中,此时使用手机扫描广播,可以看到VHID名称的蓝牙设备。

2、使用BDT工具下载3个固件到master dongle板中,具体方法如下图所示:

  • 在setting选项中设置 Download Addr为0x0,下载 8258_master_kma_dongle.bin文件;
  • 在setting选项中设置 Download Addr为0x20000,下载8258_ble_sample_VHID.bin.bin文件;
  • 在setting选项中设置 Download Addr为0x40000,下载8258_ble_sample_XHID.bin.bin文件;

说明:master_kma_dongle.bin固件是作为主程序使用,根据不同的按键来选择固件进行升级。之所以下载两个OTA固件是方便用户在8258_ble_sample_VHID.bin8258_ble_sample_XHID.bin之间来回OTA升级测试。

3、DUT和master_dongle都上电。master_dongle板子上电后默认状态,4个LED灯都不亮。在master dongle板上的操作如下:

初始状态:

  • 按下SW2按键(必须保证maste dongle与DUT板子紧挨着),则开始配对,配对成功后,红色灯亮。

配对成功的状态下:

  • 配对成功的状态下,按下SW1按键,会解除配对并断开连接,白色灯亮。
  • 配对成功的状态下,2S的时间内,连续按5次SW2按键,蓝色和绿色LED闪烁3次,进入OTA状态。

OTA状态下:

  • 按SW1按键,开始OTA,将0x40000位置的firmware传输给DUT,此时绿色灯常亮。OTA成功后,绿色灯闪烁5次。
  • 按SW2按键,开始OTA,将0x20000位置的firmware传输给DUT,此时蓝灯常亮。OTA成功后,蓝色灯闪烁5次。

4、待OTA升级成功后,使用手机扫描广播,即可看到XHID名称的广播。

*注意1OTA升级成功后,因配对的原因,mater_dongle板子会自动与DUT重连。建议将master_dongle板子断电,然后使用手机app扫描,根据广播名称查看升级后的结果。

*注意2同样可以使用手机app对从机进行OTA升级。Telink提供了基于IOS和Android的app demo及源码,用于OTA升级的演示,客户可基于此app demo开发自己的手机app。