DA14580通信问题与更高的电源电压-跟踪

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
24个帖子/ 0个新
最后一篇
MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
DA14580通信问题与更高的电源电压-跟踪

我们在PAN1740模块上使用DA14580。
该模块用于硬币电池供电的产品。雷电竞官网登录
在该产品上,一个微控制器通过UART与DA14580通信。

我们正在经历一些模块连接问题。
我们已经注意到,当电池电压较高时,如3.1V - 3.3V会发生这种情况。

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

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

我们已经实现了对射频主机(启动/停止)的基本支持,用于测试。可以在整个供电范围内(最高达3.6V)与之通信。

要消除我们介绍的任何可能的错误,我们使用SDK的示例应用程序:
\ DA1458x_SDK_5.0.4 \ DA1458x_SDK \ 5.0.4 \ target_apps \ ble_examples \ \项目prox_reporter \ Keil_5 \ prox_reporter.uvprojx
它已被编译,没有任何修改。
我可以看到蓝牙设备是DIALOG-PRXR启动设备上的蓝牙模块
一切都是好的3.25V -我可以看到单位,我可以配对它在Windows(没有PIN)。
一旦我将电压增加到3.3V,它就会再次运行几秒钟——就在设备上电后弹出,但我不能完成配对。
模块通过UART启动而没有任何问题,直到(至少)3.6V。

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

提到的电压是我们产品的供应。该模块通过微控制器的IO引脚提供,因此模块上的实际电压较低(减少约50mV)。

问题是只显示一些单位。其他的工作没有任何麻烦(配对和通信)高达3.6V(或更高:-))。

是什么导致了这种行为?我应该在哪里进一步搜索?

设备:
PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

谢谢你在网上提出的问题。能否提供以下数据以更好地了解您的问题?

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

谢谢,PM_DIALOG.

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
1。

1。
附件中是3.0V (OK)、3.2V (OK)、3.3V(失效)开机启动后模块的耗电量。
似乎软件在初始化后挂起…

连接间隔是prox_reporter BLE示例所拥有的(最小10ms,最大10ms。20 ms ?)。
不过,这多半取决于与Windows 10的谈判——它有标准配置。

2.
我们没有BLE Sniffer…
你能推荐一个吗?

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
现时的消耗量

电流消耗电压变化:

1.模块电源打开并启动3.0V

2.供电短暂增加到3.3V

3.供应减少到3.0V

低电压下模块无法恢复。

omesa
离线
最后一次露面:5个月6天前
加入:2014-12-07 17
你好,

你好,

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

干杯

Siegmar

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
我已经将模块硬连接起来了

我已经将模块连接到外部电源。没有运气…只要电压是3.3V,它就会停止。

omesa
离线
最后一次露面:5个月6天前
加入:2014-12-07 17
hmmh……发生了什么,当

hmmh……当你的控制器对PAN1740模块进行Portpin RESET时,会发生什么。

我在我的Projekt中,同样的模块和大规模生产很快就会开始。我的外部控制器可以始终重置Modul。这是我的硬件看门狗。

干杯

Siegmar

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
使用我们的主机软件

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

然而,没有与Dialog API示例应用程序(代理)通信,所以主机中的重置功能是禁用的。
当它卡住的时候,它就卡住了……

再一次-这是发生在只有少数单位,我们有-所有其他都工作良好到3.6V。
然而,这是影响产量并敲诈PCBA修理......

干杯,
米..

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
你好,欧梅萨,谢谢你的

你好,欧梅萨,谢谢你的回答。

嗨MRATAJSKI,我将检查您的投入,并尽快通知您。

谢谢,PM_DIALOG.

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

再次感谢您的投入。如果有任何错误/缺少任何东西,请纠正我的,并请提供一些进一步的输入。然后,我将在内部升级所有输入以进行进一步分析。

问题描述:

  • PAN14580模块用于定制单板
  • DA14580通过硬币电池供电
  • 这个问题只出现在某些模块中,而不是所有设备中。你能指出这个问题只存在于其中一些人身上吗?是否有运行在3.3V电源电压下的设备?

供电电压为3.3V时:

  • 有些电路板,开始广告一段时间,然后不断重置。你怎么知道芯片会进入一个无限的重置循环?
  • BLE活动了几秒钟,所以你能连接吗?

谢谢,PM_DIALOG.

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入: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再次缺少CTS ...

