DA14580通信问题,更高的电源电压 - 跟进

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
24个职位/ 0新
最后发表
mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
DA14580通信问题,更高的电源电压 - 跟进

我们使用PAN1740模块DA14580。
该模块用于硬币电池供电的产品。亚博电竞菠菜
在产品的微控制器与DA14580在UART通信。

我们正在经历一些模块连接问题。
我们已经注意到,当电池电压为3.1V一样高它发生 - 3.3V。

这是一个新的话题,因为我有进一步的发现和问题,在前一个是“完成”。我已经收到新的生产单位显示这个问题。

我们的生产软件在没有任何问题的情况下运行,因为长电源电压低于3.25V。
在较高的电压下,它只能运行几秒钟。我可以看到产品弹出在Windows蓝牙配对。如果我足够快,我可以得到PIN提示。但是我不能完成配对。

我们已经对RF Master(启动/停止)进行了基本的测试支持。它可以在整个供电范围(高达3.6V)与它通信。

为了消除我们可能引入的任何错误,我们使用SDK中的示例应用程序:
\ DA1458x_SDK_5.0.4 \ DA1458x_SDK \ 5.0.4 \项目\ target_apps \ ble_examples \ prox_reporter \ Keil_5 \ prox_reporter.uvprojx
它已经编译,没有任何修改。
我可以看到蓝牙设备如对话框的PRXR启动设备上的蓝牙模块
一切都很好,达到3.25V - 我可以看到单元,我可以配对在Windows(无PIN)。
当我将电压增加到3.3V时,它只会再次运行几秒钟——刚上电设备就弹出,但我无法完成配对。
该模块在引导UART没有任何问题最多(至少)3.6V。

我们使用的松下模块(PAN1740)有非常少的外部组件(电感,两个晶体和少数电容)。

上述电压均为本公司产品供货。该模块是通过一个微控制器的IO引脚提供的,因此该模块上的实际电压较低(大约少50mV)。

问题是显示只有一些单位。其他没有任何大惊小怪(配对和通信)后续工作至3.6V(和更高:-))。

是什么导致了这种行为?我应该到哪里去找呢?

设备:
PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

谢谢你的问题在网上。有没有可能提供以下资料对您的问题更好的视野?

  1. 连接失败时的电流捕获。我怀疑有些设备错过了连接事件,因此无法维护连接。您使用的连接间隔是多少?如果缺少连接事件,那么连接间隔应该逐渐变大。
  2. 当连接失败时,BLE Sniffer日志。
  3. 当故障设备adverting当前捕获。是你能数广告事件吗?你有没有错过任何广告活动?

谢谢,PM_Dialog

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
1.

1.
在动力上,并启动在3.0V(OK),3.2V(OK)和3.3V后恰到好处(失败)模块的attachement电流消耗。
初始化后,软件似乎是......

连接间隔是prox_reporter的例子(最小10毫秒,最大10毫秒)。20 ms ?)。
然而,这很可能取决于与Windows 10的协商——它有标准配置。

2.
我们没有BLE嗅探器...
你能推荐一个吗?

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
目前的消耗量

模块电压变化时的电流消耗:

1.模块以3.0V启动

2.供应短暂增加至3.3V

3.电源降回3.0V

该模块不与较低的电压恢复。

omesa
离线
最后看到:7个月2个星期前
加入:2014-12-07 17
你好,

你好,

也许你的问题是:“模块是通过微控制器的IO引脚提供的,所以模块上的实际电压更低(大约少50mV)。”

干杯

Siegmar.

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
我已经硬模块

我已经硬模块外接电源...没有运气...它只要电压为3.3V停...

omesa
离线
最后看到:7个月2个星期前
加入:2014-12-07 17
hmmh……发生了什么,当

hmmh……当你的控制器在PAN1740模块上使用Portpin RESET时会发生什么?

我在我的项目中有相同的模块和批量生产将很快开始。我的外部控制器总是可以重置模块。这是我的硬件看门狗。

干杯

Siegmar.

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
用我们的主机软件

随着我们的主机软件,我们检查与模块所有的时间沟通。
如果它停止响应主机使模块复位。
低电压供电的模块工作正常,只有在模块真的卡住的情况下才会使用复位-我没有观察到它。
一旦电压增加,我就能观察到无休止的重置循环……
该BLE活跃的几秒钟,然后复位,一次又一次......
活动的周期足以让Windows检测到设备,一两次我就可以完成配对,但你可能会忘记任何通信……

