Using AT&T's IoT Dev Kit

In the Zephyr microPlatform update 0.13, we have released support for the AT&T IoT Starter Kit (LTE-M).

With the following instructions, you can start using Zephyr and the IoT Starter Kit with LWM2M in a matter of minutes.

Hardware Requirements

AT&T device setup

To provision your device for use on AT&T's network, you will need to follow the AT&T guide available here:

Key items include:

Zephyr microPlatform Software Requirements

  • As this support is part of a subscriber update, you'll need to set up a subscription account on
  • Install the Zephyr microplatform. You're using FRDM-K64F instead of BLE Nano 2, but you must still install PyOCD. Make sure to use -b frdm_k64f instead of -b nrf52_blenano2 in any zmp command lines.

Enable Logging and network subsystem

In your Zephyr microlatform installation directory, create the file zephyr-fota-samples/dm-lwm2m/boards/frdm_k64f-local.conf with the following contents:

# This setting is not important, it is used to configure the network subsystem
# For this application's default configuration, which isn't what you're using here.

# Optional configuration options, uncomment to show more debug output:

Build and flash the sample to the Freedom K64F board (from the IoT Dev Kit)

Connect the FRDM-K64F to the workstation where you have installed the Zephyr microPlatform, and connect to its console device at 115200 baud, 8N1.

Now, run these commands from its installation directory:

./zmp build --board frdm_k64f --overlay-config "boards/wcn14a2a.conf" zephyr-fota-samples/dm-lwm2m
./zmp flash --board frdm_k64f zephyr-fota-samples/dm-lwm2m

The console may pause for about a minute after the bootloader starts the application, during modem initialization. (A future Zephyr microPlatform update will modify the application to print debug output earlier.)

After modem initialization, the board will register via LWM2M to the public Eclipse Leshan server at

Find your device id

In the future we will provide an update that uses the modem IMEI as an identifier, so the device is easier to see in the cloud Leshan server it will register with.

For now, you will need to look for the Registration Done (EP='') line in your board's console output:

[0731130] [lib/lwm2m_rd_client] [INF] do_registration_reply_cb: Registration Done (EP='A1ENFQxI3j')

This will be the "Registration ID" on the Leshan client list at

Confirm that Leshan UI displays your connected device

Find your device in the Leshan client list, and select it.

Find the board under the "Client Endpoint" list. The endpoint is generated semi-randomly using unique data from the device to ensure that each endpoint name is unique.

Leshan Demo Server client list

You can now interact with the device using LWM2M.

CAUTION: If you do not have good LTE signal, the device will not stay on-line for very long.

Keep up to date with