> BLE活动了几秒,所以你能连接吗?
在其他情况下,我能够从DA14580读取ADC转换器值,不时(重置和ADC池循环不同步),
当有问题的单位提供3.3V时。
测试前在3.0V下进行配对。

我成功地将Windows 10中的蓝牙设备与3.3V供电的问题设备配对了一两次。

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

问候,
米..

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

让我把你的意见升级。我一有团队的反馈就会给你回复。

谢谢,PM_DIALOG.

omesa
离线
最后一次露面:5个月6天前
加入:2014-12-07 17
嗨michal.

嗨michal.
“主机应用程序没有从运行在DA14580上的应用程序接收到CTS,它在超时后重置蓝牙模块- DA14580正在进入UART启动过程,加载固件并启动正常运行几秒钟,CTS再次缺失……”

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

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
嗨omesa,

嗨omesa,

当CTS丢失时,DA14580不再通告。
对于单片机来说,CTS脉冲足够长。当运行在DA14580上的应用程序挂起时,它不再发送CTS(短或长-用示波器验证)。
该应用程序基于SDK中的示例。

我们已经配置了代理固件(对话框SDK的示例,没有任何修改,因为我之前已在模块上提到)。
在高电压的情况下是一样的,广告几秒钟后就停止了。你可以看到当前绘制的模块不再传输。
这意味着非常简单的应用程序(根本没有与主机通信)是挂自己时,有较高的电压。

问候,
米..

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

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

谢谢,PM_DIALOG.

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

您能否将bandgap_reg [ldo_ret_trim]位域更改为较低的值?DA14580和SDK5.0.4的默认值为0x0A,因此将其更改为0x09。您还可以参考DA14580DATASHEET和表26:更多信息,CANDGAP_REG(0x50000028)。您必须在periph_init()调用之前在system_init()函数中添加以下行。

void system_init(void){... //检查和读取bd地址nvds_read_bdaddr();setBits16(bandgap_reg,ldo_ret_trim,0x9);//外围设备启动periph_init();...}

谢谢,PM_DIALOG.

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

它似乎在工作!:-)
我得到了代理示例工作(我可以对它在Windows)高达3.5V。
在3。6v时,我不能像以前那样对它。
我还需要做进一步的测量来确定,但问题是:带隙电压的合理值有多低?
使用3uh线圈(我将尝试用松下确认)在其他模块上测量。

您有寄存器的任何其他文档吗?这表95:bandgap_reg(0x50000028)没有提供更多细节和注意18有点令人困惑......
预计会有哪些副作用?

问候,
米..

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

我用bangap调整测量了当前的消耗。
我使用了简单的场景-通过蓝牙在DA14580上使用ADC读取电池电压,保持3.0V电压,所以它可以工作,也可以不修改。
我们的产品平均消耗大约1.2mA,默认带隙配置和大约2.4mA,值设置为0x9 ...

所以修复有助于提高电池电压(不是全部,但对我们来说没问题),但当使用蓝牙时,它的电流消耗翻倍……
这不是我们的目标…你还有别的办法吗?

问候,
米..

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入: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.4mA

谢谢,PM_DIALOG.

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入: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] = 0x09——>当前消耗是2.4mA

电流消耗在3.3V时不管问题如何都增加了。“好”和“坏”单位都需要更流行。

我附上了两个设置的一个单位的当前测量值。

问候,
米..

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

请取消da1458x_stack_config.h头文件中的CFG_POWER_OPTIMIZATIONS宏?在那之后,你能看到电力消耗的任何不同吗?

谢谢,PM_DIALOG.

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

谢谢你的新想法:-)
不幸的是,我没有看到任何显著的区别……平均只少了15-29uA…: - (

问候,
米..

PM_DIALOG.
离线
最后一次露面:1周16小时前
职员
加入:2018-02-08 11:03
嗨mratajski,

嗨mratajski,

很抱歉回复晚了。事实上,它是一个定制的PCB,有几个参数涉及,并观察这样的行为在系统性能。例如,以下参数可能会影响系统:

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

解决方案是将LDO_RET_TRIM位域更改为较低的值(如前所述),并将系统功能保持在已知的操作限制内。

谢谢,PM_DIALOG.

MRATAJSKI.
离线
最后一次露面:9个月2周前
加入:2019-02-21霎时一切都
嗨PM_Dialog,

嗨PM_Dialog,

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

最好的问候,
米..