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.

[参考译文] CC3135MOD:STA 漫游

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1212761/cc3135mod-sta-roaming

器件型号:CC3135MOD

您好!

sl_WlanSet 的持久性状态是什么(SL_WLAN_STA_NETWORK_AIDEND_ROAMING、...) API 命令? 定义了两个命令:SL_WLAN_ROAMING_TRIGGING_ENABLE 和 SL_WLAN_AP_TRANSITION_ENABLE。
附录 B 持久性、SWRU455M–2017年2月–2020年10月修订版中缺少此信息。

如何在 STA 模式下获取用于软漫游的 RSSI 触发器的属性? 我可以使用 sl_WlanSet (SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、……)设置属性 组件。 此命令是"系统持久"命令。 但是、如何获取在最后一个 sl_WlanSet 之后已分配的属性(SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、...) 是否在发出命令之前调用或系统默认值?

谢谢。
Olek Bogush

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

    您好!

    是的、这是持久的。

    在代码中、似乎这两个配置命令只是针对 SET_而 不是 GET_实现的、因此目前无法获取配置、只能对其进行设置。

    此致、

    Shlomi.

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

    尊敬的 Shlomi:

    感谢您的快速回复。 根据我的理解、sl_WlanSet (SL_WLAN_STA_NETWORK_AIDEND_ROAMING、SL_WLAN_ROAMING_TRIGGERING_ENABLE、...) 和 sl_WlanSet (SL_WLAN_STA_NETWORK_AIDEND_ROAMING、SL_WLAN_AP_TRANSITION_ENABLE、...) 命令为系统持久(非持久)、与 sl_WlanSet (SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、...)相同 组件。 请确认。

    由于无法检索当前 NWP 设置、请在调用以下三个命令之前至少分享默认 NWP 设置:
    sl_WlanSet (SL_WLAN_STA_NETWORK_AIDEND_ROAMING、SL_WLAN_ROAMING_TRIGGING_ENABLE、……)
    sl_WlanSet (SL_WLAN_STA_NETWORK_AIDEND_ROAMING、SL_WLAN_AP_TRANSITION_ENABLE、……)
    sl_WlanSet (SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、……)

    谢谢。
    Olek Bogush

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

    您好!

    默认情况下启用系统持久性、因此这些 API 在器件复位后保持持久。

    如果要切换系统持久性、则有专用的 API,  

    _i16 Status;
    _u8 persistent = 1;
    Status = sl_DeviceSet(SL_DEVICE_GENERAL, SL_DEVICE_GENERAL_PERSISTENT, sizeof(_u8), (_u8*)
    (&persistent));
    if( Status )
    {
    /* error */
    }

    对于默认 NWP 配置、网络辅助漫游已禁用、因此您需要先启用它。

    此致、

    Shlomi.

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

    您好!

    谢谢、但我的其中一个问题尚未得到解答:
    sl_WlanSet 的默认设置是什么(SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、……) 软漫游命令?

    您能否在以下代码片段中将问号替换为实际值、以使 NWP 恢复其默认软漫游设置。

    SlWlanRegisterLinkQualityEvents _ t RegisterLinkQuality;
    RegisterLinkQuality.Enable = 1;//根据我所见,默认情况下将启用软漫游
    RegisterLinkQuality.TriggerId = 1;//软漫游触发
    RegisterLinkQuality.Metric =?
    RegisterLinkQ.Direction =?
    RegisterLinkQuality.Threshold =?
    RegisterLinkQ.Hysteresis =?
    RegisterLinkQuality.Type =?
    RegisterLinkQuality.Pacing =?;
    返回(SL_WlanSet (SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、sizeof (SlWlanRegisterLinkQualityEvents _t)、(_u8 *)&RegisterLinkQuality));

    谢谢。
    Olek

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

    Olek,

    我不知道您为什么说默认情况下启用了此功能。

    您添加的代码片段位于应用层上,您可以设置标记为?的值。 匹配您的要求的值。

    "我怎么了?

    Shlomi.

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

    您好!

    我的意思是默认情况下启用软漫游、因为我在默认配置下观察到软漫游行为。 如果您一方出现意外情况、则表示 NWP 存在问题。

    我现在是第三次再次问我的问题、sl_WlanSet 的默认设置是什么(SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、...) 命令? 默认设置是配置参数在出厂时设置为 NWP、不是由用户编程。 我只需要编写一段代码、在进行一些应用程序更改后将软漫游返回到其默认状态、因此、我需要此特定命令的默认设置。 为了将软漫游返回到其默认状态、我应该使用什么值而不是问号?

    谢谢。
    Olek

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

    请参见下方的。

    同样、您需要调用该 API 来启用它。 不清楚为什么默认情况下启用了该功能。

    SlWlanRegisterLinkQualityEvents _ t RegisterLinkQuality;
    RegisterLinkQuery.Enable =?;<--这是根据用户设置来设置的
    RegisterLinkQuality.TriggerId = 1;
    RegisterLinkQuery.Metric = metric_event_RSSI_beacon ;// 0
    RegisterLinkQ.Direction = RSSI_EVENT_DIR_LOW;//0
    RegisterLinkQuery.Threshold = ?;<--这是根据用户设置来设置的
    RegisterLinkQ.Hysteresis = 3;
    RegisterLinkQuality.Type = RX_QUALITY_EVENT_LEVEL;//0
    RegisterLinkQuality.Pacing = 20000;

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

    我是否可以假设 软漫游在默认情况下被禁用?

    我看到的是、具有默认设置的 STA 会从一个 AP 跳转到另一个 AP。 STA 可能会暂时断开与 AP 的连接、然后恢复与其他 AP 的连接。 这种方式看起来像一个软漫游,但它不是真正的。

    这就是我询问您有关软漫游的默认设置的原因。 如果默认情况下启用了该功能、则需要 SlWlanRegisterLinkQualityEvents _t 结构的参数才能恢复为默认设置。 如果不是这样、那么为了返回到默认值、我所需做的就是设置 RegisterLinkQuality.Enable = 0并且 RegisterLinkQuality.TriggerId = 1。 你知道我吗?

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

    您好!

    您可能遇到的是简单的自动连接。 如果您的配置文件具有特定 SSID (甚至是手动连接)并且还启用了自动连接、则从 AP 断开连接将会触发扫描过程并在找到替代 AP 时重新连接。 这可能与软漫游类似、但不同、因为它没有所有其他参数、如阈值、迟滞等

    是的、从代码上看、软漫游默认为禁用、因此您可以调整启用和阈值。 其余全部由我添加的参数自动填充(除非您也选择修改这些参数)。

    我希望它现在更加清晰。

    此致、

    Shlomi.

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

    您好!

    好的。 谢谢。 让我总结一下:

    1. sl_WlanSet (SL_WLAN_STA_NETWORK_AIDEND_ROAMING、...) 命令是"系统持久"。 默认情况下禁用 SL_WLAN_ROAMING_TRIGGING_ENABLE 和 SL_WLAN_AP_TRANSITION_ENABLE 命令。

    2. sl_WlanSet (SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、……) 默认情况下禁用控制软漫游的命令(TriggerId = 1)。

    3.没有与 sl_WlanSet (SL_WLAN_STA_NETWORK_AIDGED_ROAMING 等)相关的 sl_WlanGet ()命令 和 sl_WlanSet (SL_WLAN_CFG_GENERAL_PARAM_ID、SL_WLAN_GENERAL_PARAM_REGISTER_LINK_QUALITY_EVENT、……) 检索以前(或默认)的设置。

    我是对吗?

    谢谢。
    Olek

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

    是的、回答正确。

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

    谢谢您、Shlomi。

    此致、

    Olek