nRF9160: LwM2M carrier
The LwM2M carrier sample demonstrates how to run the LwM2M carrier library in an application in order to connect to the operator LwM2M network.
Requirements
The sample supports the following development kit:
Hardware platforms |
PCA |
Board name |
Build target |
---|---|---|---|
PCA10090 |
|
When built for an _ns
build target, the sample is configured to compile and run as a non-secure application.
Therefore, it automatically includes Trusted Firmware-M that prepares the required peripherals and secure services to be available for the application.
Building and running
This sample can be found under samples/nrf9160/lwm2m_carrier
in the nRF Connect SDK folder structure.
When built as a non-secure firmware image for the _ns
build target, the sample automatically includes the Trusted Firmware-M (TF-M).
See Building and programming an application for information about how to build and program the application and Testing and debugging an application for general information about testing and debugging in the nRF Connect SDK.
Testing
After programming the sample and all prerequisites to the development kit, test it by performing the following steps:
Connect the USB cable and power on or reset your nRF9160 DK.
Open a terminal emulator and observe that the kit prints the following information:
LWM2M Carrier library sample.
Observe that the application receives events from the LwM2M carrier library using the registered event handler.
Troubleshooting
Bootstrapping can take several minutes.
This is expected and dependent on the availability of the LTE link.
During bootstrap, the application will receive the LWM2M_CARRIER_EVENT_LTE_LINK_UP
and LWM2M_CARRIER_EVENT_LTE_LINK_DOWN
events.
This is expected and is part of the bootstrapping procedure.
For more information, see the LwM2M carrier library events and Message sequence charts sections in the LwM2M carrier library documentation.
To completely restart and trigger a new bootstrap, the device must be erased and re-programmed, as mentioned in Application integration.
Dependencies
This sample uses the following nRF Connect SDK libraries:
nRF Connect SDK modules abstracted by the LwM2M carrier OS abstraction layer (
lwm2m_os.h
)
It uses the following sdk-nrfxlib library:
In addition, it uses the following secure firmware component: