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.

CC3220MOD: WIFI Profile

Part Number: CC3220MOD

I am trying to setup profiles from webpage /settings.html for the device running STA mode to join a WIFI network.

having problem to get the settings from application MCU side, how to receive the profile settings in a callback function?

which processor is responsible for persisting the profile list? I am using FreeRTOS CC332330MOD platform.

Thanks

-Y. Z

  • correction: FreeRTOS CC3220 platform

  • Hi Y. Z,

    The addprofile and getprofile commands network terminal example project in the SimpleLink CC32xx SDK demonstrate the Host Driver API calls sl_WlanProfileGet() and slWlanProfileAdd() than can be used to read and add profiles from the host side. I recommend looking at the network terminal example to see how this code is implemented.

    The profiles are saved into the device serial flash memory and the Network Processor is responsible for executing the provisioning process. See Section 16 of the NWP User's Guide (specifically Figure 16-2) for more info.

    Best regards,

    Jesse

  • Hi, Jesse, 

    I will give it a try, thanks

    Yong

  • Hi Jesse,

    network terminal takes user input from uart for a new profile, what I tried to do is to get profile parameters from webpage ip/settings.html (profile tab), I could already use sl_WlanProfileGet to read SSID, priority set in the html but not getting the "key". How to get the "key" (passcode), or it is not readable?.

    The goal is to add the profile and save it for STA to join at startup.

    Thanks

    Yong 

  • Hi Yong,

    sl_WlanProfileGet() only includes the public information of the profile. The password is not accessible from the host.

    Once your profile is added and stored, when the device is started in station mode, assuming default configuration, the device should try to connect to an AP from the stored profiles based on priority. On the connection attempt, the device selects the highest priority profile. If several profiles are within the same priority, the decision is made based on the security type (WPA3>WPA2+PMF>WPA \WPA2>WEP>OPEN). If the security type is also the same, the selection is based on the received signal strength.

    This is outlined in sections 4.3.1, 4.3.2, and 4.3.3 of the NWP Guidesl_WlanPolicySet() is used to set the auto connection policy as described in section 4.3.3.1

    Best regards,

    Jesse

  • Hi Jesse,

    Thanks for the pointers, I do not have problem getting STA working with known hardcoded profile or a profile from uart input,

    Here are my questions and what I am heading to, correct me if I am wrong

    1. I used webpage settings.html to add just one profile, received a HttpServerEvent from MCU side, an unused function

       does MCU needs to take any action on the HttpServerEvent ? or nothing need to be done from MCU side for this new added profile?

    2. configure the device in the same webpage to set it to STA mode, 

      I am trying for the STA to join a router/AP by sl_WlanProfileGet the added profile in step 1 and use returned params from the

     sl_WlanProfileGet(....., &prames,....)  to make call sl_WlanConnect (..... params....);

    --------------------------------------------------------------------------------------------------------------------------------

    void start_sta_join (void)         CC3220SFMOD freeRTOS platform

    {

    ATCmdWlan_ProfileGet_t params;

    for i = 0; i < 7; i++             search a profile, there is only one there added

    ret = sl_WlanProfileGet(i, (signed char *)params.ssid,&ssidLen, params.bssid, &params.secParams,
    params.secParamsEnt,(unsigned long *)&params.priority);

    if ( ! (ret < 0) )

    ret = sl_WlanConnect(params.ssid, strlen(params.ssid), 0, &params.secParams, 0);

    }

    -------------------------------------------------------------------------------------------------------------------------------------

    The problem is that MCU is not getting the profile, call return a ret < 0,

    Please let me know if MCU side can start STA and join as it is done above, or it is wrong, and should take other approach.

    Thanks

    Yong

  • Hi Yong,

    Once the profile is added to the device via HTTP POST, if you set the role as a STA using sl_WlanSetMode(ROLE_STA) and then use sl_Stop / sl_ Start to reset the NWP, the device should automatically try to connect to the AP using your stored profile if auto connection policy is set.

    You should not need to use sl_WlanProfileGet and sl_WlanConnect to connect to stored profiles, because sl_WlanProfileGet will not return the key or key length for security reasons. Stored profiles were designed to be used with auto connection.

    What you are trying to achieve sounds similar to the Out of Box and Provisioning demos from the SDK. Have you taken a look at these examples?

    Best regards,

    Jesse

  • Hi Jesse,

    The problem has been resolved, thanks for your help.

    Best Regards

    Yong