This guide helps you get started with Thingy:91.
It tells you how to update the Thingy:91 application and modem firmware and connect the Thingy:91 to nRF Cloud.
If you have already set up your Thingy:91 and want to learn more, see the following documentation:
The introductory documentation for more information on the nRF Connect SDK and the development environment.
If you want to go through a hands-on online training to familiarize yourself with cellular IoT technologies and development of cellular applications, enroll in the Cellular IoT Fundamentals course in the Nordic Developer Academy.
nano-Subscriber Identity Module (SIM) card that supports LTE-M or Narrowband Internet of Things (NB-IoT) (The Thingy:91 comes shipped with an iBasis SIM card.)
Computer
For firmware updates through USB:
Micro-USB 2.0 cable
For firmware updates through an external debug probe:
10-pin JTAG cable
External debug probe supporting Arm Cortex-M33 (for example, nRF9160 DK)
Note
It is recommended to use an external debug probe when you start developing with your Thingy:91.
Thingy:91 (v1.5.0 or lower) comes preloaded with the nRF9160: Asset Tracker firmware and modem firmware on the nRF9160 System in Package (SiP), and the Connectivity bridge application firmware on the nRF52840 System on Chip (SoC) that enable the device to use the environment sensors and track the device using Global Positioning System (GPS).
The data is transmitted to nRF Cloud.
Before you start using the Thingy:91, it is recommended that you update the application firmware to nRF9160: Asset Tracker v2.
Alternatively, for a more concise nRF Cloud firmware application, you can build and install the nRF9160: nRF Cloud MQTT multi-service sample.
See Building and programming an application for details on building a firmware sample application.
You must also update the modem firmware.
You can update the application and modem firmware on a Thingy:91 through a Universal Serial Bus (USB) cable using MCUboot.
MCUboot is a secure bootloader that is used to update applications if you do not have an external debugger.
Note
To update the Thingy:91 through USB, the nRF9160 SiP and nRF52840 SoC bootloaders must be factory-compatible.
The bootloaders might not be factory-compatible if the nRF9160 SiP or nRF52840 SoC has been updated with an external debug probe.
To restore the bootloaders, program the nRF9160 SiP or nRF52840 SoC with the Thingy:91 firmware files through an external debug probe.
Alternatively, you can use an external debug probe.
Note
The external debug probe must support Arm Cortex-M33, such as the nRF9160 DK.
You need a 10-pin 2x5 socket-socket 1.27 mm IDC (Serial Wire Debug (SWD)) JTAG cable to connect to the external debug probe.
The board enters bootloader mode if any of the following buttons are pressed while the Thingy:91 is being powered on (using SW1):
SW3 - The main button used to flash the nRF9160 SiP.
SW4 - The button used to update the nRF52840 SoC.
Following are the three recommended steps when you start to program a Thingy:91:
Open the folder img_app_bl that contains the HEX files for flashing with a debugger.
See the CONTENTS.txt file for information on which file you need.
Select the Connectivity bridge firmware file.
Click Open.
Scroll down in the menu on the left to the DEVICE section and click Erase & write.
The update is completed when the animation in Programmer’s Device memory layout window ends.
In the Modem DFU window, click Write.
When the update is complete, a “Completed successfully” message appears.
Note
Before trying to update the modem again, click the Erase all button. In this case, the contents of the flash memory are deleted and the applications must be reprogrammed.
Open the folder img_fota_dfu_hex that contains the HEX files for updating over USB.
See the CONTENTS.txt file for information on which file you need.
Select the appropriate Asset Tracker v2 firmware file.
Note
If you are connecting over NB-IoT and your operator does not support extended Protocol Configuration Options (ePCO), select the file that has legacy Protocol Configuration Options (PCO) mode enabled.
Click Open.
Scroll down in the menu on the left to the DEVICE section and click Write.
Open the folder img_app_bl that contains the HEX files for updating using a debugger.
See the CONTENTS.txt file for information on which file you need.
Select the appropriate Asset Tracker v2 firmware file.
Note
If you are connecting over NB-IoT and your operator does not support extended Protocol Configuration Options (ePCO), select the file that has legacy Protocol Configuration Options (PCO) mode enabled.
Click Open.
Scroll down in the menu on the left to the DEVICE section and click Erase & write.
The update is completed when the animation in Programmer’s Device memory layout window ends.
To transmit data from your Thingy:91 to nRF Cloud, you need an nRF Cloud account.
nRF Cloud is Nordic Semiconductor’s platform for connecting your IoT devices to the cloud, viewing and analyzing device message data, prototyping ideas that use Nordic Semiconductor’s chips, and more.
To create an nRF Cloud account, complete the following steps:
Open the nRF Cloud landing page and click Register.
Enter your email address and choose a password, then click Create Account.
nRF Cloud will send you a verification email.
Copy the 6-digit verification code and paste it into the registration dialog box.
If you do not see the verification email, check your junk mail for an email from no-reply@verificationemail.com.
If you closed the registration dialog box, you can repeat Step 1 and then click Already have a code?.
Then enter your email and the verification code.
You can now log in to nRF Cloud with your email and password.
After logging in, you are taken to the dashboard view that displays your device count and service usage.
Next, you need to activate the SIM card you will use in the Thingy:91.
You must activate your SIM card and add the Thingy:91 to your nRF Cloud account.
Note
If you activated your iBasis SIM card before, click Skip this step in Step 4 instead of filling in the information.
If you are using a SIM card from another provider, make sure you activate it through your network operator, then click Skip this step in Step 4 instead of filling in the information.
To activate the iBasis Subscriber Identity Module (SIM) card that comes shipped with the Thingy:91 and add the Thingy:91 to nRF Cloud, complete the following steps:
The PUK is printed on the SIM card.
Reveal the PUK by scratching off the area on the back of the SIM card.
Accept the Terms and the Privacy Policy.
Click the Activate SIM button.
After the SIM card is activated, you are redirected to the Add LTE Device window.
Leave the browser window open and continue with the next step before you enter the information on this window.
Punch out the nano-SIM from the SIM card and plug it into the SIM card holder on the Thingy:91.
Connect the Thingy:91 to the computer with a USB cable and turn it on, or reset the device if it is already turned on.
Wait up to three minutes for the Thingy:91 to connect to the LTE network and to nRF Cloud.
After a few moments, the nRF Cloud user association process starts.
This is indicated by white double pulse blinking of the Thingy:91’s RGB LED as indicated in Operating states.
In the Add LTE Device window from Step 4, enter your device ID and ownership code.
Device ID: The device ID is composed of nrf- and the 15-digit International Mobile (Station) Equipment Identity (IMEI) number that is printed on the label of your Thingy:91. It is case sensitive, so make sure all the letters are lower-case.
Ownership code: The ownership code is the PIN or the hardware ID of your Thingy:91, and it is found on the label of your Thingy:91.
If the label contains a PIN in addition to the IMEI number, enter this pin.
If it does not contain a PIN, enter the Hardware ID (HWID) HEX code, with or without colons.
For example, AA:BB:CC:DD:EE:FF or AABBCCDDEEFF.
Note
The ownership code serves as a password and proves that you own the specific Thingy:91.
Therefore, do not share it with anyone.
Click Add Device.
The message “Device added to account. Waiting for it to connect…” appears.
Note
If you see an error message, check the error code and see nRF Cloud REST API (v1) to find out what is causing the error.
When the message has disappeared, go to the menu on the left and click Devices.
You can see the Thingy:91 in your device list and all the sensor data being transmitted to the cloud from the Thingy:91.
The LED on the Thingy:91 should be blinking green, which indicates that it is transmitting all the data to the cloud.
Note
It might take a while for the sensor data to appear in the nRF Cloud portal, depending on the duration of time GNSS uses to search for a fix.