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.

[参考译文] LP-CC1352P7:如何配置 BLE 网状网络中的 gen 模型状态更改的处理程序

Guru**** 2434020 points
Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1120898/lp-cc1352p7-how-to-configure-handler-for-gen-model-state-change-in-ble-mesh

器件型号:LP-CC1352P7
Thread 中讨论的其他器件:SysConfig

各位专家、您好!

处理通用模型状态变化的正确方法是什么?

我使用简单的网状网络节点示例项目作为基础。 有一个很好的文档说明如何配置供应商模型和为消息设置自定义处理程序。

但不清楚如何处理所有 gen 模型。

例如、我想使用 gen ONOFF 服务器打开/关闭 LED。

处理程序在 ti_device_composation.c 中定义:

/* Mapping of message handlers for Generic OnOff Server (0x1000) */
const struct bt_mesh_model_op gen_onoff_srv_op[] = {
                {BT_MESH_MODEL_OP_2(0x82, 0x01) , 0, gen_OnOff_get },
                {BT_MESH_MODEL_OP_2(0x82, 0x02) , 0, gen_OnOff_set },
                {BT_MESH_MODEL_OP_2(0x82, 0x03) , 0, gen_OnOff_set_unack },
        BT_MESH_MODEL_OP_END,
};

但我没有找到如何在 SysConfig 中修改这些值、我可以直接在 generic_models.c 中修改函数、它实际上起作用。 但该文件属于 SDK、因此看起来不是一个好主意。

此外、SDK 中的函数正在执行其他有用的操作、例如转换和延迟、因此最好使用它们。 我假设应该有一些事件可以在应用程序中处理、例如 model_State_change、但我找不到类似的任何东西。 此外,我没有发现任何事件在处理程序中排队。 处理程序只是更改模型状态值、就是这样。

我错过了什么吗?

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

    大家好、Evgenii、

    [引用 userid="528524" URL"~/support/wireless-connectivity/bluetooth-group/f/bluetooth-forum/1120898/lp-cc1352p7-how-configure-handler-for-gen-model-state-change-in ble-mesh"]但我没有找到如何修改 sysconfig/c_c 中的这些值、实际上可以直接修改 SysConfig.c 函数中的这些值。 但该文件属于 SDK、因此看起来不是一个好主意。

    您在这里的陈述汇总了这里的状态。  这些挂钩在 SysConfig 中看起来不可配置、如您所见。 为了帮助客户改善体验、这些挂钩可能应以供应商模型的相同方式与 SysConfig 绑定。 我的想法是、由于这些模型是 SIG 定义的模型(因此其功能是固定的)、因此可能尚未包含这些模型、但我同意您的观点、因此我将向我们的团队提交一份 TT、以了解并改进这些模型。 我无法评论这种情况何时会发生。 现在、我将通过直接修改 generic_models.c 来继续您的操作。

    [~ userid="528524" URL"支持/无线连接/bluetooth-group/f/bluetooth-forum/1120898/lp-cc1352p7-how-configure-handler-for-gen-model-state-change-in ble-mesh"] SDK 中的函数也在执行其他有用的操作、例如转换和延迟、因此使用这些函数也很好。 我假设应该有一些事件可以在应用程序中处理、例如 model_State_change、但我找不到类似的任何东西。 此外,我没有发现任何事件在处理程序中排队。 处理程序只需更改模型状态值、就是这样。

    我将邀请您修改此代码以添加一些特定的应用程序处理。 我了解需要在应用中进行回调、以帮助从 TI 提供的模型文件中分离内容。 我将在 TT 中包含此内容。

    [~引脚 userid="528524" URL"支持/无线连接/bluetooth-group/f/bluetooth-forum/1120898/lp-cc1352p7-how-configure-handler-for-gen-model-state-change-in ble-mesh "]我是否错过了什么?[/quot]

    我不相信你做了、做得很好!

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

    尊敬的 Ammar:

    非常感谢您的澄清!