Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
If your device does not support one of our integrated connectivity forms, like LoRa or M2M, you can connect your device directly to KPN Things over the Internet. Internet Device registration To regist
Get a grip on your IoT solutions, so you can focus on your customers
KPN Things offers flexible building blocks with which you can easily build complete IoT solutions. You can build a solution for virtually any use case. Do you want to know how full a waste container is, or where it is physically located? You can connect your Solution with our KPN Things platform.
Building blocks are available for each part of the chain that can easily be used together.
Thanks to standard connections, you can also use your own Device or Data platform. And with the KPN Things Portal, you have full control over your solutions.
Learn why we built Things Portal and how it will benefit your IoT business
Quick reference instructional videosFor a kickstart, watch our instructional videos. They say more than a thousand words!
KPN Things offers you a flexible package of building blocks that you put together yourself. This allows you to set up and manage all your IoT solutions quickly and easily. You manage these building blocks in our KPN Things Portal.
With KPN Things Device Management you have the insights and control over all your devices.
Manage all your devices in one overview - From sensors to complex IP gateways and routers
Device Twin - Insight in the status of every device
Bulk actions - Manage solutions in bulk to control solution of any size
Firmware over the air - Update your devices remotely
Manage all your LoRa, LTE-M and M2M connectivity in a single platform.
All your connectivity in one view - Manage LoRa, LTE-M and M2M connectivity in one view
Manage connectivity for your device - Provide your devices with a connection
Extensive network information - Have insights in your solutions all the time
HTTP and MQTT protocols for M2M devices - You decide how to connect your devices
A seamless integration of IoT data with any platform for maximum value.
Platform Independence - Easily connect any data platform to the KPN Things environment, regardless of which platform you use or want to use
Easy-to-Use Tools - We provide simple tools and extensive documentation to help customers create links and modify data.
Extensive Functionalities - Access to a wide range of functionalities and additional services, allowing customers to use a platform that directly suits their specific use case
Provide your customers and users with a easy access to IoT solutions.
Customer Management - Manage IoT solutions of your customers
Data Segregation - We provide in secure separation of data between your customers
Customer Insight Overview - Have an overview of the different IoT solutions per customer
Self Service - Provide your customers access to the Things Portal to manage their own solutions
User Management - Decide which users have access and to what functionality
First, let us check if you received everything correctly. There should be two KPN Things SIM cards in the package.
Then, the SIM cards should be visible in your KPN Things Portal on the All Connectivity page.
If you don't see your SIM cards, please contact us on iot@kpn.com and we will check if everything is correctly configured.
You now have a KPN Things SIM card in your possession, a SIM card that can be put in a programmable device to grant it direct access to KPN Things through a secure channel.
This SIM card supports connection to the following networks of KPN:
LTE-M
2G
3G
4G
5G
Don't you have a programmable M2M Device yet? You should get one! We have some tips for you:
Other SODAQ SARA devices, like the SFF R412M or devices with a different modem should also work with our developer kit guide. You should only take into account some different settings.
For instance for SARA SFF devices, you should use Board type SODAQ SFF.
Look for the icon in the menu for more Quick reference videos.
explains about Getting started by creating an account and logging in for the first time.
We have the most elaborate documentation on getting the SODAQ SARA AFF R412M to work with KPN Things, so getting such a device will provide you the that we have.
Our also contains example code for the Arduino MKR GSM 1400, laying the basics for all Arduino based M2M devices.
If you want to use non-Arduino based devices, you would need to write your own code to interface with KPN Things. This M2M interface is explained in the .
Build your first IoT Solution in KPN Things
Our KPN Things platform is your environment to start working on IoT Solutions and manage in a single environment. This guide will help you get started. Before we dive in, make sure you have a subscription and you're able to sign in.
There are two types of accounts. For both types the authentication is managed in our GRIP platform developed by KPN. This provides you with a secure and easy access to your KPN applications. With the GRIP portal you can manage your subscriptions and perform user management.
KPN Things Freemium
Once you have registered you have a developer account. With this account you get a Freemium project. Here you can test LoRa and M2M connectivity for a limited number of devices for free.
Follow our step-by-step guide to further set up the environment.
KPN Things Explorer
You can easily upgrade this registration to a paid subscription later. This is our low threshold Explorer solution and suitable for even a couple of devices.
KPN Things Modular
An account will be created for you and you will receive an email to create a password. This is out dynamic solutions based on standard building blocks suitable for high-volumes.
KPN Things or Tailored
Accounts will be created for you and you will receive an email to create a password. This is our customized connectivity focussed solutions suitable for high-volumes.
KPN Things is available in four distinct propositions.
Mobile as a device - Easily add the app as a Device in your KPN Things account.
Choose sensors - The app allows you to choose which phone metrics to use as Device data
Choos your interval - Send the data once or at a regular interval
Follow the steps to add your mobile as a device.
On your computer go to the KPN Things portal.
Click on All Devices to show the device overview on the Things Manager tab
Click on Add new Device to add your mobile phone
Click on Device Simulator
Give your device a recognizable name
You can add a description, this is useful when you have multiple devices and want to provide context. This is not a mandatory field.
Click Add Device to finish this step
Now you should see the DvnUUID and Shared secret. Those are the credentials for you Device simulator app. This information is added in the next step by scanning the QR code with the app.
This is the only time the Shared Secret will be visible, so save the info in a secure place.
Or connect your own test devices with out other device templates.
Connect your device to KPN Things
Choose one of the below device types to continue setting up your IoT solution.
We recommend starting with connecting the KPN Things device simulator app. You can use this app to simulate a device and send messages whenever your want.
Start experimenting and discover the wide range of possibilities with these developer devices.
These development boards are no longer available for purchase and should not be used for new designs.
Continue to the next step:
Let's get started
Follow the steps to create your Freemium account.
Please enter a valid E-mail you like to create your account on
Please enter your First Name. No special characters allowed
Please enter your Last Name. No special characters allowed
Please enter your Company Name. The company name cannot contain a hyphen character (-) or a question mark (?)
Please enter a valid Phone Number. Make sure the country code is included. A phone number is not mandatory
Please check the box when you would like to stay informed. This is not mandatory
Click on Register to create your account
This is an old development board which is no longer available for purchase and should not be used for new designs.
A nifty, industry standard IoT developer board that allows you to utilize LTE-M networks with integrated GPS, Accelerometer and Magnetometers, Grove Connectors, JST connectors and Arduino compatible open source software that allows for low-power applications.
This getting started will give you step by step instructions to get your KPN Things M2M developer kit connected to KPN Things!
Before we start, you should check if have all necessary components:
KPN Things SIM card
SODAQ SARA AFF R412M Board
PCB Antenna
LiPo Battery
After registration there is another step in order to receive test SIM cards, since we don't know your home address yet to send them to! After registering and logging in for the first time, click on the link in the M2M is now available in KPN Things! notification box on the home page and follow the directions.
You will receive your test SIM cards in a couple of days. The SIM cards will be added to your Portal account already, ready to go!
With the Arduino IDE we will write our code and program it on the Device.
Open your freshly installed Arduino IDE.
When your IDE is all started, execute the following steps to install the Sodaq board configuration files.
Click on File > Preferences
At the bottom you should see Additional Boards Manager URLs. This is where you need to paste the following URL:
After adding the URL, your preferences screen should look like this:
Close the preferences screen with OK
Click on Tools > Board:… > Boards Manager…
Search for SODAQ.
Click on SODAQ SAMD Boards and an install button will appear.
Click Install to install the latest version of your selected board collection.
When the installation is done, click Close.
Step 1: Insert the KPN Things SIM card.
Step 2: Connect the antenna. Push the connector straight on the board.
Step 3: Connect the battery to the right terminal on the board, the one stating BATT.
Step 4: Connect the USB cable to the left USB port, the one next to the SIM card slot.
Make sure you connect your battery when using the board, else the module won't work correctly!
From the Tools menu, under Board, select the correct board type:
Also from the Tools menu, under Port, make sure the correct COM port is selected. If you have multiple options, select the one stating SODAQ SARA.
If none of your ports is labelled that way, disconnect your SODAQ, reopen the menu, check which COM port disappeared, reconnect the SODAQ and choose the previously identified COM port.
With this test sketch we are going to check whether your Device works.
Copy the passthrough example code from the following SODAQ documentation page:
Paste the passthrough example code in you Arduino IDE.
Uncomment the third line, since you have a u-blox R4xx module
From the Sketch menu, click Upload to send the software to your SODAQ.
If all went well it will say the following in the bottom of the Arduino IDE:
Meanwhile, from the Tools menu, open the Serial Monitor
In the Serial Monitor, select Both NL & CR and set the baud rate to 115200 baud (#1 in the screenshot below).
#2 in the screenshot above illustrates where you can enter commands to be sent to the u-blox module that sits on your Development board.
#3 shows where you will see the responses from the module.
Use the command AT+GSN
to get the IMEI of your module.
You will be needing this value when registering your Device in the next step of this getting started.
Additionally, with the command ATI9
you can check your firmware version.
The latest firmware version for the R412 is M0.10.00,A.02.14
(as of November 2020)
Select the Own M2M device device type.
Enter a name for your SODAQ device.
Click Add Device to continue.
Now enter the M2M specific information of your Device.
IMEI of your Device. This value is printed on your u-blox module:
2. ICCID of your SIM card. This value is printed on your SIM card. Select the correct SIM card from the drop down.
If you have an Early access SIM, you choose the option "Add early access SIM" and enter the ICCID of the SIM manually in the newly appeared input field.
3. Shared secret - a kind of password for the future data coming from your Device. Here you should come up with a unique password containing at least:
One lower case character.
One upper case character.
One number.
One special character.
32 characters in total.
The shared secret should also be programmed into your Device in step 5.
4. Click Add Network Info to save the network information and then Finish to continue.
In this step we are going to flash the Device with a program to send data to KPN Things.
The ThingsML library will provide code for your Device to communicate with KPN Things. The SODAQ libraries will provide code to interface with the components on the development board.
From the Tools menu in your Arduino IDE click on Manage Libraries...
Now, in the Library Manager, wait for all libraries to load.
Then search and install the following libraries:
ThingsML
Sodaq_LSM303AGR
Sodaq_R4X
Sodaq_wdt
When the installations are finished, click Close.
This example will read the board temperature from the onboard thermometer and send it to KPN Things every 60 seconds.
From the File menu, click on Examples. Now find ThingsML, then select sodaq, and within that choose sara_aff_temperature.
Look for the following part in the example code and fill in the missing values:
Device URN should be completed with the IMEI of your Device.
Make sure you leave the trailing colon :
in place in the DEVICE_URN
variable!
Device Key should be filled with the Shared secret of your Device.
APN should be filled with one the following value two values. Your SIM card is one of two types, which you can see in the Connectivity list in KPN Things.
For M2M Easy use kpnthings.iot
For M2M Advantage use kpnthings2.m2m
Roughly: If you received your SIM card after June 2023, it's most likely an M2M Advantage.
Upload the sketch to your Device and open the Serial Monitor. The device will report some of the setup steps it will perform:
This means your Device is trying to connect to our LTE-M network. After some seconds the following lines will appear:
This means your Device has join our network and has sent its first uplink message to KPN Things!
In the connectivity block, you should see that the last message time indicates that KPN Things just received a message from your Device!
You now successfully connected your M2M device to KPN Things! To further setup your data flow in KPN Things, you should can go to the next step:
Interested in expanding the example sketch to make the Device do exactly what you want? Use the following references to find more information on Things code and SODAQ code:
The ThingsML library contains another SODAQ example that reads out the GPS module and sends latitude and longitude to KPN Things.
Our KPN Things Device simulator app for or allows you to test KPN Things with your own mobile phone as a device. If you do not yet have a suitable device, you can use the app to still build a working data flow.
You will need asmartphone (iOS or Android) and a computer. Each step of this article ses the smartphone or computer icon to tell you on what apparatus you should be taking those steps.
You can request KPN M2M sim cards at . Register for free and find the link in the M2M is now available notification to order your SIM cards.
Continue configuring your .
Continue with the .
KPN Things supports commonly used IoT devices out of the box. If you want to get started with one of these devices, continue with .
To connect other devices head over to the .
Open and click on Register for free.
Please check the box to agree with the general
When visiting the KPN Things Portal in the future, you can access the portal via .
This getting started targets the device. Probably other AFF and SFF SODAQs with an R41xM module will work, but we did not test them (yet). If you share your experiences with one of these devices, we can update this manual!
This part of the manual is based on the .
Download the and follow the installer.
The gives some more available commands. All available commands can be found in the of u-blox.
Open the . Go to the All Devices page and click on Add new Device.
.
Now your Device has connected to the network and is sending data, you should visit the in the Portal of the Device you created in step 4.
The SODAQ Support pages contain several examples to read out the sensors you can find on the SODAQ boards: .
Additional documentation on the ThingsML library can be found in Github:
Device
Board type
SODAQ SARA Arduino Form Factor (AFF) R412M
SODAQ SARA
Command
Description
Expected response
AT
Communication test
OK
ATI9
Firmware version
Some ID.
AT+CSQ
Check signal quality
No connection: +CSQ: 99,99
Good connection: value around 20
AT+GSN
Fetch IMEI of module
Our quick and easy explinations of various topics
We are happy to help you on your way as best as possible. Nothing is more fun than seeing a visible result in your account quick. Follow our tutorials to get of to a good start.
This is an old development board which is no longer available for purchase and should not be used for new designs.
Marvin is the fastest start with LoRa and the Internet of Things. It’s the perfect introduction to IoT for your organization, and is also used in education. Marvin uses its LoRa connectivity to connect to the internet from anywhere in the world where there is LoRa coverage.
Connect your Marvin to your computer.
We will now test whether the Marvin device is working by letting a LED blink.
From the Tools menu, under Board, select Arduino Leonardo
Also from the Tools menu, under Port, make sure the correct COM port is selected. If you have multiple options, select the one stating Arduino Leonardo. If non of your ports is labelled that way, disconnect your Marvin, reopen the menu, check which COM port disappeared, reconnect the Marvin and choose the previously identified COM port.
From the Sketch menu, click Upload to send the software to the Marvin. If all went well it will say Uploading complete in the bottom of the Arduino IDE and the second LED on the Marvin board will blink!
The LoRa connectivity on your Marvin device is managed by the Microchip RN2483 module. With the following steps we check whether this module works correctly.
Upload the sketch to your Marvin.
Meanwhile, from the Tools menu, open the Serial Monitor
In the Serial Monitor, set the baud rate to 57600 baud (same as detailed in the sketch) and select Both NL & CR (#1 in the screenshot below).
Now you can directly speak to the LoRa module and get a response! #2 in the screenshot above shows you where to enter commands you want to send, and #3 highlights where answers from the module will be shown.
If you for instance send sys get ver
, the module will return its firmware version back. This will be 1.0.1 with some historic date.
Now execute the command sys get hweui
to retrieve the DevEUI that is stored in the module. Store the value in a text file. You'll need it when adding the device to KPN Things.
Select the Own LoRa device (preset connectivity) device type
Enter a name for your Marvin device
Click Add Device to continue
AppEUI: you can use the following value: 0059AC00000FFFFF
Store these three values somewhere, because you will be needing them to program your device later on.
4. Click Add Network Info to save the network information and then Finish to continue.
You are now on the Device Detail Page. In the LoRa tab you will see the network status. This can temporarily be Pending creation, but if you refresh the page it should switch to Active. This means your device is correctly registered to the network.
If the Network Status ended up in Failed, something has gone wrong. Most likely the DevEUI is already registered through another application like Thingpark or the LoRa Developer Portal. Please make sure you remove the device registration from the other application and re-add the device in the Things Portal. For more information consult our FAQ.
From the Tools menu in your Arduino IDE click on Manage Libraries...
Now, in the Library Manager, search for ThingsML and click Install. When the installation is finished, click Close.
From the File menu, click on Examples.
Now find ThingsML, then select marvin, and within that choose marvin_example, as such:
A sketch will open. Now update the values for the variables DevEUI
, AppEUI
, and AppKey
in the code with the values you entered earlier in the Portal.
Upload the sketch to your Marvin and open the Serial Monitor. You will see a lot of commands being send to the LoRa module to configure it and to join the network. At some point you will see the following:
This means your Marvin is trying to join the network. After some seconds the following line will appear
This means the device has joined our network!
If you see denied
instead of accepted
, move closer to your window or walk out into the garden to improve reception from the LoRa network. Then disconnect and reconnect the Marvin to your computer. You probably need some more coverage to be able to join the network.
After joining, your Marvin will send a message every 30 seconds containing an empty temperature measurement in ThingsML format. Read more about ThingsML.
Now your Marvin has joined and is sending data, you could visit the LoRa Data tab on your Device Detail Page in the Portal. You should see your Join request and Join accept appear like in the screenshot below and at this point you will see more data as well. Learn more about LoRa data history.
You now successfully connected your Marvin device to KPN Things! To further setup your data flow in KPN Things, you can go to the next step:
The Smartrak M2M GPS tracker is a device produced by Streamline and used for demo purposes. When you push the button the device will send its location to KPN Things.
The first step is to check if everything is present in the box:
Contents:
Battery (1)
Logic board (2)
Bottom part of the casing (3)
Top part of the casing (4)
KPN M2M SIM card (5)
Wireless Charger (not shown)
Step 1: Insert the SIM-card and write down the IMEI (1), we need that later.
Step 2: Connect the battery.
Step 3: Connect the vibration motor. This can be a bit of challenge, but you can do this. The connector has to be pushed on the terminal from above instead of sliding
Step 4: Connect the bottom part. This is the wireless charging circuit.
Step 5: Put everything together.
Step 6: Rotate the two parts as shown. The on/off button has to be on the side of the vibration motor.
Step 7: Click two parts of the casing together.
Plug in your QI charging device.
Place the device on the QI charging device and allow it to charge for a few hours.
You should hear a beep when the device starts charging.
Select the Streamline M2M device device type
Enter a name for your test device
Click Add Device to continue
Now enter the Streamline M2M specific information of your Device.
2. ICCID of your SIM card. This value is printed on your SIM card. Select the correct SIM card from the drop down.
3. Click Add Network Info to save the network information and then Finish to continue.
Push the button on the device and it will send its location to KPN Things! After the push the LEDs start blinking:
Lightning icon: GPS location is being searched
Battery icon: Device is turned on / charging
Waving person icon: indicates the button is pressed
The first time after connecting the battery it can take up to 5 minutes to receive a message. If the LEDs do not start blinking try to push and hold the on / off button for 10 seconds. The battery LED in the middle should start blinking. If still nothing happens, try to charge the device for at least 2 hours.
Continue to the next step:
Head to the Devices in the left menu. Click the Add new device button in the left top corner. This is the place where you register new Devices and add them to KPN Things and our networks.
If you have more than one Project, you will have to select to which Project you would like to add your Device.
Name: Typically can be a Device ID or the name of a physical asset which the device is linked to.
Barcode (optional): Barcode or serial number used to identify a device.
Description (optional): Any additional device information.
When done, click Add Device to continue.
This step will look differently, depending on the type of network information.
If you selected Own LoRa device (programmable) device type in the previous step, the Portal will give you the OTAA join information (DevEUI, AppEUI and AppKey). Make sure to copy-paste or write down the provided identifiers. For security reasons the secret values will not be retrievable through the Portal after closing this page.
Click Finish to continue.
If you selected Own LoRa device (preset connectivity) or a supported device type, you should provide the LoRa network information for your device in this step.
Click Add network info to save the network information and then Finish to continue.
IMEI of your Device.
ICCID of your SIM-card - select the correct SIM card from the drop down. If you have an Early access SIM, you choose the option "Add early access SIM" and enter the ICCID of the SIM manually in the newly appeared input field (see A in the screenshot below).
Shared secret
After entering the values, click Add network info to save the information, or click Finish without adding Network to continue without adding network information to your Device object.
DvnUUID - the unique number to identify incoming data from your Device. Your Device UUID is prefilled, but you can enter any UUID you like.
Shared secret
You can visit the LoRa data or M2M data tab on your Device Detail Page in the Portal. You should see messages here as soon as the device has activity on the network.
You're ready for the next step:
Arduino MKR WAN 1300/1310 is the fastest start with LoRa and the Internet of Things. It’s the perfect introduction to IoT for your organization, and is also used in education. Arduino MKR WAN 1300/1310 uses its LoRa connectivity to connect to the internet from anywhere in the world where there is LoRa coverage.
To connect the Arduino MKR WAN 13X0 to the computer you must use a USB cable.
Connect your Arduino MKR WAN 13X0 to your computer.
From the Tools menu, under Board, under Arduino SAMD boards (32-bits ARM Cortex M0+), select Arduino MKR WAN 1300 or 1310.
If the board is not available go to Tool menu, under Board select Board Manager and search for the Arduino SAMD boards (32-bits ARM Cortex M0+). Click install to install the board.
Also from the Tools menu, under Port, make sure the correct COM port is selected. If you have multiple options, select the one stating Arduino MKR WAN 13X0. If nonee of your ports is labelled that way, disconnect your Arduino MKR WAN 13X0, reopen the menu, check which COM port disappeared, reconnect the Arduino MKR WAN 13X0 and choose the previously identified COM port.
We will now test whether the Arduino MKR WAN 13X0 device is working by letting a LED blink.
In the Arduino IDE go to File, under Examples, under 01. Basics, select Blink
From the Sketch menu, click Upload or select the big arrow on the left of the Arduio IDE to send the software to the Arduino MKR WAN 13X0. If all went well it will say Uploading complete in the bottom of the Arduino IDE and the LED on the Arduino MKR WAN 13X0 board will blink!
The LoRa connectivity on your Arduino MKR WAN 13X0 device is managed by the Murata CMWX1ZZABZ module. With the following steps we check whether this module works correctly.
In the Arduino IDE select from the sketch menu, under Include Library select Manage Libraries. Search for MKRWAN and select the 1.1.0 version.
After the library is downloaded go to File, under Examples, under MKRWAN select FirstConfiguration.
Upload the sketch to the Arduio MKR WAN 13X0
Meanwhile, from the Tools menu, open the Serial Monitor. Here we will find the unique Device EUI. Store the value in a text file. You'll need it when adding the device to KPN Things.
If your device has not the latest firmware version you can load the MKRWANFWUpdate_standalone.ino sketch via File, under Examples, MKRWAN to update the device firmware.
Select the Own LoRa device (preset connectivity) device type
Enter a name for your Arduino MKR WAN 13X0 device
Click Add Device to continue
DevEUI: the value you retrieved from the LoRa module in the step Test your Arduino MKR WAN 13X0 device
AppEUI: you can use the following value: 0059AC00000FFFFF
Click Add Network Info to save the network information and then Finish to continue.
You are now on the Device Detail Page. In the LoRa tab you will see the network status. This can temporarily be Pending creation, but if you refresh the page it should switch to Active. This means your device is correctly registered to the network.
If the network status sticks to Pending creation, you could try to delete the Device and and provision again (Restart at step Add device)
If the Network Status ended up in Failed, something has gone wrong. Most likely the DevEUI is already registered through another application or account. Please make sure you remove the device registration from the other application or account and re-add the device in the Things Portal.
From the Sketch menu in your Arduino IDE click on Include Library, Manage Libraries...
Now, in the Library Manager, search for ThingsML and click Install. When the installation is finished, click on the Library manager icon to close the left window.
From the File menu, click on Examples.
Now find ThingsML, then select Arduino, MKR_WAN_1300, and within that choose Arduino_mkr_wan_1300_example.
A sketch will open. Now update the values for the variables AppEUI
, and AppKey
in the code with the values you entered earlier in the Portal. The DevEUI
is automatically filled in on the background.
Upload the sketch to your Arduino MKR WAN 13X0 and open the Serial Monitor. You will see your module version and if your device is successfully connected and joined the network. At some point you will see the following:
If you see something else instead of connected
, move closer to your window or walk out into the garden to improve reception from the LoRa network. Then disconnect and reconnect the Arduino MKR WAN 13X0 to your computer. You probably need some more coverage to be able to join the network.
After joining, your Arduino MKR WAN 13X0 will send a message every 300 seconds containing a fixed temperature “measurement” in ThingsML format. Read more about ThingsML.
Now your Arduino MKR WAN 13X0 has joined and is sending data, you could visit the LoRa Data tab on your Device Detail Page in the Portal. You should see your Join request and Join accept appear like in the screenshot below and at this point you will see more data as well.
You now successfully connected your Arduino MKR WAN 1
This is an old development board which is no longer available for purchase and should not be used for new designs.
The LoPy4 is a quadruple bearer MicroPython enabled development board (LoRa, Sigfox, WiFi, Bluetooth) perfect enterprise grade IoT platform for your connected Things. With the latest Espressif chipset the LoPy4 offers a perfect combination of power, friendliness and flexibility.
Value
How to get it
DevEUI
AppEUI
You can use this general purpose AppEUI: 0059AC00000FFFFF
AppKey
Select the Own LoRa device (preset connectivity) device type
Enter a name for your LoPy4
Click Add Device to continue
You are now on the Device Detail Page. In the LoRa tab you will see the network status. This can temporarily be Pending creation, but if you refresh the page it should switch to Active. This means your device is correctly registered to the network.
If the network status sticks to Pending creation, you could try to delete the Device and register the device again.
Now your LoPy4 has joined and is sending data, you could visit the LoRa data tab on your Device Detail Page in the Portal. You should see your Join request and Join accept appear like in the screenshot below and at this point you will see more data as well.
You now successfully connected your LoPy5 device to KPN Things! To further setup your data flow in KPN Things, you can go to the next step:
A list of all reference videos in one overview
Learn why we built Things Portal and how it will benefit your IoT Business
This video explains how the User Interface and main navigation works.
This video explains how Tables work.
This video explains how Bulk by multiselect works in the User Interface.
This video explains how Bulk by file works in the User Interface.
Arduino MKR NB 1500 is the fastest start with LTE-M and the Internet of Things. It’s the perfect introduction to IoT for your organization, and is also used in education. Arduino MKR NB 1500 uses its LTE-M connectivity to connect to the internet from anywhere in the world where there is LTE-M coverage.
On this page you will find the window below to order a simcard.
To connect the Arduino MKR NB 1500 to the computer you must use a USB cable.
Connect your Arduino MKR NB 1500 to your computer.
From the Tools menu, under Board, under Arduino SAMD boards (32-bits ARM Cortex M0+), select Arduino MKR NB 1500.
If the board is not available go to Tool menu, under Board select Board Manager and search for the Arduino SAMD boards (32-bits ARM Cortex M0+). Click install to install the board.
Also from the Tools menu, under Port, make sure the correct COM port is selected. If you have multiple options, select the one stating Arduino MKR NB 1500. If non of your ports is labelled that way, disconnect your Arduino MKR NB 1500, reopen the menu, check which COM port disappeared, reconnect the Arduino MKR NB 1500 and choose the previously identified COM port.
We will now test whether the Arduino MKR NB 1500 device is working by letting a LED blink.
In the Arduino IDE go to File, under Examples, under 01. Basics, select Blink.
From the Sketch menu, click Upload or select the big arrow on de left of the Arduio IDE to send the software to the Arduino MKR NB 1500. If all went well it will say Uploading complete in the bottom of the Arduino IDE and the LED on the Arduino MKR NB 1500 board will blink!
The LTE-M connectivity on your Arduino MKR NB 1500 device is managed by the uBlox SARA-R410M-02B module. With the following steps we check whether this module works correctly.
In the Arduino IDE select from the sketch menu, under Include Library select Manage Libraries or click on the library icon on the left side of the IDE. Search for MKRNB and select the 1.6.0 version.
After the library is downloaded go to File, under Examples, under MKRNB select Tools and select TestModem.
Upload the sketch to the Arduio MKR NB 1500.
Meanwhile, from the Tools menu, open the Serial Monitor. Here we will find the unique IMEI. Store the value in a text file. You'll need it when adding the device to KPN Things.
Select the Own M2M device device type
Enter a name for your Arduino MKR NB 1500 device
Click Add Device to continue
IMEI: the value you retrieved from the Ublox module in the step Test the LTE-M module on the Arduino MKR NB 1500
ICCID: you must use the ICCID form the simcard you ordered via KPNThings:
Shared secret: Every device should have its own unique shared secret You can generate a unique secret by pressing Generate:
You are now on the Device Detail Page. On this page you can see the network status. If everything is done the status should be Activated. This means your device is correctly registered to the network.
To receive data in the KPNThings portal you must create a flow. Click on Flows and then on Link to another Flow.
Select My first Flow.
The flow is now created and you must add a decoder to the flow to decode the payloads from the device.
Click on My first flow.
Click on Data Processing
Enable the switch Decoded ThingsML and raw SenML data (v2).
The decoder is now enabled and device data send by the Arduino MKR NB 1500 will be decoded and visible in the Device twin.
The decoded data can be send to a destination. For testing you can use the KPN Test Endpoint destination.
Click on Destination on the left side on the screen, next click on Add new Destination in the upper right side of the screen.
Select the Test Endpoint destination. Give it a name and click on Create Test Endpoint. The endpoint is created and there is a button and link to view the destination. Later the endpoint can always be accessed via the destination menu option on the left side of the main screen.
· From the Sketch menu in your Arduino IDE click on Include Library, Manage Libraries... or click on the library icon on the left side of the IDE.
Now, in the Library Manager, search for ThingsML and click Install.
Search for TemperatureZero and click install. When the installation is finished, click on the Library manager icon to close the left window.
From the File menu, click on Examples.
Now find ThingsML, then select Arduino, MKR_NB_1500, and within that choose mkr_nb_1500_uplink_example.
A sketch will open. Now update the values for the variables IMEI
, and shared secret
in the code with the values you get earlier from the device and the KPNThings.
Upload the sketch to your Arduino MKR NB 1500 and open the Serial Monitor. You will see the AT commands and some other information. Check incoming data in the Portal.
Now your Arduino MKR NB 1500 is sending data, you could visit the Device twin tab on your Device Detail Page in the Portal. You should see the measured temperature.
If the Test endpoint was setup the data from de device is also visible there.
Showing your data in an application
Note that this sample IoT web application is for testing purposes only and not a secure solution for processing data
As an optional step the IoT web application can be deployed to Azure Web App.
Go to the folder 'c3y' and install: npm i
Build: npm run build
Start server in production mode: npm start
(optional) Seed with dummy data: ./postDummyData.sh
Enable XHR Redirect in your webhook (tested in Firefox & Chrome, does NOT work in Safari):
Content Type: application/json
HTTP Method: POST
Send a location message using the device simulator.
You should see the location update with the location you have sent via the device simulator.
Log into Azure, where ??? is the tenant ID from Azure Active Directory: az login --tenant ???
Deploy: az webapp up --sku B1 --location westeurope
(takes about 5 minutes)
After deployment the URL is logged
Inspect logs: az webapp log tail
Open [generated URL]
in the browser to see the web app
Learn how to connect your application through HTTPS
Go to the Flows > My first flow and click Link destination
Choose Create a new Destination.
Select HTTPS endpoint as destination type.
After selecting HTTPS Endpoint, fill in the following information:
Destination name: you can think of a good recognisable name for your first destination, like My First Destination.
URL: this should be the URL you just copied from webhook.site.
Shared secret: this is a kind of password that an application should use to verify that KPN Things sent the data to the endpoint. It should be at least 32 characters long and should contain at least an uppercase character, lowercase character, digit, and special character.
You successfully set up your first IoT solution!
To continue learning you can continue with:
In this QuickStart you’ll learn how to:
Create and configure the necessary Azure resources
Create and configure Azure Eventhub
Create an Azure SQL database with appropriate data tables
Create and configure a Stream Analytics job
KPN Things Account with active device
Azure subscription
In this section you’ll be guided through the creation and configuration of an Azure event hub, a stream analytics job and an Azure SQL database. It’s advised to create a new resource group in which to bundle these newly created resources.
The Azure EventHub is used for the ingestion of data. Don't have an Azure Event Hub yet? Head on over to the Microsoft documentation to learn to create an Azure Event Hub:
From this point, when following the link, you’ve created everything to ingest data to Azure. You have created a resource group, an Event Hubs namespace, and an event hub.
Now we have prepared the input data by creating the Event Hub. We can now proceed to the creation of the Azure SQL database for the data output. Don't have an Azure SQL database yet? Head on over to the Microsoft documentation to learn how to create an Azure SQL database:
At creation, remember to select the resource group created earlier. This way all resources for this quick start will be grouped together. Furthermore, make sure to write down the ‘Server admin login’ and ‘Password’. Under additional settings don’t select sample as we want to create our own data table later on.
When the creation of the database is complete we can create the necessary table. Go to the query editor in the Azure portal as described in the documentation link:
In the query window run the query underneath to create a new data table in the database:
When completed a new data table called eventhub will be created. Additionally, two indexes will be created to enable quick searches on ‘bn’ and ‘bt’. These columns will hold the KPN Things device identifier and measurement timestamp. The newly created data table will be visible in the left view under tables.
At this point you’ve created the data input and the data output by leveraging an Event Hub and an Azure SQL database. In the next step we’ll set up the data stream from input to output by using Azure Streamanalytics.
Now we have prepared the input data by creating the Event Hub and the data output by creating an Azure SQL data store. Now let’s set up Streamanalytics to tie it all together.
The following Microsoft quickstart will guide you through the creation of an streamanalytics job. The entire article describes the usage of an iothub for input data and blob storage for output. Remember in this quickstart we will be using Eventhub for input and Azure SQL database as output.
At ‘Configure job input’ select Event Hub and point to the Eventhub created earlier. Use ‘eventhubinput’ as alias.
At ‘Configure job output’ select SQL database and point to the Azure SQL database created earlier. Set the database table to ‘eventhub’ to match the table created during the previous step. Use ‘sqloutput’ as alias.
At ‘Define the transformation query’ select Query and update with the query underneath. Make sure you are using the input and output aliases as created under input and output
Now Save your input and start the Stream Analytics job.
At this point you’ve created a data ingestion point (Event Hub) a streaming data processor (Stream analytics job) and data storage (Azure SQL database) . In the next step we’ll connect KPN Things to Azure!
Let’s put things together! Now everything is set up in Azure all we need to do is setup a data flow in KPN Things. This Flow will send device data towards an Azure Event Hub destination.
Go to KPN Things and add a flow and give it a name and description
Link new or existing device(s)
Now go back to the flow and set up the data processing by enabling the decoders for the selected device
Add a destination for the flow. Select ‘Create new Destination’. Fill in all necessary details related to the Azure event hub created in Step 1. Don’t know where to find all the required parameters? Follow the instructions below:
When all parameters are set the destination should be active. You should now have a working KPN Things Flow towards Azure Event hub.
You’ve created your first flow towards Azure. All Data produced by the devices in the flow will now be sent to Azure, get processed by the Stream Analytics Job and will be stored in the Azure SQL database.
Learn how to send an instruction (downlink) to your LoRa Device
Note that for this tutorial you need to use a LoRa device.
Go to the All Devices page and click on the device you want to send a downlink to.
Open the Send Instruction tab. There you will find the input fields to send a downlink to your LoRa device:
FPort: is the LoRa application port on which to send the data. If you don't use application ports on your device, you can just use 1
.
Payload: is the data you want to send to your device, written in hexadecimal characters. You could use for instance 010203
.
Click Submit to request the downlink to be sent to the device.
After requesting the downlink, under Status Downlink your downlink will have appeared. Maybe you first see your downlink with the PENDING status, meaning it is still being processed, but if you hit the refresh button (#2 in the screenshot) you should see it switching to EXECUTING.
Queuing At most one downlink can be in EXECUTING at a time. When you submit more downlinks, they will stay in the PENDING state and they will be processed "first in first out". You can have at most 5 downlinks in PENDING. As long as a downlink is in PENDING mode, you can cancel it. If you do so, it will not be send anymore and the status will change to CANCELLED.
Click on the refresh button (#1 in the screenshot) to refresh your Data History table. There should now be an uplink record following your downlink record that contains an ACK (#2 in the screenshot).
If the uplink containing the ACK was not received by the network, you will see your downlink is still in EXECUTING. When a next uplink is received we conclude the downlink as FAILED, since we do not know for sure whether the downlink has been received. You could state that the quality of service for downlinks through KPN Things is "at least once".
If you switch back to the Send Instruction tab, you should see that the status of your requested downlink has switched to DELIVERED. That means the acknowledgement has been received by the network.
Learn how to forward the data from your device to your application
Now your Device is linked to the Flow!
We have already created a first empty flow for you named My first flow. You can create new flows using the Add flow button on the top right.
Click on Add Devices in the Flow overview page.
Now you see all Devices you can add to this Flow. Click on your Device to link it to the Flow.
Now your Device is linked to the Flow!
Open your Project, open your Flow, and then click Data Processing.
Click on the Device type for which you want to activate a decoder (#1 in the screenshot below). At this moment you probably have only one type of device linked to the Flow, so open that one. All available decoders are now shown (#2 in the screenshot below).
Here you can toggle on and off what (decoded) data you want to receive in your application (like indicated with #3 in the screenshot below). If you want to know more about the decoder, click on the link in the description.
This part of the getting started is based on the .
Download the and follow the installer. We'll use it later on to program the Marvin.
Download and open it in the Arduino IDE, or copy-paste the code into an empty Arduino IDE sketch.
Download and open it in the Arduino IDE, or copy-paste the code into an empty Arduino IDE sketch. With this program we can communicate directly with the LoRa module.
Possible other commands can be find in the module or in .
Open the . Go to the All Devices page and click on Add new Device.
DevEUI: the value you retrieved from the LoRa module in the step .
AppKey: Every device should have its own unique AppKey, since it is the root security key of your device. You can generate a unique AppKey here:
If the network status sticks to Pending creation, you could try to delete the Device and and provision again (Restart at step ).
Open the , and log in with the credentials you received in the mail. Go to the All Devices page and click on Add new Device.
IMEI of your Device. This value is printed on the logic board. If you followed the , you have written this value down.
If you want, you can .
You should now visit the in the Portal of this Device. In the connectivity block, you should see that the last message time indicates that KPN Things just received a message from your Device!
For more information about the devices that are supported in Things portal head over to . Would you like to add your own device, head over to the .
Depending on your , available Device types may vary.
You can select an existing device-type offered by KPN Things, or create a new device type using the .
Download the and follow the installer. We'll use it later on to program the Arduino MKR WAN 13X0.
Open the . Go to the All Devices page and click on Add new Device.
AppKey: Every device should have its own unique AppKey, since it is the root security key of your device. You can generate a unique AppKey here:
Use the from the Pycom documentation to get started with your LoPy4. Make sure you setup both the and . You should be able to when continuing this getting started.
The LoPy4 is a LoRa device, and to register a LoRa-device to a network you need three values: DevEUI, AppEUI and AppKey. These values must be registered in KPN Things and in the device. For more information on these three values you can read in the LoRa documentation.
Use from the Pycom documentation to retrieve the pre-programmed EUI from your LoPy4. You can use that one as DevEUI.
Every device should have its own unique AppKey, since it is the root security key of your device. You can generate a unique AppKey here: .
Open the . Go to the All Devices page and click on Add new Device.
Fill in the three values you determined in the previous step . Then click Add Network Info to save the network information and then Finish to continue.
If the Network Status ended up in Failed, something has gone wrong. Most likely the DevEUI is already registered through another application like Thingpark or the LoRa Developer Portal. Please make sure you remove the device registration from the other application and re-add the device in the Things Portal. For more information consult our .
Use the example from Pycom to get your device connected with our LoRa network and have it send data to KPN Things.
Read more information about what you see on the tab.
Before you can start you need a KPN simcard. You can order 2 free cards via
Download the and follow the installer. We'll use it later on to program the Arduino MKR NB 1500.
Open the . Go to the All Devices page and click on Add new Device.
With this tutorial you will create a simple web application showing a map showing your tracked LoRa data. This runs an in-memory data store, so on restart the store will be reset and all recorded data will be lost. The application runs on
Get all the files needed for this tutorial at and save these in a local folder
Target:
Go to and click UPDATE.
Install azcli: brew install azure-cli (
()
Modify the URL in the HTTPS destination created in to the URL returned by Azure CLI:[generated URL]/api/lora
You can use to forward your device data to any supported platform or destination. The tool Webhook.site is used for this tutorial. Although we have good experience with this tool, KPN is not responsible for the proper working of the tool.
Go to . Webhook.site is a service with which you can easily inspect incoming HTTP requests. When vising the site it will automatically create a unique HTTPS endpoint for you. Use the Copy to clipboard button that is highlighted in the screenshot below to copy the URL of your new endpoint.
Send a test message, e.g. by using the . You should see incoming information on your webhook.
Get your KPN Things device data in a Azure SQL database. This QuickStart will help you set up a KPN Things flow towards an Azure Eventhub. The Azure Eventhub is used to ingest data in to the Azure platform. An Azure Streamanalytics job will process incoming data. The data will be stored in an Azure SQL database. For this QuickStart you’ll need a KPN Things account with an active device (or download the ) and an active Azure subscription.
Setup a KPN Things Flow with
If you don’t have an KPN Things account create a .
If you don't have an Azure subscription, create a .
Learn more about .LoRa Downlinks sent through KPN Things are always Confirmed downlinks. That way we trigger an Acknowledgement (ACK) from the device in the next uplink, and with that information we can determine whether a downlink was received or not.
Are you interested in sending downlinks to your Devices through API calls? That is also possible! Head on over to our to learn how.
With a Flow you configure the way your IoT data should flow through KPN Things, from device to destination. Learn more about .
Note that the "Add new Decoder" button and "Edit" button are only visibleif this is your own device type. Own Device Types and Decoders can be created using the .
When data is sent from device to KPN Things
KPN Things Data Management is a data processing platform that enables you to connect all your KPN Things devices to all supported destinations through one standard way of data processing. This principle is visualized in the diagram below:
Read more on device support:
KPN Things Data Management supports multiple forms of connectivity to receive data from devices. When you have a KPN Things device it is already configured to work with KPN Things Data Management.
Read more on connectivity support here:
In future releases KPN will introduce data enrichment functionality in KPN Things Data Management.
After processing your data will be forwarded to one or more Destinations you have configured.
When data is sent to the device
The network (and the device) will report feedback about the delivery of the downlink to the Actuator API. This information can be retrieved by the application, or the Things Connector fetches this information into your system.
Using the KPN Things Portal, you can request downlinks, and check their progress.
Using our encoders the downlink request is translated to a device specific message. All available encoders are listed on the Supported devices page.
Currently the following networks are supported for downlink communication:
LoRa downlink
HTTP response downlink for M2M devices
HTTP response downlink for Internet-connected devices
Explaining the data model of the platform.
Green bordered blocks are objects provided to you.
Green filled blocks are objects you can create and manage.
Grey bordered blocks are objects globally managed by the system.
If you have an account on KPN Things Data Management, it belongs to a Customer account. All main objects in the KPN Things Data Management belong to a Customer: Projects, Devices, Destination and Network subscriptions.
A Network subscription contains information for network types for a specific client. Learn more about connectivity types.
Each Project defines a solution you buy or build in KPN Things. Learn more about Projects.
With a Flow you link one or more devices to one or more plugs. So, if data is received from a device in a device group, its data will be forwarded to the plugs that are in the same device group.
A project has one or multiple activated decoders and encoders. These decoders prescribe which decoders should be used when data is received by a device that is in a device group that belongs to this project. Learn more about Flows.
A Device represents a single physical device that can send data to the platform. When creating a device you tell the system the device specification it belongs to.
A Device specification has one or multiple supported network types. For all our supported device types, go to Devices.
For a device, you can create a Network info for each supported network type of the given device specification.
A Destination allows you to forward the data from your devices to an external system. For detailed information go to Destinations.
One of the main use cases in the Internet of Things is tracking of assets. Therefore KPN Things has location data at the core of its design, especially if you take into account the wide variety of tracking hardware we sell.
We consider two different types of determining the location of your Device:
Using multiple measurements in a single domain to try to approximate the location of the device.
The following measurement values are outputted by KPN Things:
latitude
longitude
radius (if available)
source
The device determines location using GPS. An implementation works for a given device and decoder.
Device: Should have a GPS module and send GPS location.
Decoder: A decoder for each device type that sends GPS data (unless a Things protocol is used)
The LoRa network determines the approximate location of the device using three or more fine timestamps calculated by the gateways. An implementation works for all LoRa devices.
Network: Should be KPN LoRa with a geo-enabled connectivity plan
Decoder: LoRa Geolocation decoder should be enabled.
There should be WiFi infrastructure, dense enough for a device to pick up multiple access points. A device should scan for available WiFi access points and send their MAC-address and received signal strength to Things DM. Things DM should then decode the payload whereafter an external service can be called to resolve the measurements to a latitude and longitude.
Device: Device should be able to scan for WiFi access points
Decoder: A decoder for each device type that scans for WiFi access points (unless a Things protocol is used)
Processing: A WiFi Localization processor should translate incoming WiFi MAC+RSSI measurements to a latitude, longitude and radius using an external service.
Trying to detect another identifiable object with a known location and using the location of that object as approximate location of the device.
detectedBeacon
source
The LoRa network forwards the identifier of the best receiving gateway. Using the user-administrated location of this gateway the general location of the device is determined.
Network: Should be KPN LoRa.
Decoder: Metadata embedded in the DevEUI_uplink message from Thingpark should be accepted as information to be processed in Things DM.
Processing: One LoRa Metadata decoder for location detection using LoRa Gateway ID
There should be managed infrastructure of Bluetooth beacons that transmit their identifier in a known manner. The locations of these beacons should be administrated in an (out-of-scope) application. There should be devices being able to detect the beacon and send the beacon identifier to Things.
Device: There should be a beacon device transmitting a Bluetooth beacon. There should be another device picking up the beacon and sending its identifier to Things.
Decoder: A decoder for each device type that sends a bluetooth beacon ID (unless a Things protocol is used)
Processing: trancelate beacon to coordinates.
The KPN Things Platform is the bridge between IoT Devices and IoT Applications. It offers a unified way of connecting Devices at the one side, and applications at the other side, making Devices and applications completely interchangeable in every IoT solution that uses KPN Things.
The KPN Things Portal is the visual interface with which you configure your solutions on the KPN Things Data Management platform.
Users with an Explorer or Modular contract can view their contract and costs per billing cycle in the KPN Things Portal. To view the costs and contract, enable access by assigning the Finance Read-only role to your users in GRIP. See Roles and Access Levels on the Customer accounts & users page.
To see an overview of the costs per billing cycle, click on your Customer name in the menu on the left. The Account card should show an item called Costs overview if at least one of your projects has an Explorer or Modular contract.
Click on the item Costs overview to navigate to the Costs Overview page. This page shows the costs that will end up on your invoices in a table and a chart. The costs are split per type; one time costs such as hardware, recurring costs, and usage. The costs are shown with any applicable discounts subtracted.
Click on a row in the Costs table or on one of the bars in the chart to navigate to the Costs Details page of that billing cycle.
Under Base details, some information about the billing cycle is shown. The items and discounts are shown under Items and Discounts. The costs for the current month are a forecast of the next invoice and will be updated periodically during the billing cycle. Keep in mind that the actual invoice may contain additional costs and/or discounts not visible on this page.
The buttons Previous and Next above the card on the right allow you to navigate to the previous or next billing cycle.
Each project can have a contract linked by an operator of KPN. Navigating to the Project Overview page of that project shows the Project card with an item with the name of the contract.
Click on the contract line to navigate to the Contract Details. Under Base details, some general information about the contract is shown.
Under Implementation, it is shown to which project the contract is linked. The items and discounts are shown per charge type, which can be one time, recurring, or usage. The items are subsequently grouped per product family. The regular price of each item is shown in the column Unit price in each row with a bold name. Optional tiered discounts is shown below each row to which it applies. The actual discount depends on the quantity, whose range is shown in the columns From and To. These columns are visible only if the contract has at least one item which has tiered discounts.
With Customer Management, you get the possibility to manage your own customers using separate customer environment in KPN Things. It is an extra administrative layer in the KPN Things Portal.
If you have Customer Management enabled in your KPN Things license, you will have an additional link in your side menu: All Customers (as indicated in the screenshot below). Click on it to open your customer list.
After clicking All Customers in the side menu, you will get an overview of all your customers.
In the screenshot the following elements are highlighted:
The number of Customers in your current view and your total number of Customers.
The company name of your Customer.
The name of the primary contact of your Customer.
The number of Projects your Customer has.
The number of Devices your Customer has.
The number of Destinations your Customer has.
A quick link to the All Devices page of your Customer.
A search bar to search for a specific Customer name.
After opening one of your Customers, your submenu will change. The top part will stay the same and will provide you a way back to your own Customer environment (#1 in the screenshot below). The bottom part of the side menu will now show you navigation for the environment of your Customer (#2 in the screenshot below), allowing you to open and/or manage the objects in the environment of your Customer.
The Customer overview page provides you with a quick overview of the environment of your customer.
On this page you find:
A summary of the properties of your Customer.
The number of Projects of your Customer and a link to those Projects.
The number of Devices of your Customer and a link to those Devices.
The number of Destinations of your Customer and a link to those Destinations.
Quick links to add new objects to your Customer (buttons are disabled if you do not have rights)
After switching to the Customer environment, you see the Customer details page. This page gives you a quick overview of the Customer details, like name and email address.
See if your question has already been asked
For security reasons our platform uses the latest browser technologies for the KPN Things Portal. This means that the Portal will not work optimally in not-up-to-date browsers and underdeveloped browsers. Please use an up-to-date version of Google Chrome or Mozilla Firefox for the best user experience.
When you get this error, first check whether you already have registered a KPN Developer account with the email address you are using. Do this by trying to login. If you reach a page where you can enter your password, you do already have an account. You can use the forgot password link to reset your password in case you forgot.
To reset your password, execute the following steps:
Click Login
Enter your Email address and click Doorgaan
Click Wachtwoord vergeten
Enter your Email address again in the field for Gebruikersnaam and click Doorgaan
Choose E-mail naar ****@*****
Check your email for the authentication code, enter it in the field for Code in and click Doorgaan
Enter a new password and click Doorgaan
It should be between 10 and 100 characters
It should contain at least three of the following types of characters: capital letter, small letter, number, and special character
Your password has now been reset
When adding a device you can get the error "The network identifier already exists for this network type". This means the network identifier, DevEUI for LoRa or IMEI for M2M, you are using to register your device is already known in our systems.
You should delete the device record from the device table page using the three dot menu on the right side of the column.
This means your LoRa device could not be registered to our LoRa network. Probably the DevEUI is already in use in another application on our network like Thingpark or the LoRa Developer Portal. If you want to register your device in the Things Portal, first remove the device registration from the other application. Then you can re-add the devices in the Things Portal.
Since the DevEUI's you are trying to register are still registered in the LoRa Developer Portal, they cannot be registered in the Things Portal. DevEUI's can only be registered once in our network.
If you have a device with pre-programmed identifiers and key that you cannot change, you should contact your supplier to get the information.
If you registered a device and got the identifiers from KPN Things, then there is no way to reset your AppEUI or AppKey for your device at the moment. You should delete your device from your account and add it again, get new identifiers and program the device with the new identifiers.
In time you will be able to view the AppEUI in the Portal and you will be able to generate a new AppKey for your device without having to delete and re-add it.
The data from your device travels the following path to your application:
Device → Network → Processing (Decoder, etc.) → Destination (your endpoint or application)
You can check the following configuration items in the Portal to verify whether the path is correctly set up:
Does your device have (the correct) connectivity information configured?
→ Visit the device detail page and go to the Connectivity tab. You can check the information and if necessary add connectivity information.
Is the connectivity indeed activated?
Can you see data coming in from your device in the Data History?
Is your destination configuration correct? E.g. the URL, etc.
→ Visit, on the destination detail page, the Destination Specification tab to check your destination configuration.
→We are working on giving you more insight into the logs of a destination, stay tuned!
Is your destination status Active?
→ Visit the destination detail page. The Processing status in the top right card should say Active. If this is not the case, click the Activate button in the top right of the card to activate the destination again.
Is your Device linked to the Flow?
Is your Destination linked to the Flow?
Is the correct decoder activated?
→ If no correct Decoder is activated, click on the toggle of the desired Decoder(s) to enable it.
Learn more about the general functionality
Do you wish to delete your account? Please send an email to iot@kpn.com with the request to be deleted from the KPN Things Portal.
Please attach a screenshot of your Profile page so we have the right information to remove your credentials from our system.
The Customer Details page can be reached through the account menu drop down (in the top right of the Portal interface).
This page shows you the details of the subscription you or your company has on KPN Things.
On this page you see the general details of your KPN Things account:
The customer details we have on you.
The unique Customer ID of your account. Useful when contacting support.
Log into the GRIP Portal as administrator.
If you have a KPN Developer account, you will be administrator in the GRIP Portal.
If you have a MijnKPN Zakelijk account, you should ask your local administrator for access.
To be able to create API Keys, you need to be an administrator in the GRIP Portal.
Then, open the Admin panel using the role drop down (#1 in the screenshot), click on Identity in the side menu (#2 in the screenshot) and click on Users (#3 in the screenshot). This brings you to the User management page. Now, click Add to add a new User (#4 in the screenshot).
In the following pop-up, fill in the details of the new User. Then click Add to create your new User.
You need to give your newly created User access to the KPN Things service before you can use it. For this, click on Services and roles (#1 in the screenshot), and click on Add a service (#2 in the screenshot).
A modal will open. Click on the checkbox next to KPN Things (#1 in the screenshot), then select the desired role(s) and access level(s) (#2 in the screenshot) for your new User and hit Add (#3 in the screenshot).
Then, click Save to finally give your User access to KPN Things.
When adding new User or API key for KPN Things, one or more Roles must be selected to grant the User or API Key a set of permissions. The below list shows the available roles for KPN Things and describes what levels of access each of the roles gives to the user in KPN Things.
During the optional decoding phase the device specific data protocol is transformed to the universal language of . This is called decoding. Decoding for KPN Things devices and custom devices that use the KPN Things client libraries is taken care of automatically. Therefor there is automatic compatibility with the enrichment phase.
All downlink communication is requested on and managed by the . Optionally a Destination can request and manage downlink communication as well. See to learn which destinations can support downlink communication.
After a downlink is requested on the Actuator API it is . Meaning the downlink is translated to a message the device will understand. After encoding the downlink is send over the selected network to your device.
Since December 2020 it is also possible to directly call the Actuator API. Head on over to the for more information!
Some also support sending downlinks.
Each company has a . You can create multiple within this Customer Account.
describe your commercial plan and available features. One Customer Account can have multiple projects.
Upon request we can create a 'Reseller account' account for you, so that you can manage IoT solutions for your customers. Learn more about
: really determining the absolute location of your Device on the world.
: detecting the presence of your Device with an anchor in the world which has a known location. With this you can safely say your Device is close to the anchor.
Devices can communicate with the platform using one of our networks, or , or a Device using another network can get its data to and from KPN Things over the .
Communication from your Device is called . When data or instructions are sent to your Device, it is called . The communication within KPN Things Platform uses the data protocol. Devices using other languages can be translated from and to SenML using and .
KPN Things will connect to your application through a dedicated connection layer. To connect your application to KPN Things you can use one of the available . We support connecting plain to KPN Things, but if you are developing in Microsoft Azure, you can connect directly to the .
The connect on a platform level and can also manage objects in the application. The for instance will create Device objects in the Cumulocity tenant for each Device that KPN Things sends data of.
The is the web application through which you can manage and monitor almost all parts of the KPN Things solutions. You can manage each part of the KPN Things solution, from Device to Destination, to bring your IoT data from the real world to the digital world. You are also able to use directly to manage your IoT solutions.
To manage your IoT solution you use and in a Flow you link , configure and set up together. See how these components relate to each other in the . Since network configuration, or , is part of the Device in KPN Things, a Flow expresses the complete way how IoT data should be received, processed and forwarded, from the Device to the Destination and vice versa.
💎 Add-on feature This feature is only available when purchased the Customer Management add-on. Please contact if your are interested!
Clicking on a row in the table will direct you to the of the selected Customer.
Adding new Customers will be added later. For now, if you want to add a new Customer, you should contact our .
A link to the .
Go to
When you are sure you did not register the same device earlier, please contact our support through our and state the network identifier with which you got the problems. If you are trying to register a device that was also registered in the LoRa Developer Portal, please state the account name in your question to our support as well. We could transfer your keys from the LoRa Developer Portal to the Things Portal.
This means you try to add more devices to your account than is allowed by your subscription. You could try to remove another device from your registrations or you can contact our commercial support on to get more information on upgrading your subscription.
Please send an email to stating your account name (email address) and the DevEUI's you want to be able to move. We will remove them from the LoRa Developer Portal and our network and we will answer you when we did it. From then on you can register your device in the Things Portal.
Head on over to the part of our documentation to find the solution to this problem.
→ Visit, on the device detail page, the Connectivity tab and verify that Network Status is set to ACTIVE. If not, read .
→ Visit, on the device detail page, the Data History tab to verify incoming data. If you do not see your device joining, you could get more info in . Else you should use your device documentation to get it to send data.
→Visit, on the Device detail page, the to check to which Flows your Device is linked. If the correct Flow is missing, go to Devices in Flow page, click Add Device, click Link an existing Device, and select your Device from the list.
→ Visit, on the Destination detail page, the to check to which Flows your Destination is linked. If the Flow is missing, go to Destinations in Flow page, click Add Destination, click Link an existing Device, select your Destination from the drop down and click Add Destination.
→ Go to the of your Flow. Click on the Device type of your Device. Verify that one or more Decoders are enabled (The device type can be found in the main card of the ).
- Documentation on the FoTa tool
- In depth documentation on KPN's LoRa network
- Technical documentation on Remote SIM provisioning
Do you have a question that is not answered here? In that case you can ask your question via our !
Look for the icon in the menu for more Quick reference videos.
There are 2 types of accounts: a and a .
Both types of account are part of our GRIP platform. Grip is developed by KPN to provide secure and easy access to your (KPN) applications. Through the GRIP Portal you can manage your KPN application subscriptions and you can perform user management. The exact functionality you have in the GRIP Portal depends on the subscriptions you have for different KPN products. .
If you have registered for free for the , you have acquired a KPN Developer account. With this free account you also get a .
Are you interested to use KPN Things with your company? Or do you already have a MijnKPN Zakelijk account and do you want to add KPN Things to the products you are purchasing from KPN? Please contact our sales support through iot@kpn.com for more information. .
The GRIP tenant ID of your account, useful when starting to use .
You can add new users and manage your users in the GRIP Portal, which is accessible through the link: .
Learn more about .
Things Manager Admin
Full management access to the Things Manager
To Add/Update/Remove all objects, like devices, flows, destinations etc.
Things Manager Editor
Partial management access to the Things Manager
To Add/Update objects like devices, flows, etc., but not to Remove those objects
Things Manager Read-only
Read-only access to the Things Manager
To View all objects, but not to Add/Update or Remove any of those objects
Things Support
Access to the support pages in the Things Portal
To View all support pages and documentation
Finance Read-only
Access to costs and contract in the Things Portal
To View the predicted costs of the current month and items and discounts on your contract
Things Creator Admin
Full management access to the Things Creator
To Add/Update/Remove your own device types, decoders and scripts.
Things Creator Read-Only
Read-only access to the Things Creator
To View your own device types, decoders and scripts.
Analyse and manage your devices
The Devices Landing Page in the KPN Things platform provides an overview and management interface for all your registered devices.
Search and Filter: At the top, there’s a search bar that allows you to quickly find specific devices by name or other attributes. You can also apply filters to narrow down the devices based on type, status, or other criteria.
Add a New Device: You can manually add a new device by clicking on the "Add new Device" button. This will guide you through the process of registering a new device with details such as its type, unique ID, and configurations.
Bulk Management Options:
Bulk by CSV File: This is a key feature that allows you to upload multiple devices at once using a CSV file. You can use this feature to save time when you need to add or manage large numbers of devices at once.
Firmware Management: This option lets you add new firmware version on your devices. Keeping firmware updated is important for security and functionality improvements.
The Project type determines what you can and may do in KPN Things Portal. Some KPN Things Projects provide you with more features in the Portal than others.
Depending on the subscription of your Project, one or more of the following restrictions can apply:
Limit
Description
End date
The moment your project will expire. Make sure to extend your Project before this date to prevent loss of data.
Device limit
The maximum number of unique devices allowed in your Project. Devices that are linked to multiple Flows in the Project only count as one.
Flow limit
The maximum number of Flows allowed in your Project.
Destination limit
The maximum number of Destinations allowed in your Project. Destinations that are linked to multiple Flows.
will count for the number of links they have in this Project.
Allowed Device types
Allowed Network types
The type of networks that are available in this Project.
A project has the following attributes:
UUID - the technical identifier of your project.
Name - the name you give to your project.
Description (optional) - further explanation of your project.
Creation date - the moment your project was created.
Subscription - the type of project you have, determined by what product you bought.
The Freemium Project gives you free limited access to the KPN Things Portal:
One Project in KPN Things Portal.
Access to our Device SDK to get you started with programming your Device.
Integrated KPN LoRa functionality:
Free registration of up to 3 devices to KPN's nationwide LoRaWAN network.
Free use of LoRa Geolocation.
Insight in LoRaWAN network communication.
Additionally, you can order KPN Things SIM cards to connect M2M devices to KPN Things:
Connect up to 2 M2M devices to KPN Things for free.
Data communication over HTTP (MQTT will be available in the future).
Access to our LTE-M, 2G, 3G, 4G, and 5G networks.
European roaming included.
Optional payload decoding for supported device types.
Forward your data to up to 3 different destinations.
KPN Things access is subject to your Terms of Use.
You can find your Projects by clicking on your Customer name in the left menu. If you are a free user, you will get one project named My first project.
Do you want to upgrade one of your Projects? Click on Upgrade.
When clicking a project you go to the Project overview page. It gives you an overview of a selected Project:
You can see the name, description and type of subscription of the selected project.
You can also see which Flows, Devices and Destinations are part of this project.
On this page you will find technical details of your project. At the project details page, you can edit the name and description of your project yourself.
If data history is enabled for your account and device type, you can find a graph of the configured metrics on the Data graph tab of your devices details page. If available, two metrics can be selected to show 2 graphs simultaneously.
The "Zoom" button can be used to focus more on the range of the metric values. The "Table View" button gives access to the underlying data of the graph:
The displayed data can be filtered, sorted, and exported according to your needs, just like all other data tables in KPN Things.
The data-graph is configured for most device types to show battery related characteristics, like batteryVoltage and batteryLevel.
In the current portfolio KPN uses 2 types non rechargeable batteries, 3.0 Volt and 3.6 Volt. There is 1 type rechargeable battery, the 3.7 Volt.
Non rechargeable batteries 3.0V and 3.6V Both the 3.0 and 3.6 type battery will be around the voltage of 3.0V or 3.6 Volt for a long time during their lifespan.
The course has a stable behaviour during the discharge process.
Slight fluctuations in voltage are caused by changes in the internal impedance of the battery which arise when the battery is in rest and becomes active when transmitting data and the power consumption by sensor readings. The ambient temperature is also a factor of importance in these fluctuations.
In the final phase of the battery life, the fluctuations to lower values will be more severe because the battery has more difficulty recovering from the passive to active state when the internal impedance of the battery is increasing.
In the final phase also the stable character will disappear and once the decline has started, it will proceed relatively faster.
How long a device will be able to work on a battery at the end of its lifespan depends on the number and current use of messages and sensor readings initiated by the device per day.
And here too, the ambient temperature is an important factor. Rechargeable LiPo The rechargeable battery has a voltage range from 3.7 Volts to fully charged around 4.2 Volts.
During consumption, the voltage will decrease and with this rechargeable type the degree of discharge is also influenced by the load and the ambient temperature.
A rechargeable battery has a slightly greater drop in voltage in the first phase of the discharge process and more as the battery reaches the end of its lifespan. Between those two phases the drop will be gradual.
If the battery reaches a voltage below 3.6 Volts, it is advisable to charge the battery to ensure proper functioning of the device.
Editing devices in large numbers
Next to the device list, you will see options for bulk actions, like activating or deactivating your M2M devices, or editing device settings in batches. These actions can be initiated by selecting multiple devices from the list or by uploading a CSV file that contains the necessary device information.
You can easily download the Devices - Data result set by clicking the Download icon just below the Search icon.
This will generate CSV file, containing all devices in the current selection. The CSV file will contain the measurements accompanied with the timestamp of that specific measurement.
Click on the Bulk by CSV file button.
This step opens the process for uploading multiple devices at once via a CSV file. This saves time since you don’t need to add each device individually.
You are asked to upload a CSV file with the device data. Ensure that the structure of the file matches the template exactly, which you can download. Use a comma (,) as the CSV separator.
After uploading the CSV file, it will be validated.
This screen gives you feedback on the validation. All devices with valid data are displayed, and devices with errors won’t be processed. The system checks fields such as IMEI, ICCID, and other required fields.
After validation, choose the target project and flow where the new devices should be added. You can also specify the device details, such as the device type.
Here, you define the project and flow in which the new devices will be processed. You can also choose the type of devices being added, for example, M2M devices or another type.
Click on Add new M2M Devices to start adding the devices.
The system will now begin adding the devices. You can monitor the process by following the progress in the Bulk reports where you can see if all devices were successfully created.
Change your connectivity profile
The LoRa Connectivity configuration page gives you the opportunity to choose the connectivity profile that best suits your application.
The Devices overview provide you with a list of all devices als the connectivity used.
Click on Devices to show the device overview on the Things Manager tab
Click on the Connectivy Plan name to go to the LoRa Connectivity configuration section
Or open the LoRa tab and scroll down to the LoRa Connectivity configuration section
Click Edit LoRa Connectivity configuration
The page show an overview of the current connecivity settings for this device
The connectivity plan can be updated here, by selecting the Connectivity plan selection box a new dialog opens In this dialog all available connectivity plans are shown, it shows per connectivity plan if it includes geolocation.
In the KPN Things Portal it is possible to perform certain actions in bulk, meaning a single actions is performed on multiple objects at the same time. The following operations are currently supported as bulk action:
All historical bulk operations can be found on the Bulk Report page, directly accessible through the side menu in the KPN Things Portal. This page shows you all executed bulk operations and their results.
By clicking on a specific Bulk report you open its details.
The Bulk report detail page shows you every operation of the bulk action and whether the result was successful or not. This allows you to review past bulk operations and maybe fix some things if necessary.
The device types that are available in your project. .
You can find applicable restrictions on the of a Project.
Link to the .
It shows up automatically if keeping Device data history has been turned on in your Customer settings. You can also or create a ticket via 'mijnkpnzakelijk' if you have any questions.
Search for a device Name of DevEUI to find the device and click the icon to open the Device and Connectivity details
Or click on the icon to open the Device and Connectivity directly in your device overview list
Want to learn more about the different settings how they work then click the link to go to the about LoRa connectivity configuration
Add Devices to a Flow in the .
Add Devices to a Flow in the .
Remove Devices from a Flow in the .
If you are interested in automating an administrative operation in the KPN Things Portal, you could also look in to , allowing you to write your own scripts to perform certain actions in your KPN Things account.
You can use API access to KPN Things for instance to automate some actions you normally do manually through the KPN Things Portal
2.3. Give new API Key access to KPN Things
You need to give your newly created API Key access to the KPN Things service before you can use it. For this, click on Services and roles (#1 in the screenshot), and click on Add a service (#2 in the screenshot).
✨ Early access feature! API access to KPN Things is currently in beta! We try to notify users in advance about breaking changes, but we cannot guarantee continuity of this service just yet.
In GRIP there are API Keys. These are separate entities in a tenant (a customer environment). That means an API key is not user bound, but it is rather a separate entity.
Each time you want to access the KPN Things APIs, you need to request an access token from the GRIP API using your API Key. This access token you get is valid for one hour, and can be used as a bearer token to access KPN Things APIs directly. a
That means, for each API call you to to KPN Things. you need to add the following Authorization header:
There is no refresh token. To regain access after the validity of your access token has expired, just request another access token through the GRIP API.
You can find more information about the access method we employ here on the Grip Knowledge Base website, linked below. The method is called Machine authentication.
This is a step-by-step explanation to find all required information needed for requesting an access token from GRIP.
Value
Description
GRIP Tenant ID
The unique identifier of your GRIP environment.
Application ID
The ID of the service you want to access, being KPN Things. Used as audience in your client credentials request.
For KPN Things it is this: 4dc82561-f65f-523g-dek9-6c79ec314f02
Client ID
The API Key's ID
Client Secret
The API Key's Secret key
Log into the GRIP Portal as administrator.
If you have a KPN Developer account, you will be administrator in the GRIP Portal.
If you have a MijnKPN Zakelijk account, you should ask your local administrator for access.
To be able to create API Keys, you need to be an administrator in the GRIP Portal.
Then, open the Admin panel using the role drop down (#1 in the screenshot), click on Identity in the side menu (#2 in the screenshot) and click on API keys (#3 in the screenshot). This brings you to the API Key management page. Now, click Add to add a new API Key (#4 in the screenshot).
In the following pop-up, give your new API Key a Display name and a Description. Then click Add to create your new API Key.
You need to give your newly created API Key access to the KPN Things service before you can use it. For this, click on Services and roles (#1 in the screenshot), and click on Add a service (#2 in the screenshot).
A modal will open. Click on the checkbox next to KPN Things (#1 in the screenshot) and hit Add (#2 in the screenshot).
Click on the KPN Things service and select the desired role and access level for you API key:
Then, click Save to finally give your API Key access to KPN Things.
Now, when you click back on General information, you will see the ID and Secret key of your new API Key.
POST
https://auth.grip-on-it.com/v2/{tenantId}/oidc/idp/c1/token
With this request you obtain the access token you use to access the KPN Things APIs.
Content-Type
string
application/json; charset=utf-8
grant_type
string
client_credentials
audience
string
The Application ID (see above)
client_id
string
The API Key's ID
client_secret
string
The API Key's Secret key
Error
Solution
Feature user does not exist anymore.
You should check your API Key ID or Secret, they may be incorrect.
Feature service does not exist anymore.
You should add the KPN Things Portal service to your API Key through the GRIP Portal.
SAML request error: "idpId" not found.
Your tenantId (which is a path variable) is incorrect.
GET
https://api.kpnthings.com/api/devices
Now you have an access token, execute the following call to list your Devices
currentPage
number
0
pageSize
number
20
search
string
(case sensitive partial string search)
sortBy
string
name
sortOrder
string
ASC
Authorization
string
Bearer {accessToken}
Accept
string
application/vnd.kpnthings.device.v1.response+json
Code
Description
🟢 200 OK
Your request was correct.
🟢 201 Created
You created an object with your request.
🟢 204 No Content
Your request was correct, but there is no information to return, for instance after deleting an object.
🟡 302 Found
Your access token is incorrect or does not have access to KPN Things. Please check your API Key in GRIP.
🔴 400 Bad Request
Something in your request is not correctly formatted. For instance your body structure, your accept header or a query parameter.
🔴 403 Forbidden
Your access token is correct, but you do not have the authorization to access that resource.
POST
https://api.kpnthings.com/api/actuator/downlinks
Body: [{"bn":"urn:dev:DEVEUI:{devEUI}:", "n":"payloadHex", "vs": "{payload}"}]
externalReference
string
Optional reference for you to choose
port
integer
LoRa FPort to send data on
Accept
string
application/vnd.kpnthings.actuator.v1.response+json
Content-Type
string
application/json
Variable
Value
gripBaseUrl
https://auth.grip-on-it.com
tenantId
Your grip tenant id
applicationId
4dc82561-f65f-523g-dek9-6c79ec314f02
keyId
Your key id
keySecret
Your key secret
baseUrl
https://api.kpnthings.com
If you have Customer Management in your account, you can manage Things accounts for your own customers. These customers of you, let's call them sub-customers, have their own customer account in KPN Things. But you have access rights with your API Key to perform actions in their account.
To perform an API call in a sub-customer environment, there are two requirements:
You should have requested the access rights to the individual sub-customer environment
For all API calls you perform, you should add the following HTTP header:
This only has to be one once per API Key per sub-customer.
Perform the Request KPN Things access token through GRIP API call.
Perform the following API call:
GET
https://api.kpnthings.com/api/v1/lifecycle/clients/:clientId/context-switch
clientId
string
Customer ID of your sub-customer
Content-Type
string
application/json
Accept
string
application/json
Now you have access rights to the sub-customer environment with your API key. Now you can perform any API call you have the rights for in the sub-customer environment by simply adding the x-client-id
header to the API call when you execute it.
If required for your security implementation, all certificate files of the chain can be downloaded here:
All help and resources in one place
The support page provides access to all service related items. Here you can submit a request for information of report a service disruption.
These support items are available for everyone
Support tooling avaible for Modular and Tailored subscriptions
We will always be there to help you, contact us if you have any questions
When support is needed, click on the Contact Support tile. This opens the General inquiries form.
Choose the subject so that your question will be directed to someone who knows the subject.
General Inquiry
Any general question, you can ask us anything about the product.
Technical Inquiry
Having trouble setting up the environment, or have a deep technical question? Please ask us and our support team will help you getting up to speed
Sales Inquiry
Do you have any questions about prices or upgrading a subscription? We will help you find the right solution.
Suggestion
The product is built with the user in mind! Do you have any suggestions that will help us further improve the platform? Let us know.
Is our service up to standards
The Service reports page provides in an overview of the availability of our service per month.
Click on SLA Reports in the menu for an overview of the availability of our services
Click on the calendar icon to choose another month to see report history
Click on the info icon for a brief explanation of the key performance indicator (KPI)
Click on a specific service for more report details on performance history
Shows the service level of a specific service for the selected month
The report details show more report details on performance history.
Choose a from date and to date to present the graphs for a certain period
The KPI Value is the measurement of an availability for the specific month
The KPI Norm is the standard we strive for and use as minimum availability standard
Click SLA Report overview to go back to the Service reports page
We are proud to inform you about all the new features of our platforms
The Release Notes page provides you with all new features and items we fixed or improved.
Click on the Release Notes links on the News page
All releases come with a version number as reference in case you have questions
The items of changes and fixes in the according release are stated below every version number
This is the date the article is published
Use the search field to look for specific topics
In case Cisco Control Center is used you have the option to select for Release notes Cisco to see the information related to the platform
Check the operational status of our platforms in case of issues
The Real-time status page provides you with the current operational status of our platforms.
Click on Incidents in the menu for an overview of the status of our platforms
If Overall status is OPERATIONAL all underlaying items are functional
All major incidents are shown in the overview with one of the statuses below
Investigating
Under investigation but no cause has yet been found
Identified
We found the cause, we are going to apply a fix
Monitoring
We applied a fix and monitor if the platform remains stable
Resolved
Everything is working fine again
Closed
All operational actions are done, we have taken up the learnings to improve our services
This is the date and time of the last update of the incident
The information on this page is also available on statuspage.kpnthings.com in case the Things Portal itself is inaccessible and also more detailed updates on the incident are available
Below the KPN Things Incidents overview more details are available to show which service has been affected.
Cisco Control Center API
There is a disruption to the API, please use Cisco Control Center as a workaround when possible
Cisco Control Center Portal
There is a disruption at the Cisco Control Center portal, please use Things Portal as a workaround when possible
KPN Things API
There is a disruption to the API, please use KPN Things Portal as a workaround when possible
KPN Things Engine
There is a disruption of the KPN Things backend that results in not receiving data for customers that use Flows
KPN Things Portal
There is a disruption to the user interface of Things Portal, please use the KPN Things API when possible or wait with making changes until the incident is resolved
LoRa Connectivity
There is a disruption of the whole or a large part of the LoRa network
M2M Connectivity
There is a disruption of the whole or a large part of the M2M networks of KPN in the Netherlands
M2M Roaming Connectivity
There is a disruption in the roaming domain or with a roaming partner.
We keep you updated about our platform and connectivity and planned maintenance
The news page provides you with all relevant information.
Click on News in the menu to see all news items under All News
Click on the title of a news item to open and read the full article
Use the search field to look for specific topics
This is the date the article is published, in case of maintenance check for the execution date in the full article
All documents and manuals in one overview
The documents page provides you with documentation and manuals about our services.
Click on Knowledge Base in the menu for an overview of the available documentation
The highlighted documents contain important information and are shown in tiles
All other documentations about a topic are listed below the tiles
Every header indicates another topic, scroll down to check for more subjects
Use the search field to look for specific topics
This online KPN Things User Guide can be accessed through this link
In the Things Creator, it is possible to define your own device type including decoder scripts. This guide describes how this is done.
Open the Things Creator Application: Log in to the KPN Things application with your credentials and using the top-level menu, navigate to Things Creator. If you don't see this menu option, you're not authorized to access the Things Creator. Access is provided via the roles in KPN Grip. In order to gain access, send a request to the administrator of your Grip tenant.
Within the Things Creator application navigate to Device-Type Management: Click on the new main menu item "All Device Types". View the overview of all available device types.
Click on the "Add new Device Type" button. Fill in the required information for the new device type, such as name, description, and any specific properties. Click "Add Device Type" to add the new device type.
If needed, you can edit or delete your own device types through the device type overview. Select the device type from the list and in the device type detail page, click Edit or Delete.
After creating your own device-type, this device-type can be selected in the Things Manager when adding new devices to your project.
Navigate to Decoder Management: Click on the menu item "All Decoders". View the overview of all available decoders.
Click on the "Add new Decoder" button. Select the device type for which you want to create the decoder. Note that you can only add a decoder for one of your own device types. Be sure to create your own device type first. Fill in the required information for the new decoder, such as name and description. Click "Add Decoder" to add the new decoder.
You can add as many decoders as you like for your device-type.
If needed, you can edit or delete your decoder through the decoder overview. Select the decoder from the list and in the decoder detail page, click Edit or Delete.
After creating a decoder, the decoder script must be created. In the decoder detail page, click the "Create" button in the Script section. Write and test the script using the designated editors. Click "Save" to save the script.
The decoder scripts can be tested using the provided sample payloads, or you can create your own test payload. The Click "Run script with test payload" to test your decoder script. The output and log can be used to validate your script.
If needed, you can edit or delete your own decoder scripts through the decoder detail page. Click "Edit" to edit the script and in the edit script dialogue: Click "Delete" to the delete the script. Click "Save" to store any changes to your script.
You have successfully created your own device type and one or more devices of this type have been added to your project. Then the decoder of your choice must be activated in your flow. This is done in the Things Manager application.
Select the flow in which you want to activate the decoder and click "Data Processing". In the Data Processing overview, select the device type for wich the decoder shall be activated and toggle the decoder of your choice. Alternatively, you can click the "Add new Decoder" to create a new decoder in the Things Creator application.
To access the KPN Things APIs you need an API Key. And these API Keys are managed by GRIP, the identify management platform of KPN. Your user account used to access the KPN Things Portal is also managed by GRIP. Learn more about .
In the KPN Things Portal, visit the by clicking on your name in the top right and then clicking "Customer Details" in the overflow menu. On the following page you will find your GRIP Tenant ID.
Learn more about .
Don't want to manually implement the API calls? Use our published to quickly generate code snippets for all published API calls!
More information in the .
Currently the APIs of KPN Things are documented using Postman. is an easy to use API development tool.
To get the Postman collection working, you need to create a with the following variables:
💎 Add-on feature This feature is only available if you have the add-on feature .
Find the Customer ID from the sub-customer you want to perform an action on. You can use the All Customers page to search in your Customers and then open the of the concerning Customer to find its Customer ID.
The SSL server certificates of KPN Things and GRIP are provided by the new PKI Overheid CA hierarchy. On kpn.com you can .
Root:
Intermediate:
Intermediate:
For more information on creating your own decoders, please refer to .
For more information on creating your own decoder scripts, please refer to .
Create a support ticket to request for information, changes or report an issue
The Support tickets page provides you with an interface to our IoT Service Desk. This is a click out to ServiceNow to allow you to raise and edit tickets.
Click the method that matches your subscription below to contact us right away.
Like to read the Contact Support manual first? Click on the Support link below.
Support tickets can be accessed via the following options.
Click on Support Tickets in the menu
Click on the Support Tickets tile
Order your devices and simcards
The KPN Webshop for IoT products has been combined with the KPN Webshop for other business market products. When multiple products are purchased, they will be displayed in this single environment.
You can only start if you have a MijnKPN account with the correct permissions to access the KPN Webshop.
Let's get started!
There are two ways to log in to the KPN IoT Webshop. This can be done via the MijnKPN or directly from the KPN Things Portal.
If you want to view the products per product group, click on.
The desired product group
The desired type of product
View the specifications for a product
If you have checked the desired items and would like to order them, click on.
Add to shopping cart
Once you have added an item, it can be ordered via Continue to order. You can also include multiple items in one order and choose Continue shopping. It is also possible to add a non-KPN IoT product such as a mobile phone or accessory to the Shopping Cart. Please note that this will be processed as a separate delivery. These items are shipped separately and are not charged via the KPN IoT invoice.
When ordering SIM cards, it is possible to immediately choose additional options to ensure that they are delivered with the desired settings in Cisco Control Center.
Of course it is possible to change this afterwards in the KPN Things Portal or Cisco Control Center.
If more than one Account ID is in use, it is possible to indicate which account you want, cick on.
1. Select the Account ID
If you want to immediately select the desired communication plan and rate plan, click on.
1. default rate plan no
2. select the desired comm plan
3. select the desired rate plan
4. click on continue ordering
If you have chosen to place the order, check the Shopping Cart for the desired quantities and products. If the order is correct, click Continue ordering.
Based on the company details the company address is available. This information cannot be changed. In the next step you can choose to deliver the order to this address. If you want to have the order delivered somewhere else, you can choose a different address.
Because you are the one who places the order, we will inform you about the status. You do not have to adjust the information. If someone else is our Contact Person for this order, then please adjust the information here.
Choose here to use the company address as the delivery address. Or enter a different address.
Use the company address as the delivery address
Select a previously entered different address
Manually enter a different address
Save the entered address as a new address to select from the list later
Reference details can be added for your own use, please fill in the following information.
Add an internal Purchase Order
Enter a Reference text
If there is a desired delivery date, please indicate it here.
The payment method cannot be changed. By default, the costs are included on the upcoming invoice as one-off costs.
We do our best to meet the requested delivery date. If the date is not feasible, we will contact you.
You're done! Your order is now being processed.
Click on View my order. You will then receive an overview of all the order information.
You will receive a confirmation with the order number by e-mail. This is your reference if you have any questions about the order. You can track the status of your order in the KPN IoT Webshop. Click on the Track and Trace link in the email to open your order to follow its status.
Do you have any questions about the status of your order?
It may be indicated in the ordering process for items that daily prices apply. These items are subject to price fluctuations of the components used. We immediately request a quote from the supplier for the ordered products.
After you have placed an order, you will first see it in the quotation overview.
When we receive the current prices we will contact you to determine whether the order can be processed. The order may always be adjusted or cancelled at that time.
If you expect to place order in large numbers in the coming period, you can provide a forecast. Deviating from the expectations later is permitted. But informing our suppliers in advance helps in anticipating planning and purchasing.
Would you like to provide a forecast? Then click on forecast in the menu.
Now provide a forecast of quantities for the products you expect to order.
1. Select a period for which you expect to place the order
2. Enter the quantities per product in the month in which you expect to place the order
If there is no input field for a month in question, it is no longer possible to provide a forecast for it. In case an order is placed for that month, the products are shipped according to the standard delivery times that apply to the product.
A reliable and up-to-date forecast helps us to deliver your order as quickly as possible.
If you have new information, please adjust the forecast.
1. Click Configure Forecast to adjust the previous forecast
In this way you help us to prepare upcoming orders and ensure that our suppliers can respond to them on time.
Then ask your administrator to create an account. If case you don't know who is the administrator for your organization is, please us.
Like to see the first. It says more than a 1,000 words.
Open MijnKPN via
Open the KPN Things Portal via or click on the Shop tab in the
In the shop tab, the available product groups are shown based on the IoT solutions used
Do you know the name of the item? Then you can search directly via the button.
The or buttons to select the desired quantity
Is any information incorrect or is the desired delivery date very important? Please stating your order number and your question. We will always provide personal support.
All methods to get in touch with us
The Contact info page provides you with all methods to contact us for questions and in case of an incident.
Click on Contact info in the menu to see all options to get in touch with us
We will always be there to help you, contact us if you have any questions
Support methods avaible for Modular and Tailored subscriptions
Find a copy of your invoices
The Invoices page provides you with a copy of your invoices. This is a click out to MijnKPN Zakelijk portal to allow you to download invoices as Adobe PDF files.
Click the tile below to open MijnKPN Zakelijk right away.
Invoices can be accessed via the following options.
Click on Invoices in the menu
Click on the Invoices tile
In KPN Things the Device type is used to express the connectivity and data capabilities of a Device, like whether it is a LoRa or an M2M device, and its compatibility to Data Processing components such as decoders and encoders.
KPN Things supports the devices as shown in the subpages of this page.
We have two categories of Device types, namely KPN Things Devices, when you buy a Device from us, and Supported Devices, when you bring your own Device to KPN Things. Each categorie has its own set of Device Management features in the Portal.
Legenda ✅ - Available for this device type. 🟡* - Configurable for your own device, coming soon. ❌ - Not available for this device type.
Interested in buying some of these KPN Things devices? Head on over to for more information!
KPN Things Devices
Supported Devices
Bring or Buy
Buy
Bring yourself
Add to / remove from Portal
❌
✅
Edit name and description
✅
✅
Activate / deactivate in Portal
✅
✅
Send / receive raw payload
❌
✅
Send commands
✅
🟡 *
Device Twin - Reported state
✅
✅
Device Twin - Clear measurements
❌
✅
Device Twin - Desired state
✅
🟡 *
Device Twin - Metadata
❌
✅
First FillTag device for Waste Control application, also known as Streamline Waste device.
Supported network type(s): KPNLORA
Device Specification ID: kpn-filltag-i
Device Specification UUID: 5064c9de-36c8-4a69-8edd-636c6df94332
+ LoRa Geolocation data
4c0bf70f-cde5-4f5a-aac2-8480a875ec86
› Decoded payload for Waste Control application
0a56df75-1b4d-407b-b534-a20cf22cd13e
Decoder for Streamline LoRa message type 0xD282.
› Decoded payload for Waste Control application (v2)
41fdc428-12cb-52b0-9e0c-e160b97bdcd5
Decodes fields from a Streamline LoRa payload, specifically for waste control application.
Decoder for Streamline LoRa message type 0xD282.
Expected SenML records
batteryLevelLow
boolean
/
batteryLevelLow_beacon
boolean
/
count_LidOpen
number
detectedBeacon
string
distance
number
m
distanceMeasurementIsValid
boolean
/
lidOpenedSincePreviousTransmission
boolean
/
temperature
number
Cel
Decodes fields from a Streamline LoRa payload, specifically for waste control application.
The following SenML records can be present, amongst others:
batteryLevelLow
boolean
true
batteryLevelLow_beacon
boolean
false
the battery level low indication of the detected beacon
count_LidOpen
number
1
number of times the bin lid has been opened
detectedBeacon
string
"a1e2093368d4e7b8"
DevEUI of the last detected beacon
distance
number
m
0.684
distance to the detected object from the fill sensor
distanceMeasurementIsValid
boolean
true
lidOpenedSincePreviousTransmission
boolean
true
temperature
number
Cel
18.875
timeOrigin
string
NETWORK
the source of time information for measurements
Also known as Streamline CO2 sensor with rechargeable battery. A Smart Building Sensor for indoor environment monitoring.
Supported network type(s): KPNLORA
Device Specification ID: kpn-conditionsensor-co2-iii-motion
Device Specification UUID: 9629ddf1-b1c0-410b-b6a1-5003afd6e26c
UUID: 2bb53ece-d857-458c-9218-614f98cd34bf
Description: Decoder for Streamline LoRa message type 0xB0 with CO2 data.
Exchange: decoder.lora.streamline.exchange
Decoder for Streamline LoRa message type 0xB0 and 0xB1 with CO2 data.
The following SenML records can be present, amongst others:
0xB0 payload
0x1B payload
Add data to messages where location could be calculated.
Add data to messages where location could be calculated.
This decoder also decodes data.
SenML can be structured in different ways, and we do not guarantee the examples below will look the same as what you will receive on your Destination. To make sure you can handle the SenML optimally, take a look at our documentation about .
This decoder also decodes data.
SenML can be structured in different ways, and we do not guarantee the examples below will look the same as what you will receive on your Destination. To make sure you can handle the SenML optimally, take a look at our documentation about .