Skip to content

Commit 2bce61d

Browse files
authored
Add 1NCE Zero Touch provisioning demo for Quectel GSM Modules (#10)
* Add 1NCE Zero Touch provisioning demo for Quecte GSM Modules
1 parent 25c3ee2 commit 2bce61d

8 files changed

Lines changed: 1599 additions & 3 deletions

File tree

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,10 @@ The demo project files for Visual Studio are named *xyz*_mqtt_mutual_auth_demo.s
8181

8282
* [projects/sim70x0_mqtt_mutual_auth_demo](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/tree/master/projects/sim70x0_mqtt_mutual_auth_demo)
8383

84-
There is also a demo for 1nce zero touch provisioning with BG96 modem:
84+
There is also a demo for 1nce zero touch provisioning with Quectel BG96 & GSM Modules (Tested with M95 & M66) :
8585

8686
* [projects/1nce_bg96_zero_touch_provisioning_demo](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/tree/master/projects/1nce_bg96_zero_touch_provisioning_demo)
87+
* [projects/1nce_qgsm_zero_touch_provisioning_demo](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/tree/master/projects/1nce_qgsm_zero_touch_provisioning_demo)
8788

8889
```
8990
./Lab-Project-FreeRTOS-Cellular-Demo
@@ -97,6 +98,7 @@ There is also a demo for 1nce zero touch provisioning with BG96 modem:
9798
├── projects
9899
│ ├── sim70x0_mqtt_mutual_auth_demo ( demo project for SIMCOM sim7080/sim7090 )
99100
│ └── 1nce_bg96_zero_touch_provisioning_demo ( demo project for 1nce zero touch provisioning with BG96 )
101+
│ └── 1nce_qgsm_zero_touch_provisioning_demo ( demo project for 1nce zero touch provisioning with Quectel GSM Modules )
100102
└── source
101103
├── cellular
102104
│ └── ( code for adapting FreeRTOS Cellular Library with this demo )
@@ -204,7 +206,7 @@ Incoming Publish Message : Hello World!
204206

205207
## Build and run the 1nce zero-touch-provisioning demo
206208

207-
1NCE is a global IoT Carrier specialized in providing managed connectivity services for low bandwidth IoT applications. In this demo, 1NCE service(a 1NCE sim card + AWS IoT device onboarding server) and BG96 cellular module are used to demonstrate how to provision device with zero-touch and connect to AWS IoT core. Refer to the [1nce blueprint for FreeRTOS](https://github.com/1NCE-GmbH/blueprint-freertos), in particular, [this flow chart](https://1nce.com/wp-content/uploads/2020/07/Identity2.png), to learn how the zero-touch-provisioning works.
209+
1NCE is a global IoT Carrier specialized in providing managed connectivity services for low bandwidth IoT applications. In this demo, 1NCE service(a 1NCE sim card + AWS IoT device onboarding server) and supported cellular modules are used to demonstrate how to provision device with zero-touch and connect to AWS IoT core. Refer to the [1nce blueprint for FreeRTOS](https://github.com/1NCE-GmbH/blueprint-freertos), in particular, [this flow chart](https://1nce.com/wp-content/uploads/2020/07/Identity2.png), to learn how the zero-touch-provisioning works.
208210

209211
1. In Visual Studio, open the 1nce_bg96_zero_touch_provisioning_demo.sln project. In this Visual Studio solution file, the macro of `USE_1NCE_ZERO_TOUCH_PROVISIONING` is defined. Please look for `#ifdef USE_1NCE_ZERO_TOUCH_PROVISIONING` in the source files to see how it does differently to provision the device by using the 1nce service. Otherwise, this demo performs the same mutually authenticated MQTT operations as the other demos.
210212
2. [Generate a self-signed certificate and its private key locally.](https://docs.aws.amazon.com/iot/latest/developerguide/create-device-cert.html) Update “[source/demo_config.h](https://github.com/FreeRTOS/Lab-Project-FreeRTOS-Cellular-Demo/blob/main/source/demo_config.h)” with the certificate and private key. These are for the purpose of establishing TLS connection to 1nce server. Note that adding keys into a header file is done for convenience of demonstration only. Production devices should use secure storage to store the keys.

lib/cellular

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio Version 16
4+
VisualStudioVersion = 16.0.29215.179
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "CellularDemo", "WIN32.vcxproj", "{C686325E-3261-42F7-AEB1-DDE5280E1CEB}"
7+
EndProject
8+
Global
9+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
10+
Debug|Win32 = Debug|Win32
11+
EndGlobalSection
12+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
13+
{C686325E-3261-42F7-AEB1-DDE5280E1CEB}.Debug|Win32.ActiveCfg = Debug|Win32
14+
{C686325E-3261-42F7-AEB1-DDE5280E1CEB}.Debug|Win32.Build.0 = Debug|Win32
15+
EndGlobalSection
16+
GlobalSection(SolutionProperties) = preSolution
17+
HideSolutionNode = FALSE
18+
EndGlobalSection
19+
GlobalSection(ExtensibilityGlobals) = postSolution
20+
SolutionGuid = {150F08BF-9D61-4CC2-8DBF-1335172A1EA4}
21+
EndGlobalSection
22+
GlobalSection(TestCaseManagementSettings) = postSolution
23+
CategoryFile = FreeRTOS_Plus_TCP_Minimal.vsmdi
24+
EndGlobalSection
25+
EndGlobal

0 commit comments

Comments
 (0)