Getting Started with nRF9160 DK

If you are using your development kit (DK) for the first time, please visit our out-of-box experience here. This will walk you through the set up of getting your DK connected to nRF Cloud running the Asset Tracker application.

This guide is written for those who are looking to get started with the nRF9160 DK which serves as an evaluation platform for the nRF9160 SiP. The nRF9160 is a System-in-Package (SiP) providing a modem capable of LTE-M, NB-IoT, and GPS connectivity while integrating an ARM 64MHz Cortex-M33, 256k RAM, 1M Flash, ARM Cryptocell 310, PMIC, and a variety of peripherals in a compact 10x16x1.0mm package. Also featured on the DK is the multi-protocol, 2.4GHz nRF52840, allowing for LTE gateway applications with BLE, Zigbee, Thread, etc.

An overview of the board can be found in the picture below, marked for reference in the sections to follow.

Contents

Requirements

  • Windows, macOS, Linux PC
  • nRF9160 DK, find a distributor here
  • nanoSIM card supporting LTE-M (iBasis SIM shipped with latest DK)
  • microUSB cable

The below steps were developed on a Windows 10 PC but the steps should be similar for macOS and Linux.

Installing nRF Connect for Desktop, Getting Started Assistant, & LTE Link Monitor

  1. Download and install nRF Connect for Desktop by going here. Be sure to select the correct OS. At the time of writing, the latest version on the website was v2.6.0.
  2. Open nRF Connect after installation. Check for updates by going to the Settings tab and clicking “Check for updates now.” At the time of writing, the version after updating in the application was v2.6.1.
  3. Go to “Add/remove apps” and install both the “Getting Started Assistant” and “LTE Link Monitor."
  4. (optional) If you would like to uninstall unofficial versions of apps, you can navigate to C:\Users\<username>\.nrfconnect-apps\local and delete the appropriate folders.

Setting Up nRF Connect SDK Environment

  1. Launch the “Getting Started Assistant” from the “Launch app” tab. At the time of writing, the latest version was v0.5.0.
  2. Follow each of the steps in the Getting Started Assistant to Install the toolchain, Clone the nRF Connect SDK, and Download SEGGER Embedded Studio. If you have previously cloned the SDK, either delete the clone or clone the SDK in a new directory. It is best to start fresh and check out the latest release. Three examples (Secure BootAsset Tracker, and AT Client) of setting up a project in SEGGER Embedded Studio will be explained in the next three sections.

Secure Boot Application

The Secure Boot sample application provides a reference implementation of a first-stage boot firmware. This firmware is required to set up the nRF9160 DK so that it can run user applications in the non-secure domain. This should be loaded prior to loading non-secure applications and is loaded onto the board out of box.

Documentation for this example can be found here.

  1. Open SEGGER Embedded Studio which was installed/downloaded in step 3 of the Getting Started Assistant. Go to File → Open nRF Connect SDK Project.
  2. Set the Zephyr Base, CMakeLists.txt, Build Directory, Board Directory, and GNU ARM Embedded Toolchain Directory as in the screenshot below.
  3. Power on the DK by plugging the DK to your computer and go to Build → Build and Run. This will build the project and program the board.

Asset Tracker Application

Documentation for this example can be found here.

Programming Asset Tracker to DK

  1. Open SEGGER Embedded Studio which was installed/downloaded in step 3 of the Getting Started Assistant. Go to File → Open nRF Connect SDK Project.
  2. Set the Zephyr Base, CMakeLists.txt, Build Directory, Board Directory, and GNU ARM Embedded Toolchain Directory as in the screenshot below.
  3. Power on the DK by plugging the DK to your computer and go to Build → Build and Run. This will build the project and program the board.

Connecting DK to nRF Cloud

  1. Create an nRF Cloud account by going to https://nrfcloud.com/#/ and clicking “Create Account.” 
    1. If you have an unactivated iBasis SIM which you wish to activate using nRF Cloud, do not click “Create Account with DevZone.”
    2. If you already have an account, click “Sign in” in the top right corner.
  2. Once you have logged into your account you will be at the dashboard. Click the “+” icon in the top left corner. This will let you add a device. Choose LTE.
  3. If you need to activate an iBasis SIM card, you can enter the ICCID and PUK. Otherwise, if you have an active SIM card (from iBasis or another carrier), you can click “Already have an active SIM? Skip this step.”
  4. At this point, you should reset the DK by pressing the Reset button. Upon reset, LED3 will be blinking and after it has connected to an LTE tower, both LED3 and LED4 will be blinking indicating that it is ready to pair to an nRF Cloud account. Click “Next” once LED3 and LED4 are blinking.
  5. At this point, you will be presented with a sequence of switch toggles and button presses to pair your DK to your nRF Cloud account. After you have linked the device, LED3 will turn off and LED4 will be on (solid, not blinking).
  6. From your nRF Cloud dashboard, click on Devices on the left side and choose the device that you just added. You will be able to see the GPS coordinates being sent from the DK to the cloud on a map as well as the format of the message that is being sent. At the time of writing, GPS coordinates are simulated and do not reflect the actual location of the DK.
    1. Toggling switch 1 will allow you to change the orientation of the board which is displayed right above the map.
    2. Setting switch 2 to the right (towards the antenna) will allow for the board to send GPS coordinates. Setting switch 2 to the left (away from the antenna) will prevent the board from sending GPS coordinates.

AT Client Application

Programming AT Client to DK

  1. Open SEGGER Embedded Studio which was installed/downloaded in step 3 of the Getting Started Assistant. Go to File → Open nRF Connect SDK Project.
  2. Set the Zephyr Base, CMakeLists.txt, Build Directory, Board Directory, and GNU ARM Embedded Toolchain Directory as in the screenshot below.
  3. Power on the DK by plugging the DK to your computer and go to Build → Build and Run. This will build the project and program the board.

Using LTE Link Monitor

Watch the LTE Link Monitor introduction video here. This gives an introduction to the tool and some of the useful commands. You may find overlap with the steps in the video and the steps below.

  1. Open nRF Connect (installed above). Launch the “LTE Link Monitor” from the “Launch app” tab. At the time of writing, the latest version was v0.7.0.
  2. Power cycle the DK by toggling power switch in the bottom left corner of the board. Click “Select Device” and select the DK which should have 3 COM ports.
  3. Reset the DK by pressing the reset button. At this point, messages will appear on the terminal and the AT host sample will start. Notice that in the top right, the UART box is green, while the Modem, UICC, and LTE are red, and PDN is gray. A description of these colors can be found when hovering over the appropriate box.
  4. Type the AT command “AT+CFUN?” into the terminal to connect to an LTE network. This should also execute the command “AT+CFUN=1” which will turn on the modem. If the modem does not turn on, type the “AT+CFUN=1” command. The UART/Modem/UICC/LTE/PDN will be green once an LTE connection is established. A full list of supported AT commands can be found here.
  5. To view RSSI, scroll down to Settings on the right side, and change the “Periodic signal quality request” away from off (default). The below screenshot is showing the slider set to 1s. Then, go to the “Chart” tab on the top.
  6. To get a log of the console output, close the serial port connection, and select “Open logfile.”

Useful Documentation

Anonymous