Cellular X-CUBE-CELLULAR

Revision as of 11:02, 3 March 2021 by Registered User

Click here for Cellular overview

1. Introduction

This wiki page contains information to help the user navigate ST Cellular software. When the information is already present in a databrief or a user manual, this wiki redirects to those reference documents. While this wiki does not contain all of the information, it helps you to find it.

2. X-CUBE-CELLULAR versions

Since the initial version V1.0.0 in mid-2018, the software content and hardware support have increased continuously.
The current version V6.0.0 support the following hardware configuration:
P-L496G-CELL02 (Pack with a screenless Discovery L496 associated with a STMod+ BG96 Quectel modem)
B-L4S5I-IOT01A (STM32L4+ Discovery kit IoT node)
32L496GDISCOVERY (Discovery kit with STM32L496AG MCU)
STEVAL-STWINKT1 (STWIN SensorTile Wireless Industrial Node development kit and reference design for industrial IoT applications)
B-L462E-CELL1 (Discovery board with T1SE Murata module (STM32 L462, ST4SIM, ALT1250 modem)
X-NUCLEO-STMODA1 (STMod+ connector expansion board for Arduino connectors)
STEVAL-STMODLTE (STMod+ modem board with Quectel BG96 modem)
GM01Q (STMod+ modem board with Sequans modem)


For all the HW setup, an application, Cellular_APP, is provided. It demonstrates only the Cellular possibilities (no sensors, display ...).
For the STMicroelectronics / Murata setup, more materials are provided like BSP for sensors, BSP for display, and vertical examples. By vertical it means a complete application that read sensors, displays information on the screen and exchange data over Cellular with the cloud.

For the complete description of deliveries (software and supported hardware), refer to the release notes included in the X-CUBE package.

3. What is X-CUBE-CELLULAR?

X-CUBE-CELLULAR used for? It is used to allow applications to send and receive data on the cellular network using BSD API sockets.

Remember that through the official web page on X-CUBE-CELLULAR on st.com you have access to multiple resources (software, documents, and so on).

X-CUBE-CELLULAR consists of a set of libraries and application examples for STM32L4 Series MCUs acting as hosts for cellular connectivity applications.



The colors help to understand the different parts, Green for applications, light Blue for Middlewares, dark Blue for HAL, Purple for hardware.
Note that above the Cellular Middleware there is the Network_Library Middleware, which abstracts the cellular, Wifi, Ethernet and so on, so an application using Network_Library APIs running on a bearer can easily be ported to another technology. Also note that it is not mandatory to use Network_Library APIs - an application using only cellular can directly use X-CUBE-CELLULAR APIs.

4. Applications provided in V5.2.0

Several applications are provided as examples:

  • The PING client application to test the access to a remote machine
  • The ECHO client application to provide an example of connection and data exchanges using the TCP or UDP (connected or not-connected mode) socket protocols
  • The HTTP client application to exchange data between the device and the cloud using the HTTP protocol
  • The MQTT client application to exchange data between the device and the cloud using the MQTT protocol (this uses TCP)
  • The COM client application to test the access to COM library services such as read information from ICC
  • The CUSTOM client application - an empty application already pre-integrated in X-CUBE-CELLULAR. This is provided to ease customer developments.

By default, only one application is started at boot: ECHO client.
The PING client is in fact more a command than an application, so it starts when the command is entered.
Similarly, the COM client is a command.
The HTTP client is by default stopped - to start it just enter the following command: http on (http off to stop it).
The CUSTOM client must be activated with the compilation switch, once activated by default this application only displays a message to which the user may add his own content.
The MQTT client is more complicated to activate because it uses Network_Library and MbedTLS Middleware, but it is quite easy to activate following the README.txt file. See below for more details about the MQTT client.

X-CUBE-CELLULAR also contains modular tools such as Command (to interact with the firmware through the terminal) and setup menu (to set parameters in the firmware to avoid a new compilation).

5. What is the getting started user manual?

This user manual is a simple and short document to read first. It explains the basics to: connect the hardware, activate the eSIM, program the on-board firmware and to run it; all this information in less than 10 pages.

6. How to ...

This part is a guideline that describes how to perform the main activities with X-CUBE-CELLULAR. All the information is merged in the X-CUBE-CELLULAR How To Wiki page

7. FAQ

All the frequently-asked questions are listed in the dedicated X-CUBE-CELLULAR F.A.Q page