但是,与Dialog API示例应用程序(代理)没有通信,因此主机中的重置功能被禁用。
当它被卡住时,它只是卡住了......

再说一遍,这种情况只发生在我们仅有的几个单位上,其他单位在3.6V的电压下都能正常工作。
然而,这是影响产量和敲诈PCBA维修…

欢呼,
米甲

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
你好,欧梅萨,谢谢你

你好,omesa,谢谢你的回答。

你好,mratajski,我会检查你的输入,并尽快让你知道。

谢谢,PM_Dialog

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

再次感谢你的建议。请纠正我的任何错误/缺失,并请提供一些进一步的输入。然后,我会在内部升级你的输入以供进一步分析。

问题描述:

  • PAN14580模块以定制电路板使用
  • DA14580通过纽扣电池供电
  • 这个问题只出现在一些模块,而不是所有的设备。你能指出这个问题只存在于其中一些吗?有没有在3.3V供电电压下运行的设备?

当电源电压为3.3V时:

  • 一些板,开始推广了一段时间,然后不断地复位。你怎么知道的是,芯片进入无限重置循环?
  • BLE激活了几秒钟,你能连接吗?

谢谢,PM_Dialog

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
>采用PAN14580模块

> PAN14580模块以定制电路板使用
是的,它用于我们的BLE启用的产品。

> DA14580通过硬币电池供电
是的,它使用的是有问题的产品上的锂币电池(初始电压3.2-3.4V,标称电压3.0V)。亚博电竞菠菜

>这个问题时,会出现只在某些模块,而不是在所有的设备。你能指出这个问题只存在于其中一些吗?有没有在3.3V供电电压下运行的设备?
我们不使用3.3V进行生产测试。我们只是在生产结束时用新电池测试每个单元(电池电压测试至少为3.2V或以上)。
一些单位(少数)未能通过BLE通信测试与新电池。
产生单元的大部分具有与电池的初始(较高)电压没有问题。
我们也在3.0V下对每一个PCBA进行BLE测试。在这个阶段,所有单位的通信都没有任何问题。

我已经从生产中测试了一些失败的样品-他们的阈值电压大约是3.25V。我观察到高于这个电压的问题。
我也在测试了一些传递的样本 - 它们良好高达3.6V。

>一些板,开始为广告一段时间,然后不断地复位。
是的,我可以在Windows 10蓝牙配对中观察到BLE设备的正确名称。

>你怎么知道的是,芯片进入无限重置循环?
用示波器观察主机CPU与DA14580之间的通信。我还观察了重置线。
主机应用程序没有从DA14580上运行的应用程序接收到CTS,并在超时后重置蓝牙模块- DA14580正在进入UART引导过程,加载固件并开始正常操作几秒钟,CTS再次丢失…

> BLE是几秒钟活跃,所以,你可以连接了?
在其他方面,我能够读取ADC转换器的值从DA14580的BLE不时(重置和ADC池循环是不同步的),
当有问题的设备使用3.3V供电时。
配对是在3.0V测试之前执行。

我设法配对的蓝牙设备在Windows 10一次或两次3.3V供电问题单元。

我得到的印象是越来越差,如果我增加电压(3.4V像3.5V或)有问题的单位。

问候,
米甲

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

让我在内部升级你的输入。我一得到团队的反馈就给你回电话。

谢谢,PM_Dialog

omesa
离线
最后看到:7个月2个星期前
加入:2014-12-07 17
嗨米甲

嗨米甲
“宿主应用程序不会从应用程序上运行DA14580接收CTS,它从时间后蓝牙模块复位 - DA14580正在进入UART启动过程中,将固件加载并开始为几秒钟,CTS再次缺少正常运转。”

什么事,当你的主机重置不PAN1740?它仍然活着,并且广告?
你们有什么样的主人?
也许为了测试模块,你可以在上面放一个标签固件。
另一个想法,可能是CTS信号太短或串行通信失败。
你的波特率是多少?它保护我的校验和吗?
对不起,这只是猜测,因为我们还没有在我们面前的硬件。
干杯
Siegmar.

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
嗨omesa,

嗨omesa,

当CTS消失时,DA14580就不再做广告了。
对于微控制器来说,CTS脉冲足够长。当应用程序运行在DA14580挂起,它不再发送CTS(短或长-用示波器验证)。
该应用程序基于SDK中的示例。

