About ThingPark Interop Engine


The Interop Engine is an automated test tool designed to streamline interoperability testing with Actility ThingPark LoRaWAN network server implementation, which is used in many public networks and in private networks using ThingPark.
The tool implements a list of tests applicable to specific LoRaWAN specification levels (1.0, 1.0.1 or 1.0.2), device class (A, B or C) and regional profile.


As ThingPark Community Network Server is interfaced to ThingPark Interop Engine, you will be able to use your ThingPark Community account to complete your devices interoperability campaigns and get it ThingPark Connected.

Useful Resources
Download ThingPark Connected Interop Test Plan

ThingPark Interop Engine vs. LoRa Alliance Certification

ThingPark Interop Engine and LoRa Alliance certification program serve different purposes and are complementary:

  • The LoRa Alliance certification program verifies that a device in test mode can join a network, supports the required MAC commands and generates uplinks as expected for a generic version of LoRaWAN network server as implemented by the LoRaWAN certification test tool (LCTT, https://lora-alliance.org/lorawan-certification-test-tool ).
    It works only on devices which implement a specific test mode, and obviously is not able to test against specific usage modes of LoRaWAN, such as how MAC commands are concatenated in LoRaWAN frames, whether they are conveyed as payload or options, or exactly when the network server will trigger ADR commands.

  • The ThingPark Interop Engine on the other hand is designed to provide private and public network operators running the ThingPark LRC network server with confidence that a given device, in its operational configuration (i.e. not in specific test mode), behaves as expected when interacting with the LRC LoRaWAN network server implementation. It’s designed to be as close as possible to the real thing, and the LRC used in our interop test tool is always updated to our latest version. As the LRC is capable of adapting its LoRaWAN implementation to a given device profile, this tuning is also taken into consideration. Any potential bug of the LRC that would be triggered by a given device will also be revealed in this test.


Because the ThingPark Interop Test tool does not require a specific test mode, it is dependent on the device sending uplinks for many tests. Therefore most tests run unattended in the background, capturing uplinks as they are transmitted by the device. Of course, if you are able to accelerate the rhythm of uplinks, e.g. by configuring a thermometer to report temperature every 5 mns or by shaking a tracker in motion triggered mode, you can do it and it will shorten the duration of a test campaign. However, even if you take specific actions to accelerate the campaign, it is the operational firmware of the device that will be in control of the LoRaWAN stack, not a specific test mode application.
The car industry has demonstrated that test mode and normal operation can diverge in meaningful ways !

Set up your device

To run an interoperability test campaign with your devices, it must be already be provisioned on the ThingPark Admin Console and configured to be associated to a specific application named “interop”.

Important Notes

Application configuration

  • Your device should not be associated to any other application while performing interop tests.
  • Don’t forget to remove the interop engine from your device’s associated applications once your interop campaign is terminated.

Device configuration

  • It is important to configure the device to use ADR transmission mechanism as the interop engine will ask the device to regularly change the Spreading Factor.
  • Some tests will also require to have confirmed and unconfirmed uplinks then better to configure your device that way if you can.

For more information, check on ThingPark Connected interoperability test plan.

More resources

  • To know more about device activation on ThingPark Enterprise, have a look to our online user guide

Connect to ThingPark Interop Engine

Once you have configured your device on the ThingPark Admin Console, you can access ThingPark Interop Tool from the ThingPark Community main menu: Access ThingPark > ThingPark Interop Engine

ThingPark Interop Engine will open in a new tab. Note ThingPark Community provides single-sign-on (SSO) to ThingPark Interop Engine, so that you don’t need to provide your credentials.

Once logged in, select the Interop menu in order to display the current list of test campaigns with their status.

In case you have no campaign created yet, the page is empty. It’s time to go to the next step to create your first campaign!

Create a test campaign

To create a test campaign, click on the ‘Create new test campaign’ button from the interop page.

  • Select the LoRaWAN device that you want to associate to the test campaign from the list. The list contains all devices that are currently active on your ThingPark community account. Make sure to select a device which is associated to Interop Engine Application
  • Provide details about your device’s LoRaWAN™ Stack : Applicable specification version, RF region and device class.
  • Create your campaign by clicking on New Developer Campaign. Your now see the list of test cases available in your newly created test campaign.
Some tests are added by default upon test campaign creation and immediately start to run in the background. These tests do not change any configuration on the device and as such are non-intrusive.

Developer Campaign vs. Exam Mode

Most device developers will typically use the interop tool initially as part of the device development cycle. In such phase, developers will need to run test cases one by one, and adjust device configuration or firmware to pass them. That’s what developper campaign allows and that’s the first type of campaign you should create.

Once your device firmware and configuration is mature, you’re ready to go to the next stage and run a test campaign using the exam mode. In this mode, the test campaign us launched globally, and all test cases are run at once ; this mode is required to achieve the ThingPark Connected certification.

Run test cases

From the Interop page, you can visualize the details of a test campaign by opening it. More specifically, you’ll see the current status of the campaign, the list of test cases and their status, as well as detailed information about a specific test case.

Different test case status can be encountered:

  • Created: Those test cases have been automatically added to the campaign.
  • None: Those test cases are currently not part of your campaign.
  • Queued: Those test cases have been added to the campaign and will transition to the Running status when possible.
  • Running: Those test cases are currently in progress. Check running tests details to get more information about the current progress.
  • Aborted: Those test cases have been aborted. An action is required to relaunch it.
  • Success: Those test cases have been completed successfully.

To launch a specific test case that is currently not part of your campaign – Status to “None”- select the test and click on the “+” button.

  • A new dialog will pop up presenting test parameters. Fill the form if the test requires parameters and then click on ‘Run’ to start the test.
  • The test case will be Queued, waiting for Interop Engine scheduler to transition to “Running”
  • Test details provide you with specific information regarding the test progress, including errors or required actions.

To know more about test campaign management with ThingPark Interop Engine, have a look to this page.

Get ThingPark Connected

To get your device ThingPark Connected, one option is to carry out a test campaign using the ThingPark Interop Engine Exam Mode. The device will achieve the certification if the campaign is successful.

To do so, create a new test campaign, but selecting the exam mode instead of the developper mode.

To associate a device to a campaign, it must not be associated another active campaign.

By default, all test cases are part of the campaign. Browsing the test cases list, you’ll be able to monitor test status and progress as per the developer mode.