Host-side firmware for Nordic Smart Modem modules. This repository is built on nRF Connect SDK (NCS) and follows the modular zbus + SMF architecture used by the Asset Tracker Template.
Supported product targets:
- 91m1_ppp: PPP host application for the nRF91M1 Smart Modem
- 93m1_ppp: PPP host application for the nRF93M1 Smart Modem
- 93m1_at: AT host application for the nRF93M1 Smart Modem
| Path | Purpose |
|---|---|
west.yml |
West manifest, pins the NCS and Memfault SDK revisions |
zephyr/module.yml |
Registers this repo as a Zephyr module |
lib/include/ |
Shared headers (app_common.h) |
cmake/ |
Shared CMake helpers (merged_hex.cmake) |
applications/91m1_ppp/ |
nRF91M1 PPP host application |
applications/93m1_ppp/ |
nRF93M1 PPP host application |
applications/93m1_at/ |
nRF93M1 AT host application |
docs/ |
Documentation site source (application guides, CI and contribution, release artifacts) |
scripts/ |
CI and gitlint helper scripts |
tests/on_target/ |
On-target (hardware-in-the-loop) test suite |
-
Install nRF Util by following the instructions in the nRF Util documentation.
-
Install the SDK manager command:
nrfutil install sdk-manager
-
Install the nRF Connect SDK toolchain (v3.4.0, matching
west.yml):nrfutil sdk-manager install v3.4.0
Before initializing, start the toolchain environment:
nrfutil sdk-manager toolchain launch --ncs-version v3.4.0 --shellTo initialize the workspace folder (smha-workspace) where the firmware project and all nRF Connect SDK modules will be cloned, run:
west init -m https://github.com/nrfconnect/ncs-serial-modem-host-applications --mr main smha-workspace
cd smha-workspace/project
west updateThe repository is now cloned into the smha-workspace/project folder, the west modules are downloaded, and you are ready to build an application.
Alternatively, download pre-built firmware from the latest release and flash it directly. See Release artifacts for bundle names, file descriptions, and flash commands.
Follow the application documentation for hardware setup, build, flash, and (where applicable) cloud provisioning:
| Application | Documentation | Cloud connectivity |
|---|---|---|
| 91m1_ppp | docs/applications/91m1_ppp/ | Host terminates CoAP/DTLS to nRF Cloud itself. PPP just carries IP to the nRF91M1 modem |
| 93m1_ppp | docs/applications/93m1_ppp/ | Host terminates CoAP/DTLS to nRF Cloud itself. PPP just carries IP to the nRF93M1 modem |
| 93m1_at | docs/applications/93m1_at/ | Modem terminates the connection itself with its built-in AT client. Host just sends AT commands |
See CI and contribution for continuous integration, releases, and commit message guidelines. Pre-built firmware bundles are described in Release artifacts.
See LICENSE.