Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

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.

LAUNCHCC3220MODASF: Implementing GSM Communication with CC3220 Launchpad

Hello TI, E2E community,

 I am currently working on a project where I need to establish communication between an MCU (specifically the CC3220 Launchpad) and a GSM modem using AT commands via UART. Furthermore, I aim to establish network communication between the MCU and the GSM modem using protocols like PPP, ultimately allowing internet access through the GSM modem.

I have successfully implemented these steps on an ESP32 MCU by connecting it to a GSM modem via UART and using the provided IP by the modem to access the internet. Now, I am exploring the possibility of replicating this implementation on the CC3220 Launchpad.

I would greatly appreciate any guidance, tips, or resources that could help me achieve this goal on the CC3220 Launchpad. Additionally, if anyone has prior experience or insights into similar projects or implementations, I would be eager to learn from your expertise.

  • Hi,

    Can you elaborate on the architecture that you are looking for?

    The ESP+GSM setup sounds like the GSM modem provides all the networking capabilities and the ESP is just the application processor that connects over a simple UART interface (or any other interface). Is this correct?

    Why do you want to use CC3220? just for the application processor or do you have any requirements for Wi-Fi communication?

    I am just trying to understand if Wi-Fi is needed and for what purposes.

    Regards,

    Shlomi

  • Hi,

    The architecture for an ESP+GSM setup includes:

    1. ESP module as the application processor.
    2. GSM modem for cellular connectivity.
    3. Interface (e.g., UART) for communication between ESP and GSM modem (point-to-point protocol (PPP) for internet connectivity).
    4. Application logic on the ESP for data processing.
    5. Power supply for both modules.


    "The ESP+GSM setup sounds like the GSM modem provides all the networking capabilities and the ESP is just the application processor that connects over a simple UART interface (or any other interface). Is this correct?"

    Yes, you are right. The ESP can then use the GSM modem to send and receive data over the cellular network for various IoT applications.

    Our project requires collecting sensor data via Modbus and sending it to the Azure IoT hub. We prioritize using WiFi for internet access, with a cellular modem as a backup in remote areas. The MCU should support both WiFi and cellular modem connectivity.

    Our client requires porting from ESP to TI, so we initiated the porting process with CC3220MODASF Launchpad. We have successfully tested all applications via WiFi. Currently, we are encountering challenges in integrating a cellular modem into CC3220MODASF Launchpad


  • Hi,

    There is no PPP protocol in the network stack of CC3220 but I don't think that it is needed in your case.

    If the ESP serves as an application processor only and interacts with the GSM modem to get to the internet, then I believe you can simply port the code to the CC3220 and you should be fine on the GSM path.

    As you mentioned, on the Wi-Fi part seems you are already up to speed.

    What is the challenge on the cellular part? how did you communicate with the GSM modem when using ESP (UART interface? what protocol?)? it should be similar as far as I see it unless I am missing something.

    Regards,

    Shlomi

  • Hi,

    Just a quick comment.

    I think main task it to connect socket code managed by WiFi and GSM modem. This can be done via own implementation of GSM code for SlNet layer (PPP, PAP/CHAP, TCP/IP stack). Another option may to be bypass NWP TCP/IP stack and use them at application processor.

    btw ... why use PPP with GPS modem. As far I know, almost all modern GSM/LTE modems supports TCP/IP over AT commands.

    Jan

  • Hi @,

    " I believe you can simply port the code to the CC3220 and you should be fine on the GSM path"

    Can you explain how I can do it?

    "What is the challenge on the cellular part? how did you communicate with the GSM modem when using ESP (UART interface? what protocol?)? it should be similar as far as I see it unless I am missing something"

    You mentioned that "There is no PPP protocol in the network stack of CC3220." How can we integrate a GSM modem with CC3220?
    Our requirement is to send and receive data from the MCU via the GSM once a data connection is established between the GSM and MCU.

    When using ESP, connect the GSM modem to ESP via UART and communicate with AT commands (command mode) to establish a PPP connection between them using the appropriate AT command (AT+PPPSTART) (data mode). The modem will then provide an IP address attached to the ESP network interface (esp_netif), allowing data to be sent and received from the ESP.

    Has anyone integrated a GSM modem with CC3220 before? If so, how was it done?


  • Hi@

    "This can be done via own implementation of GSM code for SlNet layer (PPP, PAP/CHAP, TCP/IP stack). Another option may to be bypass NWP TCP/IP stack and use them at application processor"

    Can you explain how I can do this? Is it possible to achieve using AT commands via UART?

    "why use PPP with GPS modem. As far I know, almost all modern GSM/LTE modems supports TCP/IP over AT commands"

    Our requirement is to send and receive data from the MCU via the GSM once a data connection is established between the GSM and MCU, so we are using PPP.



  • Hi,

    CC3220 have different architecture than ESP32. CC3220 have TCP/IP stack at "WiFi coprocessor" (NWP). That means there is no TCP/IP stack at application processor (Cortex-M4 processor which runs your code) by default. You need have point where will be connected both socket sources (WiFi from NWP, and from GSM). Natural way is connect this at SlNet layer. This is similar way as done at MSP432E4 with CC31xx and MAC+PHY at MSP432E4. If you are familiar with some TCP/IP stack (e.g. LwIP) it may be easier way bay-pas NWP TCP/IP stack. Choice is up to you, you are programmer.

    If you are asking if this is achievable, I will answer it is definitely. Implementation will be up to you, because there is no example of such use case.

    From you answers above, I think you are not understanding what is purpose of ppp protocol when is GSM used. PPP is just a wrapper around TCP/IP with service protocols CHAP/PAP. If you have smart GSM modem, you can avoid using ppp (and TCP/IP stack at your processor) and use AT commands for TCP/IP. More detail discussion about ppp is far of purpose of this forum.

    Jan

  • Hi,

    I am new to TI and have only worked with ESP. Can I achieve GSM integration on the CC3220 module via Slnet API? The communication between the application processor and network processor is only through Slnet API, am I right? Can you help me with the API functions required to bind the network of GSM and CC3220?

  • Hi,

    Communication with NWP is done via sl_ API layer. Slnet is layer above, which encapsulate network sockets. It allow to have multiple socket sources (e.g. WiFi, Ethernet). For your purpose you need to create own implementation of Slnet for GSM modem. This can be done via TCP/IP stack with ppp support (e.g. LwIP, NetX Duo) or using TCP/IP over AT commands (if this feature is supported by your GSM modem). I think closest architecture example is MSP430E4 + Ethernet + CC31xx WiFi.

    I am sorry, but I cannot help you by creating your implementation. But if you will some specific question, don't afraid to ask.

    Jan

  • Hi,
    Is there any documentation or information available for TCP/IP stack implementation on cc3220?
    Can you provide details about the individual who previously worked on implementing the TCP/IP stack on cc3220?

  • Hi,

    There is no official document to using external TCP/IP stack (e.g. LwIP) at CC3220, because this generally not needed due to internal TCP/IP stack at NWP.

    From the past I rememberer some e2e forum users which used external TCP/IP stack at CC32xx / CC31xx devices for WiFi at baypass mode like this. But do not expect, that someone else that you will do such task for you.

    Jan