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.

[参考译文] CC2640:GATTServApp_ProcessCCCWriteReq 返回 ATT_ERR_Insufficient 资源

Guru**** 2595800 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/608754/cc2640-gattservapp_processcccwritereq-returns-att_err_insufficient_resources

器件型号:CC2640

你好!

我的项目中的通知有问题:

函数 GATTServApp_ProcessCCCWriteReq 返回 ATT_ERR_Insufficient 资源(0x11)错误代码。

调用路径如下所示:

GATTServApp_ProcessCCCWriteReq -> GATTServApp_WriteCharCfg->gattServApp_FindCharCfgItem

gattServApp_FindCharCfgItem 找不到任何元素,因为唯一元素的 connHandle 不等于我的 connHandle:

为什么表中的 connHandle 与我的 connectionHandle 不同?

请帮助我解决此问题。

栈 v2.2.1。 基于具有片上 OAD 的 simpleBLEPeripheral 的项目。

BR、Vsevolod。

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

    屏幕截图:

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

    通常、ATT_ERR_Insufficient 资源表示 GATT_BM_alloc 无法从堆中分配任何内存。 您是否检查过您是否超过了您的 ICall 堆?

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

    这个问题实际上与堆无关。 这3个函数不使用 alloc:
    GATTServApp_ProcessCCCWriteReq -> GATTServApp_WriteCharCfg->gattServApp_FindCharCfgItem

    GATTServApp_ProcessCCCWriteReq 返回 ATT_ERR_Insufficient 资源、因为 GATTServApp_WriteCharCfg 无法写入客户端特征配置(CCC)。 GATTServApp_WriteCharCfg 无法写入 CCC、因为它无法在表中找到当前连接。

    为什么我的唯一连接处理程序值不等于 charCfgTbl 中的唯一元素?
    请参阅屏幕截图-我的 connHandle 为0。 但是 charCfgTbl 只有一个元素具有 connHandle 32784 (0x8010)。