我们还在模块上放置了代理固件(例如Dialog SDK,我之前已经提到过,没有进行任何修改)。
随着更高的电压是相同的 - 它是几秒钟的广告,然后停止。你可以看到当前绘制该模块不发送了。
这意味着非常简单的应用程序(没有与主机通信)挂自己时,有较高的电压存在。

问候,
米甲

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

我已经升级了您的问题在内部。我会及时通知你的。

谢谢,PM_Dialog

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

你能把BANDGAP_REG [LDO_RET_TRIM]的位域改低一点吗?DA14580和SDK5.0.4的默认值是0x0A,因此将其更改为0x09。您还可以参考DA14580datasheet和表26:BANDGAP_REG (0x50000028)了解更多信息。在调用peripher_init()之前,必须在system_init()函数中添加以下代码行。

Void system_init(Void){…//检查并读取BD地址nvds_read_bdaddr();SetBits16 (BANDGAP_REG LDO_RET_TRIM 0 x9);/ /外设initilization periph_init ();...}

谢谢,PM_Dialog

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

似乎起作用了!:-)
我收到了代理示例工作(我可以在Windows中配对)高达3.5V。
在3.6V时,我不能像以前那样对它。
我仍然需要做进一步的测量来确定,但问题是:带隙电压降多低是合理的?
使用了3uH线圈(我将尝试与松下确认),因为我在其他模块上测量过。

你有任何额外的注册文件吗?的表95:BANDGAP_REG (0x50000028)是不是没有给出太多的细节和注意18有点令人困惑…
预计会有什么副作用?

问候,
米甲

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

我对电流消耗进行了大幅调整。
我使用了简单的场景-通过蓝牙使用DA14580上的ADC读出电池电压,保持3.0V电压,所以它可以工作,也可以不进行修改。
我们的产品在默认带隙配置下平均消耗大约1.2mA,在值设置为0x9时大约消耗2.4mA…

因此,这个修复方案有助于提高电池电压(不是完全有效,但对我们来说没问题),但在使用蓝牙时,它会使电流消耗翻倍……
这不正是我们的目标......你有什么其他的想法?

问候,
米甲

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

您是否使用相同的固件和相同的广告间隔?你用我们的SDK示例(如ble_app_barebone)测试过它吗?你提到电池电压是3.0V而不是3.3V(这就是问题所在)。你能解释一下吗?

电池电压= 3.0伏

—当BANDGAP_REG[LDO_RET_TRIM] = 0x0A时,电流消耗为1.2mA

- 当BANDGAP_REG [LDO_RET_TRIM] = 0x9,电流消耗是2.4毫安

谢谢,PM_Dialog

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
你好,

你好,

3.3V -新电池电池电压(有时较高)
3.0V—电池的标称电压
我们的产品必须在两种电压下工作。
蓝牙是下降/挂在3.3V的一些单位(正如我已经描述)。

我已经在电压下测量了所有设备上的蓝牙的电流。只是为了确保没有其他影响。

软件中唯一的区别是bandgap_reg [ldo_ret_trim]。所有其余的尚未触及(包括广告间隔)

BANDGAP_REG[LDO_RET_TRIM] = 0x0A——>电流消耗1.2mA
BANDGAP_REG [LDO_RET_TRIM] = 0×09 --->电流消耗是2.4毫安

无论3.3V时出现什么问题,电流消耗都会增加。“好”和“坏”单元都需要更多电流。

我已附上一个单位的电流测量与两种设置。

问候,
米甲

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

您能否请拒绝da1458x_stack_config.h标题文件中的cfg_power_optimizations宏?之后,您是否能够看到电源消耗的任何差异?

谢谢,PM_Dialog

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

感谢您对新的想法:-)
可惜的是我没有看到任何显著差异......平均而言,只有周围15-29uA少... :-(

问候,
米甲

PM_Dialog
离线
最后看到:1天22小时前
工作人员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

我为迟到的回应道歉。实际上它是一个自定义PCB,有几个参数涉及并观察系统性能中的这种行为。例如,以下参数可能会影响系统:

  • 晶体切
  • PCB层
  • PCB布局
  • 内部温度
  • XTAL的定位
  • 对整体系统性能的影响

分辨率是改变LDO_RET_TRIM位字段为较低的值(如前面所建议的),并保持该系统在已知的操作限制功能。

谢谢,PM_Dialog

mratajski
离线
最后看到:11个月3个星期前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

谢谢你!
似乎我现在需要推动模块制造商…

此致,
米甲