技术领域
[0001] 本公开涉及蓝牙通信技术领域,尤其是涉及一种提高低功耗蓝牙连接稳定性的方法。
相关背景技术
[0002] 蓝牙按版本来划分可分为经典蓝牙模块,低功耗蓝牙模块,以及蓝牙双模模块。其中,蓝牙低能耗(BLE)技术是低成本、短距离、可互操作的鲁棒性无线技术,工作在免许可的2.4GHz ISM射频频段。它从一开始就设计为超低功耗(ULP)无线技术。它利用许多智能手段最大限度地降低功耗。
[0003] 被蓝牙低能耗技术用来最小化无线开启时间的技巧是仅用3个广播信道搜索其他设备,或向寻求建立连接的设备宣告自身存在。相比之下,标准蓝牙技术使用了32个广播信道。蓝牙低能耗技术使用3个广播信道是某种程度上的妥协:这是在频谱非常拥挤的部分对“开启”时间和鲁棒性的一种折中。并且,蓝牙4.0标准称在空旷环境下的有效传输距离是100米,但是在低功耗和成本的主要约束下,许多低功耗蓝牙设备在实际应用时功率衰减较大,达不到这个距离。这就造成了低功耗蓝牙设备(应用蓝牙低能耗技术的蓝牙设备)连接阶段时在多干扰(与其他低功耗蓝牙设备信号冲突等)、信号较差环境下连接失败,以及低功耗蓝牙设备连接成功之后低功耗蓝牙连接的稳定性较差,当低功耗蓝牙设备之间进行数据交互时,会遇到连接断开的情况。
具体实施方式
[0018] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0019] 在本公开实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0020] 应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0021] 如相关技术中所述的,蓝牙4.0标准称在空旷环境下的有效传输距离是100米,但是在低功耗和成本的主要约束下,许多低功耗蓝牙设备在实际应用时功率衰减较大,达不到这个距离。这就造成了低功耗蓝牙设备(应用蓝牙低能耗技术的蓝牙设备)连接阶段时在多干扰(与其他低功耗蓝牙设备信号冲突等)、信号较差环境下连接失败,以及低功耗蓝牙设备连接成功之后低功耗蓝牙连接的稳定性较差,当低功耗蓝牙设备之间进行数据交互时,会遇到连接断开的情况。
[0022] 为了相关技术中存在的问题,本公开提供了一种提高低功耗蓝牙连接稳定性的方法。
[0023] 需要说明的是,低功耗蓝牙通信过程是建立在连接基础之上的,按角色不同可以分为蓝牙主设备、蓝牙从设备,也叫中央设备和外围设备。以下简称为主机和从机。一次蓝牙通信过程,从机首先在特定的信道上广播并处于被连接态(即从机进行发起广播动作),主机则进入连接态并侦听待从机的广播数据包(即主机进行发起连接动作),当主机接收到从机的广播数据包,主机发送一个连接请求数据包,双方互相发送同步数据包确认连接成功,之后就可以进行数据通信。
[0024] 请参阅图1,图1为根据一示例性实施例示出的一种提高低功耗蓝牙连接稳定性的方法的流程图。
[0025] 如图1所示,所述提高低功耗蓝牙连接稳定性的方法包括:
[0026] 步骤S1:响应于第一设备和第二设备的低功耗蓝牙连接被动断开或第一设备发起蓝牙连接失败执行关闭所述第一设备的第一低功耗蓝牙模块的电源和断开所述第二设备的第二低功耗蓝牙模块的电源;
[0027] 步骤S2:增加延时等待所述第一低功耗蓝牙模块完全放电和等待所述第二低功耗蓝牙模块完全放电;
[0028] 步骤S3:打开所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块的电源,重置所述第一设备和所述第二设备的数据链路层与物理层;
[0029] 步骤S4:初始化配置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块并调整所述第一设备和第二设备进行低功耗蓝牙连接的参数;以及
[0030] 步骤S5:所述第一设备和所述第二设备再次进行低功耗蓝牙连接。
[0031] 下面结合具体的实施例对上述步骤进行详细的描述。
[0032] 需要说明的是,在本示例性实施例中,所述第一设备为低功耗蓝牙连接中的蓝牙主设备,所述第二设备为低功耗蓝牙连接中的蓝牙从设备;所述第一设备中具有第一低功耗蓝牙模块(包括第一设备中集成蓝牙低能耗技术的芯片基本电路集合),所述第二设备中具有第二低功耗蓝牙模块(包括第二设备中集成蓝牙低能耗技术的芯片基本电路集合),所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块用于发射或接收蓝牙信号。具体的,在步骤S1中,所述低功耗蓝牙连接被动断开包括所述低功耗蓝牙连接因环境干扰或因信号衰减而断开;所述第一设备发起蓝牙连接失败包括所述第一设备没有成功接收到所述第二设备发出的蓝牙广播信号或所述第一设备发出的蓝牙连接请求信号没有被所述第二设备成功接收。则响应于所述第一设备和第二设备的低功耗蓝牙连接因环境干扰或因信号衰减断开、所述第一设备没有成功接收到所述第二设备发出的蓝牙广播信号或所述第一设备发出的蓝牙连接请求信号没有被所述第二设备成功接收执行关闭所述第一低功耗蓝牙模块的电源和关闭所述第二低功耗蓝牙模块的电源。具体的,对所述第一蓝牙模块的操作由所述第一设备的应用层负责,对所述第二蓝牙模块的操作由所述第二设备的应用层负责。则所述执行关闭所述第一低功耗蓝牙模块的电源和关闭所述第二低功耗蓝牙模块的电源的过程具体为:所述第一设备的应用层通过软硬件接口向所述第一低功耗蓝牙模块下发关闭电源的指令,则所述第一低功耗蓝牙模块关闭电源;所述第二设备的应用层通过软硬件接口向所述第二低功耗蓝牙模块下发关闭电源的指令,则所述第二低功耗蓝牙模块关闭电源。
[0033] 在步骤S2中,增加延时等待所述第一低功耗蓝牙模块完全放电和等待所述第二低功耗蓝牙模块完全放电。具体的,所述增加的延时时间根据所述第一低功耗蓝牙模块的完全放电时间和所述第二低功耗蓝牙模块的完全放电时间而定,可以理解的,所述延时时间大于等于所述第一低功耗蓝牙模块的完全放电时间以及大于等于所述第二低功耗蓝牙模块的完全放电时间。
[0034] 在对所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块重新供电后,重置所述第一设备和所述第二设备的数据链路层与物理层。进一步的,所述重置所述第一设备和所述第二设备的数据链路层与物理层具体包括:所述第一设备的应用层通过所述第一低功耗蓝牙模块的主机控制器接口重置所述第一设备的数据链路层与物理层;所述第二设备的应用层通过所述第二低功耗蓝牙模块的主机控制器接口重置所述第二设备的数据链路层与物理层。数据链路层与物理层是低功耗蓝牙通信所需的物理通道,重置所述第一设备和所述第二设备的数据链路层与物理层可以保证第一低功耗蓝牙模块在发起连接或第二低功耗蓝牙模块发起广播时处于最佳状态。
[0035] 对所述第一设备和所述第二设备的数据链路层与物理层的重置完成后,进行步骤S4,初始化配置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块。进一步的,所述初始化配置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块具体包括:设置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块的名称和地址,初始化通用属性配置文件,初始化通用接口文件,设置相关服务及属性,设置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块的发射和接收功率。进一步的,在初始化配置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块的同时调整所述第一设备和所述第二设备进行低功耗蓝牙连接的参数。具体的,所述参数包括:发射或接收功率,连接超时时间,广播间隔以及扫描间隔。所述调整所述第一设备和所述第二设备进行低功耗蓝牙连接的参数具体包括:增大所述第一设备和所述第二设备的蓝牙发射或接收功率,增加所述第一设备的蓝牙连接超时时间和蓝牙扫描间隔,减小所述第二设备的蓝牙广播间隔。具体的为第一设备或第二设备的应用层通过软件接口下发指令设置必要的配置和参数。通过调整参数以增强下一次低功耗蓝牙连接事件的鲁棒性,从而有效的提高第一设备和第二设备之间的低功耗蓝牙连接和数据交互的稳定性。
[0036] 最后,进行步骤S5,所述第一设备和所述第二设备再次进行低功耗蓝牙连接。具体的,所述第一设备和所述第二设备再次进行低功耗蓝牙连接包括:所述第一设备再次向所述第二设备发起连接或所述第二设备再次发起广播;具体的,所述第一设备的应用层调用第一低功耗蓝牙模块的发起连接接口以发起连接,所述第二设备的应用层调用第二低功耗蓝牙模块的发起广播接口以发起广播。
[0037] 综上所述,本公开实施例提供的提高低功耗蓝牙连接稳定性的方法中,所述方法包括响应于第一设备和第二设备的低功耗蓝牙连接被动断开或第一设备发起蓝牙连接失败执行关闭所述第一设备的第一低功耗蓝牙模块的电源和关闭所述第二设备的第二低功耗蓝牙模块的电源;增加延时等待所述第一低功耗蓝牙模块完全放电和等待所述第二低功耗蓝牙模块完全放电;打开所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块的电源,重置所述第一设备和所述第二设备的数据链路层与物理层;初始化配置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块并调整所述第一设备和第二设备进行低功耗蓝牙连接的参数;以及所述第一设备和所述第二设备再次进行低功耗蓝牙连接。本公开实施例提供的方法中第一低功耗蓝牙模块和第二低功耗蓝牙模块完全放电后重新供电并重置第一设备和第二设备的数据链路层与物理层,有助于第一低功耗蓝牙模块在发起连接或第二低功耗蓝牙模块在发起广播时处于最佳状态,保证下一次低功耗蓝牙连接的成功率。初始化配置所述第一低功耗蓝牙模块和所述第二低功耗蓝牙模块时调整低功耗蓝牙连接的参数,可以增强下一次低功耗蓝牙连接事件的鲁棒性,从而有效的提高第一设备和第二设备之间的低功耗蓝牙连接的成功率和数据交互的稳定性,减少低功耗蓝牙连接因环境干扰或因信号衰减而断开的概率。
[0038] 上述仅为本公开的优选实施例而已,并不对本公开起到任何限制作用。任何所属技术领域的技术人员,在不脱离本公开的技术方案的范围内,对本公开揭露的技术方案和技术内容做任何形式的等同替换或修改等变动,均属未脱离本公开的技术方案的内容,仍属于本公开的保护范围之内。