This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC2652RB:通过 BLE 进行数据传输

Guru**** 2548220 points
Other Parts Discussed in Thread: CC2652RB

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/979798/cc2652rb-data-transfer-through-ble

器件型号:CC2652RB

大家好、

需要您对我们客户的问题提供专业知识。 代表他们发布:

我将 CC2652RB 用于我的开发项目。 但是、我在通过 BLE 将文本文件数据传输到 GATT 客户端方面面临着挑战。 作为一个开始步骤、我将尝试在 Project Zero 示例代码上进行开发、并且我已经完成了此链接 dev.ti.com/.../ble_01_custom_profile.html 上的蓝牙低耗能自定义配置文件教程的所有步骤
但是、我无法验证附加的任务5映像的功能。 按下按钮时、初始值不会如任务5的步骤4中所述进行更新。 请参阅随附的图像。
按照链接中的建议、在按下按钮后、您可以帮助我更改项目零示例代码、以便通过 BLE 将数据从 GATT 服务器(CC2652RB launchpad)传输到 GATT 客户端(Android 智能手机)吗?
现在、我将首先在阳光服务特性中写入 Android 手机中的一些数据、然后在按下按钮后、我能够读取日光服务特性上的数据。
我的问题是、为什么初始值不会更新、因为我在按下手柄按钮时调用了日光服务设置参数函数;第二个问题是、我只想在每次按下按钮时继续更新初始值、但它停留在初始值。

另请参阅随附的 PDF 文件以了解我的当前任务状态。 提前感谢!


此致、

Jejomar

