我们在PAN1740模块上使用DA14580。
该模块用于硬币电池供电的产品。亚博电竞菠菜
在该产品上,微控制器通过UART与DA14580通信。
我们正在经历一些模块连接问题。
我们注意到,当蓄电池电压高于3.1V-3.3V时,会发生这种情况。
这是一个新的话题,因为我有进一步的发现和问题,在前一个是“完成”。我已经收到新的生产单位显示这个问题。
只要电源电压低于3.25V,我们的生产软件就可以正常运行。
在较高的电压下,它只能运行几秒钟。我可以看到产品弹出在Windows蓝牙配对。如果我足够快,我可以得到PIN提示。但是我不能完成配对。
我们已经对RF Master(启动/停止)进行了基本的测试支持。它可以在整个供电范围(高达3.6V)与它通信。
要消除我们介绍的任何可能的错误,我们使用SDK的示例应用程序:
\DA1458x_SDK_5.0.4\DA1458x_SDK\5.0.4\projects\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(或更高电压:-)下无需任何麻烦(配对和通信)。
是什么导致了这种行为?我应该到哪里去找呢?
嗨mratajski,
谢谢你的在线提问。能否提供以下数据以更好地了解您的问题?
谢谢,PM_DIALOG.
1。
在3.0V(正常)、3.2V(正常)和3.3V(故障)下开机和引导后,模块的附加电流消耗。
似乎软件在初始化后挂起…
连接间隔是prox_reporter的例子(最小10毫秒,最大10毫秒)。20 ms ?)。
然而,这很可能取决于与Windows 10的协商——它有标准配置。
2。
我们没有嗅探器。。。
你能推荐一个吗?
电流消耗电压变化:
1.模块电源打开并启动3.0V
2.电源短暂增加至3.3V
3.供应减少到3.0V
模块未在电压较低时恢复。
你好,
也许你的问题是:“模块通过微控制器的IO引脚提供,因此模块上的实际电压较低(减少约50mV)。”
干杯
西格马尔
我已将模块硬接线至外部电源。。。没有运气。。。一旦电压达到3.3V,它就会停止工作。。。
hmmh……当你的控制器在PAN1740模块上使用Portpin RESET时会发生什么?
我在我的Projekt中,同样的模块和大规模生产很快就会开始。我的外部控制器可以始终重置Modul。这是我的硬件看门狗。
干杯
西格马尔
使用我们的主机软件,我们始终检查与模块的通信。
如果它停止响应主机,请重置模块。
低电压电源的模块正常工作,只有在模块真的卡住的情况下,只能使用复位 - 我没有观察到它。
一旦电压增加,我就可以观察到重置的无穷无尽的循环......
BLE处于活动状态几秒钟,然后一次又一次地重置。。。
活动的周期足以让Windows检测到设备,一两次我就可以完成配对,但你可能会忘记任何通信……
但是,与Dialog API示例应用程序(代理)没有通信,因此主机中的重置功能被禁用。
当它卡住的时候,它只是卡住了……
再说一遍,这种情况只发生在我们仅有的几个单位上,其他单位在3.6V的电压下都能正常工作。
然而,这是影响产量并敲诈PCBA修理......
干杯,
米..
你好,omesa,谢谢你的回答。
嗨MRATAJSKI,我将检查您的投入,并尽快通知您。
谢谢,PM_DIALOG.
嗨mratajski,
再次感谢您的投入。如果有任何错误/缺少任何东西,请纠正我的,并请提供一些进一步的输入。然后,我将在内部升级所有输入以进行进一步分析。
发行说明:
当电源电压为3.3V时:
谢谢,PM_DIALOG.
>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电压下进行配对。
我设法将Windows10中的蓝牙设备与3.3V供电的设备配对一两次。
我得到的印象是,它是越来越糟,如果我增加电压(如3.4V或3.5V)为有问题的单位。
问候,
米..
嗨mratajski,
让我在内部升级你的输入。我一得到团队的反馈就给你回电话。
谢谢,PM_DIALOG.
嗨michal.
“主机应用程序没有从运行在DA14580上的应用程序接收CTS,它在超时后重置蓝牙模块–DA14580正在进入UART引导过程,加载固件并开始正常操作几秒钟,CTS再次丢失…”
当您的主机重置而不是PAN1740时,发生了什么?它还活着吗?
你有什么样的主人?
也许为了测试模块,你可以在上面放一个标签固件。
另一个想法,也许CTS信号太短或串行通信失败。
你的波特率是多少?它保护我的校验和吗?
对不起,这只是猜测,因为我们面前没有硬件。
干杯
西格马尔
嗨,omesa,
当CTS丢失时,DA14580不再通告。
对于微控制器来说,CTS脉冲足够长。当应用程序运行在DA14580挂起,它不再发送CTS(短或长-用示波器验证)。
该应用程序基于SDK中的示例。
我们已经配置了代理固件(对话框SDK的示例,没有任何修改,因为我之前已在模块上提到)。
电压越高,情况也一样——它会在广告中播放几秒钟,然后停止播放。通过绘制的电流,您可以看到模块不再传输。
这意味着非常简单的应用程序(没有与主机通信)挂自己时,有较高的电压存在。
问候,
米..
嗨mratajski,
我已经在内部升级了你的问题。我会让你了解最新情况。
谢谢,PM_DIALOG.
嗨mratajski,
您能否将bandgap_reg [ldo_ret_trim]位域更改为较低的值?DA14580和SDK5.0.4的默认值为0x0A,因此将其更改为0x09。您还可以参考DA14580DATASHEET和表26:更多信息,CANDGAP_REG(0x50000028)。您必须在periph_init()调用之前在system_init()函数中添加以下行。
谢谢,PM_DIALOG.
嗨PM_Dialog,
它似乎在工作!:-)
我得到了代理示例工作(我可以在Windows中配对它)高达3.5V。
在3.6V时,我不能像以前那样对它。
我仍然需要做进一步的测量来确定,但问题是:带隙电压降多低是合理的?
使用3uh线圈(我将尝试用松下确认)在其他模块上测量。
您有寄存器的任何其他文档吗?这表95:bandgap_reg(0x50000028)没有提供更多细节和注意18有点令人困惑......
预计会有什么副作用?
问候,
米..
嗨PM_Dialog,
我对电流消耗进行了大幅调整。
我使用了简单的场景-通过蓝牙使用DA14580上的ADC读出电池电压,保持3.0V电压,所以它可以工作,也可以不进行修改。
我们的产品平均消耗大约1.2mA,默认带隙配置和大约2.4mA,值设置为0x9 ...
因此,这个修复方案有助于提高电池电压(不是完全有效,但对我们来说没问题),但在使用蓝牙时,它会使电流消耗翻倍……
这不正是我们的目标…你还有其他想法吗?
问候,
米..
嗨mratajski,
您是否在使用具有相同广告间隔的相同固件?您是否与我们的任何SDK示例进行了测试,例如BLE_APP_BAREBONE?您提到的是,电池电压为3.0V而不是3.3V(这是问题)。你能澄清一下吗?
电池电压= 3.0伏
- 当BandGAP_REG [LDO_RET_TRIM] = 0x0A时,电流消耗为1.2mA
-当带隙调整[LDO调整]=0x9时,电流消耗为2.4mA
谢谢,PM_DIALOG.
你好
3.3V - 新鲜电池电池电压(有时它更高)
3.0V—电池的标称电压
我们的产品必须在两种电压下工作。
蓝牙是下降/挂在3.3V的一些单位(正如我已经描述)。
我在所有单位上保持了电压的电压下进行了电流测量。只是为了确保没有其他影响。
软件上唯一的区别是BANDGAP_REG[LDO_RET_TRIM]。其余部分未动(包括广告间隔)
bandgap_reg [ldo_ret_trim] = 0x0a --->电流消耗是1.2ma
带隙调整[LDO调整]=0x09->电流消耗为2.4mA
无论3.3V时出现什么问题,电流消耗都会增加。“好”和“坏”单元都需要更多电流。
我已附上一个单位的电流测量与两种设置。
问候,
米..
嗨mratajski,
能否取消da1458x_stack_config.h头文件中CFG_POWER_OPTIMIZATIONS宏的定义?在此之后,您能看到功耗的任何差异吗?
谢谢,PM_DIALOG.
嗨PM_Dialog,
谢谢你的新想法:-)
不幸的是,我没有看到任何显著的差异。。。平均而言,它只比……少15-29个UA左右:-(
问候,
米..
嗨mratajski,
很抱歉回复晚了。事实上,它是一个定制的PCB,有几个参数涉及,并观察这样的行为,在系统性能。例如,以下参数可能会对系统产生影响:
解决方案是将LDO_RET_TRIM bit field更改为较低的值(如前所述),并将系统功能保持在已知的操作限制内。
谢谢,PM_DIALOG.
嗨PM_Dialog,
谢谢你!
似乎我现在需要推动模块制造商…
顺致敬意,
米..