WIFI技术
直播中

李静

8年用户 1074经验值
私信 关注
[问答]

WICED 的OTA2如何启动?

按照该网页的步骤,我输出了以下log,没有启动AP[2024-11-12 09:07:09.463]RX:Starting WICED Wiced_006.006.001.0001Platform CYW943907AEVAL1F initialised Started ThreadX v5.9WICED_core InitializedInitialising NetX_Duo v5.12Creating Packet poolsWLAN MAC Address : 00:9D:6B:C2:1C:18WLAN Firmware    : wl0: Jul 20 2020 00:08:56 version 7.15.168.149 (21d266a) FWID 01-d4dbc762WLAN CLM         : API: 12.2 Data: 9.10.74 Compiler: 1.31.3 ClmImport: 1.36.3 Creation: 2020-07-20 00:01:06 INFO:0000 00:00:00.167 Start the command console> INFO:0001 00:00:00.172 OTA2_IMAGE_FLASH_BASE                0x00000000INFO:0002 00:00:00.178 OTA2_IMAGE_FACTORY_RESET_AREA_BASE   0x00008000INFO:0003 00:00:00.184 OTA2_IMAGE_FAILSAFE_APP_AREA_BASE    0x001ef000INFO:0004 00:00:00.191 OTA2_IMAGE_APP_DCT_SAVE_AREA_BASE    0x00208000INFO:0005 00:00:00.197 OTA2_IMAGE_CURR_LUT_AREA_BASE        0x0020c000INFO:0006 00:00:00.203 OTA2_IMAGE_CURR_DCT_1_AREA_BASE      0x0020d000INFO:0007 00:00:00.210 OTA2_IMAGE_CURR_DCT_2_AREA_BASE      0x00211000INFO:0008 00:00:00.216 OTA2_IMAGE_CURR_OTA_APP_AREA_BASE    0x00215000INFO:0009 00:00:00.222 OTA2_IMAGE_CURR_FS_AREA_BASE         0x00263000INFO:0010 00:00:00.229 OTA2_IMAGE_CURR_APP0_AREA_BASE       0x0033a000INFO:0011 00:00:00.235 OTA2_IMAGE_STAGING_AREA_BASE         0x00600000INFO:0012 00:00:00.245 Normal reboot - count:4.NOTICE:0013 00:00:00.115 wiced_ota2_network_up: STA start YOUR_APJoining : YOUR_AP[2024-11-12 09:07:16.995]RX:Failed to join : YOUR_APWARNING:0014 00:00:07.126 wiced_ota2_network_up: wiced_join_ap_specific() failed (NOT Found)! - we will not retry 1024ERR:0015 00:00:07.636 wiced_ota2_network_up() failed.ERR:0016 00:00:07.640 init: Bringing up network interface failed!DEBUG0:0017 00:00:07.646 Begin ota2_test mainloop                        

回帖(1)

艾玛

2025-7-14 17:35:29

根据您提供的日志信息,设备初始化成功,但未启动AP模式。以下是问题分析和解决步骤:


问题原因分析:




  1. AP模式未显式配置

    日志显示设备已加载WLAN固件,但未进入AP模式(无SSID广播或AP接口启动日志)。默认启动后设备通常处于STA模式(客户端),除非代码中明确配置了AP模式。




  2. 启动流程缺失关键步骤

    OTA2启动AP需要以下代码支持:



    • 配置AP参数(SSID、安全模式、信道等)

    • 调用 wiced_ap_start() 启动AP接口




  3. 日志截断

    您提供的日志末尾不完整(Creation: 2020-...),可能遗漏了关键错误信息。






解决步骤:


1. 检查代码中的AP配置


确保在应用代码中正确配置AP模式,例如:


   wiced_ap_config_t ap_config = {
       .ssid = "OTA_AP",
       .security = WICED_SECURITY_OPEN, // 或 WPA2_SECURITY
       .channel = 1,
   };
   wiced_result_t result = wiced_ap_start(&ap_config);

如果使用回退AP(fallback AP),需在STA连接失败后启动AP:


   if (wiced_sta_connect() != WICED_SUCCESS) {
       wiced_ap_start(&ap_config); // STA连接失败时启动AP
   }

2. 验证OTA2启动流程


ota2_fallback_ap.c(或类似文件)中确认以下流程:



  • 初始化阶段:调用 ota2_framework_init()

  • AP配置:检查 ota2_get_fallback_ap_config() 是否返回正确的AP参数

  • AP启动:搜索 wiced_ap_start() 调用位置


3. 启用调试日志


Makefilewiced_config.h 中增加调试级别:


   #define WICED_VERBOSE_LOGGING (1)  // 启用详细日志
   #define WLOG_LEVEL WLOG_DEBUG     // 设置日志级别为DEBUG

重新编译后观察完整日志,检查以下关键信息:



  • Starting OTA2 Fallback AP...

  • AP started with SSID: ...

  • 任何 wiced_ap_start failed: 错误


4. 检查内存分配


AP模式需额外内存。在 wiced_config.h 中确保:


   #define WICED_USE_AP_MODE (1)
   #define WICED_PACKET_POOL_SIZE (4096) // 至少4KB

5. 验证硬件支持


确认固件支持AP模式:


   WLAN Firmware: wl0: ... FWID 01-d4dbc762  # 检查版本是否支持AP

若版本过旧,更新固件到最新版本(通过WICED SDK的 firmware 目录)。




快速修复建议:



  1. 强制启动AP

    在初始化代码后直接启动AP(临时测试):
    void application_start()
    {
       wiced_init();
       // ...其他初始化
       wiced_ap_start(&ap_config); // 强制启动AP
    }

  2. 检查OTA2配置宏

    确保启用OTA2和Fallback AP:
    #define OTA2_ENABLE_FALLBACK_AP (1)




常见错误日志:



  • AP start failed: WICED_NOT_UP → STA接口未初始化(先调用 wiced_network_up()

  • Not enough memory → 增加数据包池大小(WICED_PACKET_POOL_SIZE

  • Unsupported security mode → 检查 ap_config.security 是否使用芯片支持的安全协议


通过以上步骤,您应能定位并解决AP未启动的问题。如果仍有异常,请提供完整日志(尤其是末尾错误信息)进行进一步分析。

举报

更多回帖

发帖
×
20
完善资料,
赚取积分