If you are having issues with the exercises, please create a ticket on DevZone:
Click or drag files to this area to upload. You can upload up to 2 files.

nRF9160 SiP

The nRF9160 System-in-Package (SiP) is Nordic’s cellular IoT solution supporting both LTE-M and NB-IoT and is the hardware used throughout this course. The nRF9160 SiP consists of an application processor, an LTE modem, an RF Front End (RFFE), a PMIC, passive components, and crystal oscillators. In addition, you need a power source (typically a battery), an (e)SIM, and an LTE antenna. You can also add a dedicated GPS antenna and sensors.

Nordic Semiconductor provides modem firmware binaries to operate the LTE modem, and the nRF Connect SDK as a tool to develop the application which will run on the application core and interface with the modem.

For an exhaustive list of all the nRF9160 features and a more detailed product specification, please visit our Infocenter and the SDK documentation.

This course will focus mainly on application development for the application core and how to interface with the LTE modem using the available libraries in the nRF Connect SDK.

nRF9160 SiP architecture

nRF9160 SiP overview

The application processor runs your application, while the modem runs modem firmware, provided by Nordic as pre-compiled binaries. nRF Connect SDK contains the Modem library, which the application will use to interface with the LTE modem.

The application processor on the nRF9160 SiP is an Arm Cortex-M33 MCU with Arm TrustZone technology. This is relevant because the TrustZone technology enables the separation of a secure and non-secure domain.

nRF9160 application processor overview

At boot-up, the application always starts execution from the secure domain. From there, the Trusted Firmware-M (TF-M) is started, which will configure part of the memory and peripherals as non-secure and then jump to the main application in the non-secure area.

This is all automated by the nRF Connect SDK when building your application for the non-secure domain. As you can see from the figure, the modem library, which interfaces with the LTE modem, is defined in the non-secure domain. Therefore, when building for the nRF9160, you should always build for the non-secure domain.

Communication stack

Below is an illustration of the nRF9160 SiP communication stack. Throughout this course, we will cover different layers and refer back to this diagram. The modem firmware is running on the modem core of the nRF9160 SiP and is provided as a binary. To interface with the modem, we have the Modem Library. On top of there sits all the drivers, subsystems and libraries available in the nRF Connect SDK and at the top is your cellular application.

  • Lesson 2: AT commands library and the LTE link controller library.
  • Lesson 3: Modem library and the layers TCP / UDP and TLS / DTLS.
  • Lesson 4: TCP and TLS, and the MQTT library, an implementation of the TCP-based application layer protocol MQTT.
  • Lesson 5: UDP and DTLS, and the CoAP library, an implementation of the UDP-based transport protocol CoAP.
  • Lesson 6: GPS, and how to interface with it using the GNSS Interface in the Modem Library (not pictured here).

Multi-image build

In nRF Connect SDK Fundamentals, we briefly discussed the concept of multi-image builds. With cellular IoT development, multi-image builds become more relevant because you are developing on the nRF9160 SiP, which is a multi-partition target. As mentioned, any application that wants to interface with the modem needs to run in the non-secure domain, and will therefore be a multi-image build. And even though this happens automatically when building for the non-secure domain, it is useful to know how it works.

All nRF9160 applications (the parent image) require Trusted Firmware-M (the child image) to be programmed together with the actual application. When building an application for the non-secure domain, TF-M is automatically included as the child image, making it a multi-image build.


In a multi-image build, the resulting executable can be found at <build_directory>/zephyr/merged.hex.

Development hardware

For development, Nordic offers the nRF9160 Development Kit (DK) and the Thingy:91 Prototyping Platform.

Both these devices house an nRF52840 board controller that can be used to build a Bluetooth LE gateway, for instance, the LTE Sensor Gateway sample in nRF Connect SDK.

See the table below for the board name to use when building applications for these devices, where ns stand for non-secure

HardwareBoard nameBoard name (nRF52840)
nRF9160 DKnrf9160dk_nrf9160_nsnrf9160dk_nrf52840
Board names for nRF9160 SiP development HW

LTE certification

Both the nRF9160 SiP and the accompanying development hardware have been certified for a broad range of LTE bands globally.

More on this

Cellular devices require some kind of certification, in which the type depends on LTE bands, service provider and operation area. It is often possible to reuse the nRF9160 SiP’s certification in your own device.

See the nRF9160 certifications page for more information.

Register an account
Already have an account? Log in
(All fields are required unless specified optional)

  • 8 or more characters
  • Upper and lower case letters
  • At least one number or special character

Forgot your password?
Enter the email associated with your account, and we will send you a link to reset your password.