Getting Started Devices Gateways The Things Stack Integrations Reference
Get The Things Stack

The Things Stack

    Overview
  • Basic Concepts
  • The Things Stack Cloud
  • Host The Things Stack
  • Interact with The Things Stack
  • Manage The Things Stack
  • Migrate to The Things Stack
    • Migrating End Devices between The Things Stack distributions
    • Migration Tool
    • Migrating End Devices from V2
      • Major Changes In The Things Stack
      • Packet Broker Requirements for End Device Migration
      • Migrate using the Console
      • Migrate using the Migration Tool
    • Import End Devices in The Things Stack
    • Fine-tuning MAC Settings for End Devices
    • Migrating Gateways
    • JSON File Reference
    • CSV File Reference
    • Migration FAQ
  • Packet Broker
  • Works with The Things Stack
  • Troubleshooting

Migrating End Devices from V2

This section documents the process of migrating end devices from V2 to The Things Stack.

Keep in mind that V2 (community network) machines were shut down on December 1, 2021, so devices can no longer be migrated from there. It is only possible to register them from scratch on The Things Stack. However, it is still possible to migrate devices from private V2 servers, which is described in this section.

Prerequisites

  1. User account on deprecated The Things Network V2 or The Things Industries V2.
  2. User account in The Things Stack.

We recommend testing migration on a single end device or a small batch of end devices in order to make sure the migration process goes as expected.

We highly recommend using The Things Stack version 3.12.0 or higher. Some of the features (like session migration) from this guide might not be available for prior versions.

Add Application in The Things Stack

Since end devices are being created within applications, you first need to add a new application in The Things Stack. See Adding Applications for detailed instructions.

When adding an application in The Things Stack, the Application ID does not have to be the same as the one in V2.

Add Payload Formatters and Integrations in The Things Stack

After creating an application, you need to add the associated elements like application-level payload formatters and integrations.

The payload formatters can be uplink and downlink, and they are what was known in V2 as encoders and decoders. In The Things Stack, it is also possible to add payload formatters per end device, which override application payload formatters. However, before devices are migrated to The Things Stack it is only possible to add a payload formatter per application.

The format of V2 payload encoders and decoders is still supported in The Things Stack. You only need to add one additional line to the function code used in V2 to make it fully compatible with The Things Stack. For example, if your payload decoder function in V2 was:

function Decoder(bytes) {
    var temperature = bytes[0] | bytes[2];
    return {
        temperature: temperature;
    }
}

then your uplink payload formatter function in The Things Stack should be:

function decodeUplink(input) {
    var bytes = input.bytes;
    var temperature = bytes[0] | bytes[2];
    return {
        temperature: temperature;
    }
}

See Payload Formatters guide for detailed instructions on how to add payload formatters and which types are supported by The Things Stack.

For detailed tutorials on the integrations that are available in The Things Stack, see Integrations.

Migrate End Devices

When you have added your application and elements associated with it, it is time to migrate your end device(s) from V2 to The Things Stack.

Since the V2 machines were shut down, ttn-lw-migrate is no longer able to migrate devices from those servers. You can only add those entities in The Things Stack.

However, devices can still be migrated from private V2 servers to The Things Stack. There are two approaches for migrating devices, depending on how many end devices you intend to migrate and if you wish to migrate with or without active sessions, described in the following guides:

  • Migrate using the Console
  • Migrate using the Migration Tool

Major Changes In The Things Stack

Before going in detail with the migration process, this section will give you a breakdown of differences between V2 and The Things Stack, along with some guidelines to make the migration process easier to manage. Architecture The Things Stack is made up of several components, which can be run redundantly and on distributed servers to improve scalability and robustness. See Components for a complete overview of the different components of The Things Stack.
Read

Packet Broker Requirements for End Device Migration

Read this section if you want to make use of Packet Broker to migrate your end devices and route traffic from V2 to The Things Stack.
Read

Migrate using the Console

This section describes migrating end devices to The Things Stack by using The Things Stack Console.
Read

Migrate using the Migration Tool

This section refers to migrating end devices to The Things Stack using ttn-lw-migrate migration tool.
Read
← Export End Devices from ChirpStack Major Changes In The Things Stack →

On this page

  • Prerequisites
  • Add Application in The Things Stack
  • Add Payload Formatters and Integrations in The Things Stack
  • Migrate End Devices

The Things Stack

Getting Started

Devices

Gateways

The Things Stack

Integrations

Reference

Contributing

GitHub

About Us

The Things Industries