e2e.ti.com/.../TI-Ble-current-state.pdf

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jejomar、

    从我的理解来看、手机不会再次读取特征、因此手机不会刷新显示屏。 请尝试再次读取该值。

    如果您不想重新读取该值、则必须启用通知。

    我提到的所有元素都应该是移动应用中的一个元素。

    请告诉我们它是否有用、

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     您好、Cl é ment、

    非常感谢您对此进行深入研究。 我们的客户不想重新读取特征、他们希望在按下按钮后更新特征。 您能指导我们如何启用通知吗?

    也可以在不按按钮的情况下传输越来越多的数据吗? 即、他们希望通过按一下按钮传输文本文件的所有内容。 该文件将具有大约100KB 或更多的数据、即在指针到达文件末尾之前应传输完整数据。


    此致、

    Jejomar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jejomar、

    我不清楚、您是否尝试在移动应用程序中显示其他特征? 您能否提供一些屏幕截图?

    [引用 user="Jejomar Ildefonso"文件将具有大约100KB 或更多的数据,即在指针到达文件末尾之前应传输完整数据。

    这看起来是可能的、但需要做一些工作。 您可能需要查看 OAD 映像的传输方式、并使用类似的解决方案。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     您好、Cl é ment、

    我们的客户有两个特殊的问题:

    首先、他们想知道如何在项目零代码中启用通知、 以便在按下左侧按钮时、值应该增加。 有关屏幕截图、请参阅主题开头随附的 pdf 文件。

    第二、对于 OAD 传输、他们将参考该过程。 但在项目零代码中、指定可以使用 GATT ReadLongCharValue 或 GATT WriteLongCharValue 传输大数据。 它们是否可以使用相同的过程? 他们能否只需读取文件内容并按字符传输?

    我们已将应用端(GATT 客户端)的屏幕截图放入随附的 pdf 中。 在该教程中,他们使用新的服务和特征创建自定义配置文件。 请参阅屏幕截图、如果您需要更多信息、请告诉我。


    此致、

    Jejomar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jejomar、

    根据所提供的屏幕截图、不会根据您感兴趣的特征启用通知。 您是否可以像对另一个特征那样尝试启用它们?

    很抱歉、我不是移动应用的专家、而是 CC26xx 器件的专家。

    GATT_WriteLongCharValue 可在特征值的长度超过单个写入请求属性协议消息中发送的长度时使用。 因此、在您的案例中、它看起来确实是有用的。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

     您好、Cl é ment、

    我对拖延表示歉意,并感谢我不断帮助我们解决这一问题。  分享您的最新回复后、我收到了客户的反馈、如下所示:

    当我启用第二个特征的通知时、初始值也不会更新。 您能告诉我如何启用来自 CC26xx 端的通知吗? 我只想处理 cc26xx 端代码。
    GATT_WriteLongCharValue 必须在哪里实现它?
    我也已经了解过 OAD、但无法满足我的要求。 是否可以通过单按钮按压项目零代码来传输所有文件内容?


    此致、

    Jejomar



  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jejomar、

    应在 GATT 客户端(即电话)上打开通知。 唯一应该在 GATT 服务器端执行的操作是验证 GATT 特征是否可以"通知"。 除此之外、您还应验证 GATT 服务器如何发送数据-请查看 SimpleLink Academy 以获取其他支持。

    根据我的理解、这里的目标是将文件从手机发送到 CC26x2器件。 这意味着 GATT_WriteLongCharValue 函数可能不会被使用。

    [引用 user="Jejomar"]是否可以通过单键按项目零代码来传输所有文件内容?

    是的、我认为是这样。 移动应用专家可能比我更有见解。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cl é ment、

    感谢您的回答。 我已经将这些内容分享给了我们的客户、他回答说、最终目标是将存储在与 TICC2652RB LP 连接的 SD 卡中的.txt 文件的内容传输到手机(基于 Android)。 一次性发送完整文件或读取文件内容并按字符传输。

    似乎开发必须从 TI CC2652端(客户情况下为 GATT 服务器)进行、而不是从 Android 移动端进行。
    他们如何检查是否可以通知特征、以及他们需要在项目零中验证自定义 BLE 配置文件的位置?

    其次、如果 GATT 特征未设置为"可以通知"。 我们可以更改其通知属性吗?

    提前感谢您不断为我们提供帮助!


    此致、

    Jejomar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jejomar、

    双方都需要进行一些发展。

    我建议利用 simple_peripheral 示例(而不是 project_zero 示例)。 正如您将在示例的自述文件中看到的、simple_peripheral 示例提供了具有通知可能性的特征。

    我建议在手机端使用 LightBlue 应用来评估 simple_peripheral 示例。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cl é ment、

    非常感谢。 我们的客户确认他们确实会查看这些外设示例。 他们的主要问题是有关项目零代码的问题、因为他们已经在相当高的水平上对其进行了探讨、并希望它能够正常工作。

    如果可能、您能否帮助我们查看项目0和项目0自定义代码的代码、并告知我们是否可以按按钮更新传感器值、如简单链接教程中所述?

    如果您能在这种特定情况下帮助我们、那对我们的客户非常有帮助。


    此致、

    Jejomar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jejomar、

    我确认这是可能的。

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cl é ment、

    对延误表示歉意、并感谢您的确认。 但是、对于我们的客户而言、这种情况似乎不会发生。 我要附上他们的代码。

    在代码中、该值自动递增、用于自定义服务(0000BA55-0000-1000-8000-00805F9B34FB)的具有 UUID 的自定义特征(F0002BAD-0451-4000-B000-000000000000)、而根据简单链接自定义 BLE 配置文件教程、当我们使用自定义特征值初始化自定义特征时、自定义服务的另一个自定义特征的值应增加。
    您能帮助我们了解一下代码吗? 回调序列似乎有一些错误。

    我们非常感谢您的持续支持!


    此致、

    Jejomar

    e2e.ti.com/.../project_5F00_zero.c.txt
    e2e.ti.com/.../sunlightService.c.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    GATTServApp_ProcessCharCfg()返回的值是什么? 您是否尝试单步执行该函数以验证所有内容是否符合预期?

    此致、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Cl é ment、

    抱歉。 我刚刚收到了来自客户方面的更新、现在是定制 BLE 配置文件教程中提到的日光特性的自定义特性。 该值不是自动递增的,它仅在启用通知后按按钮时递增。 因此、前面的问题已经解决、但我们真的不确定这是否是解决问题的正确方法。

    主要任务是在按下按钮时读取存储在 SD 卡中的文本文件的内容、并通过 BLE 以字符传输这些内容。
    因此、计划如下所示:
    他们将在日光下开发特征代码、并首先为其分配一个变量、用于从 GPIO 引脚读取 ADC 值。 该值将被指定给 myVar。 然后、每当他们必须读取它时、他们都会按按钮、然后该值应传输到 Android 应用、前提是已从 GATT 客户端启用通知。

    其次、从 SD 卡读取数据时、它们是否还必须为 GATT 许可授予读取和写入权限以及通知? 还是仅从 Android 端(GATT 客户端)选项启用的通知就足够了? 启用通知后、他们可以持续接收数据卡的内容。

    我们非常感谢您的持续支持。 这将是我们客户任务的最后一步、希望您能为我们提供帮助。 谢谢!


    此致、

    Jejomar

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jejomar、

    我知道最初的问题现已解决。 因此、请关闭此主题并打开一个新主题、这样我们就可以避免出现过长的主题缺少信息。

    感谢您的理解。

    此致、