Skip to content

Commit 19116b2

Browse files
committed
Update FreeRTOS Cellular Library
Update FreeRTOS Cellular Library
1 parent 6a76d10 commit 19116b2

6 files changed

Lines changed: 15 additions & 15 deletions

File tree

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
# FreeRTOS Labs - Cellular Demo
1+
# FreeRTOS Labs - FreeRTOS Cellular Library Demo
22

33
## Introduction
44

5-
FreeRTOS offers a suite of networking stacks designed for IoT applications. Applications can access communication protocols at different levels - MQTT, HTTP, Secure Sockets, etc. Common connectivity technologies such as Ethernet, Wi-Fi and BLE have been integrated with the networking stacks of FreeRTOS, with a [wide selection of microcontrollers and modules](https://devices.amazonaws.com/search?page=1&sv=freertos) pre-integrated.
5+
FreeRTOS offers a suite of networking stacks designed for IoT applications. Applications can access communication protocols at different levels - MQTT, HTTP, Secure Sockets, etc. Common connectivity technologies such as Ethernet, Wi-Fi and BLE have been integrated with the networking stacks of FreeRTOS, with [a wide selection of microcontrollers and modules](https://devices.amazonaws.com/search?page=1&sv=freertos) pre-integrated.
66

7-
The demos in this project demonstrate how to establish mutually authenticated MQTT connections to MQTT brokers, such as AWS IoT Core, by using cellular connectivity. The demos use the [Cellular HAL libraries](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-HAL/raw/main/doc/document/cellular.zip) sub-moduled from an external project. The Cellular HAL libraries expose the capability of a few popular cellular modems through a uniform API.
7+
The demos in this project demonstrate how to establish mutually authenticated MQTT connections to MQTT brokers, such as AWS IoT Core, by using cellular connectivity. The demos use the [FreeRTOS Cellular Library](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Library/raw/main/doc/document/cellular.zip) sub-moduled from an external project. The FreeRTOS Cellular Library exposes the capability of a few popular cellular modems through a uniform API.
88

99
1. Quectel BG96
1010
2. Sierra Wireless HL7802
1111
3. U-Blox Sara-R4
1212

13-
The MQTT and HTTP libraries of FreeRTOS use an abstract [Transport Interface](https://github.com/FreeRTOS/coreMQTT/blob/main/source/interface/transport_interface.h) to send/receive data in a generic way. The demos in this project offer a [implementation](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/master/source/coreMQTT/using_mbedtls.c) of the Transport Interface on top of the uniform API exposed by the Cellular HAL libraries.
13+
The MQTT and HTTP libraries of FreeRTOS use an abstract [Transport Interface](https://github.com/FreeRTOS/coreMQTT/blob/main/source/interface/transport_interface.h) to send/receive data in a generic way. The demos in this project offer a [implementation](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/master/source/coreMQTT/using_mbedtls.c) of the Transport Interface on top of the uniform API exposed by the FreeRTOS Cellular Library.
1414

1515
## Hardware Setup
1616

@@ -44,14 +44,14 @@ Figure 1. Components and Interfaces</p>
4444

4545
The other components shown as blue boxes and dotted lines are implemented by this project:
4646

47-
1. The [Demo Application](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/main/source). It is largely the same as the [coreMQTT demo](https://github.com/FreeRTOS/FreeRTOS/tree/master/FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth), with added logic to set up cellular as the transport. (The original coreMQTT demo was designed for Wi-Fi on FreeRTOS Windows Simulator.) There is also a demo application that integrates [1nce Zero Touch Provisioning](https://1nce.com/en/help-center/tutorials-documentations/1nce-connectivity-suite/) with the Cellular HAL and coreMQTT for connecting to AWS IoT Core.
47+
1. The [Demo Application](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/main/source). It is largely the same as the [coreMQTT demo](https://github.com/FreeRTOS/FreeRTOS/tree/master/FreeRTOS-Plus/Demo/coreMQTT_Windows_Simulator/MQTT_Mutual_Auth), with added logic to set up cellular as the transport. (The original coreMQTT demo was designed for Wi-Fi on FreeRTOS Windows Simulator.) There is also a demo application that integrates [1nce Zero Touch Provisioning](https://1nce.com/en/help-center/tutorials-documentations/1nce-connectivity-suite/) with the FreeRTOS Cellular Library and coreMQTT for connecting to AWS IoT Core.
4848
2. The [Transport Interface](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/main/source/coreMQTT/using_mbedtls.c) is needed by the MQTT library (sub-moduled from the [coreMQTT](https://github.com/freertos/coreMQTT) project) to send and receive packets.
4949
3. The[TLS porting interface](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/main/source/mbedtls/mbedtls_freertos_port.c) is needed by the mbedTLS library to run on FreeRTOS.
50-
4. The [Comm Interface](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/main/source/cellular/comm_if_windows.c) is used by the Cellular HAL libraries to communicate with the cellular modems over UART connections.
50+
4. The [Comm Interface](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/main/source/cellular/comm_if_windows.c) is used by the FreeRTOS Cellular Library to communicate with the cellular modems over UART connections.
5151

5252
## Developer References and API Documents
5353

54-
Please refer to [cellular HAL library API document.](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-HAL/raw/main/doc/document/cellular.zip)
54+
Please refer to [FreeRTOS Cellular Library API document](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Library/raw/main/doc/document/cellular.zip).
5555

5656

5757
## Download the source code
@@ -91,7 +91,7 @@ There is also a demo for 1nce zero touch provisioning with BG96 modem:
9191
./Lab-Project-FreeRTOS-Cellular-Demo
9292
├── lib
9393
│ ├── backoff_algorithm ( submodule : backoffAlgorithm )
94-
│ ├── cellular ( submodule : Lab-Project-FreeRTOS-Cellular-HAL )
94+
│ ├── cellular ( submodule : Lab-Project-FreeRTOS-Cellular-Library )
9595
│ ├── coreMQTT ( submodule : coreMQTT )
9696
│ ├── FreeRTOS ( submodule : FreeRTOS-Kernel )
9797
│ └── ThirdParty
@@ -103,7 +103,7 @@ There is also a demo for 1nce zero touch provisioning with BG96 modem:
103103
│ └── 1nce_bg96_zero_touch_provisioning_demo ( demo project for 1nce zero touch provisioning with BG96 )
104104
└── source
105105
├── cellular
106-
│ └── ( code for adapting Cellular HAL libraries with this demo )
106+
│ └── ( code for adapting FreeRTOS Cellular Library with this demo )
107107
├── coreMQTT
108108
│ └── ( code for adapting coreMQTT with this demo )
109109
├── FreeRTOS

doc/cellular_demo_sequence.png

1.6 KB
Loading

lib/cellular

source/cellular_setup.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
#include <stdlib.h>
3737
#include <stdio.h>
3838

39-
/* Cellular HAL include. */
39+
/* FreeRTOS Cellular Library include. */
4040
#include "cellular_config.h"
4141
#include "cellular_config_defaults.h"
4242
#include "cellular_types.h"

source/coreMQTT/sockets_wrapper.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
/* Sockets wrapper includes. */
3636
#include "sockets_wrapper.h"
3737

38-
/* Cellular HAL api includes. */
38+
/* FreeRTOS Cellular Library api includes. */
3939
#include "cellular_config.h"
4040
#include "cellular_config_defaults.h"
4141
#include "cellular_api.h"

source/main.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ static UBaseType_t ulNextRand;
5151

5252
/*-----------------------------------------------------------*/
5353

54-
/* Cellular HAL init and setup cellular network registration. */
54+
/* FreeRTOS Cellular Library init and setup cellular network registration. */
5555
extern bool setupCellular( void );
5656

5757
/* MQTT demo application. */
@@ -89,8 +89,8 @@ int main( void )
8989
* See https://www.FreeRTOS.org/mqtt_lts/index.html for configuration and usage instructions.
9090
***/
9191

92-
/* Cellular HAL init needs thread ready environment.
93-
* CellularDemoTask invoke setupCellular to init cellular HAL and register network.
92+
/* FreeRTOS Cellular Library init needs thread ready environment.
93+
* CellularDemoTask invoke setupCellular to init FreeRTOS Cellular Library and register network.
9494
* Then it runs the MQTT demo. */
9595
xTaskCreate( CellularDemoTask, /* Function that implements the task. */
9696
"CellularDemo", /* Text name for the task - only used for debugging. */

0 commit comments

Comments
 (0)