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.

CC3220SF-LAUNCHXL: Provisioning using Smart config and Bulk provisioning using SC.

Part Number: CC3220SF-LAUNCHXL

Hi support.


I am using Simplelink Wi-Fi starter Pro mobile application to provision my simplelink device in AP+SC mode. I was just wondered how does the simplelink device provisioned in Smart config mode, which is not even connected to an AP prior to provisioning, knows that the encrypted packets (in an Unknown network) are intended to them. Can you please briefly explain how the Brodcasting of the AP details are done and how SmartConfig works. Also, how the simplelink devices understand that the encrypted packets in the network are intended for them.

I have one more question regarding Smart Config provisioning. When the device connects to the AP in Smart Config provisioning, how will the mobile app get to know the IP address (after connecting to AP) of the device and establish an HTTP connect and send the provisioning successful confirmation to the device back? Even since mobile app and the Device are in same network but how does mobile app know the exact IP address of the device?

In that case, if I use smart config to provision multiple devices in one shot, will the mobile app be able to fetch the IP addresses of all the device at once and send the confirmation to all the devices at a time.

Thanks,
Sai Jnaneswar Juvvisetty

  • The smart config is a proprietary method that we use. It requires that the devices will listen for the specific broadcasts from the phone and doesn't use any acknowledgement (thus is can work with several device in parallel). If you encrypt the broadcast info with an AES key, then all the stations would need the same key.

    There is not an easy way to get the IP address of the newly provisioned device MDNS is first option for the device to broadcast itslef. UDP broadcasts will be another method we use.

    If you are using SC for provisioning of multiple devices simultaneously - you will need to implement you own way of confirmation (the default method that we use is for one device). You can also use an external (cloud) feedback for the confirmation.

    See more details in https://www.ti.com/lit/pdf/swra513

  • Hi Kobi,

    Thanks for the response.

    I have gone through the document that you have shared in the earlier post. Since I want to use SC mode for provisioning simplelink devices in my project for bulk provisioning, I would like to get few more technical details or concepts regarding this.
    It seems like that the mobile app is broadcasting the packets into the network (with the default gateway address) and the devices which are in the vicinity of the network gets the packets verified by the encryption key and decrypt them.

    But when exploring about this, I have gone through few external blogs and documents provided by the TI. It seems that the mobile app is setting the IP address of the default gateway as the destination address to which the encrypted packets are sent. Is this true?
    And this default gateway is responsible for broadcasting the packets to outside the network (since the simplelink devices are outside the network). Can you please give me more insights of it how it works to get a clear idea? 

    Please let me know is my understanding correct to get clear picture.

    Also please let me know whether the UDP packets are broadcasted by Mobile App or the Default Gateway. 

    For your reference, please look into the links that I am referring.

    https://community.particle.io/t/smart-config-the-missing-manual-now-available/442

    SimpleLinkTm Wi-Fi® CC3x20 and CC3x3x Provisioning for Mobile Applications (Rev. B)

  • Typical broadcast is sent from a station (e.g. the mobile phone) to the AP (which usually also serves as GW) which then sends it as broadcast to all connected stations (e.g. the simplelink devices).

    However, this is not the case in SC - the mobile phone sends multiple unicast UDP packets to the AP (GW) which are being ignored. The simplelink (in provisioning mode) devices in the proximity of the mobile phone are monitoring (scanning) the channels and identifies the SC packets by its pattern and then gather (using the proprietary algorithm) the encrypted content (that they can then decrypt with the AES key).

    Note that the Smart-Config has some limitations - the CC3220 is only able to detect packets if they are sent using its supported modulations, so it will only work if the network is on the 2.4GHz band and the data is sent using 11bgn rates. 

  • HI Kobi 

    Thanks for the response. 

    I have been doing a small experiment regarding the same. I tried sniffing the packets that are available in the network traffic. Below is the scenario to give a clear idea of what has been done.

    I have a router connected to the PC using the Ethernet cable for sniffing packets using Wireshark. I have also connected the mobile to the same router's SSID. Later when the simplelink device came into provisioning mode (AP+SC mode), I provisioned the device using smart config enable with the same router credentials. At the device end profile has been added and also acquired IP address. 

    The interesting part is, there are UDP packets being transmitted from Mobile app to some random destination address (224.0.0.235) but not to the default gateway (whose IP address is 192.168.0.1). It seems that the IP address starting from 224 are used for multicasting. Which then implies that the UDP packets are broadcasted.

    Please use the below image for reference:

    Note: 192.168.0.105 is the IP address assigned to the Mobile.

    Can you me some please clarity why the destination address is not Default gateway but some random multicast address and also please let me know if this approach is correct. If not, please suggest a correct approach to verify the same.

    Regards,

    Sai Jnaneswar

  • Indeed seems that it is multicast and not unicast but it is not important.

    The only thing that is important is that the SimpleLink device (running SC) knows how to identify the patterns and how to gather the relevant info from them.