TagoIO Get Started Tutorial
Onboarding an external device to TagoIO for the first time is a task that until now took hours if not days. To overcome this hurdle, we created this TagoIO Getting Started Lab to get started in minutes.
This MIMIC MQTT lab demonstrates integration of TagoIO and MIMIC MQTT Simulator to produce an out-of-the-box lab for immediate first-time setup and use of dynamically controllable devices . By having a quick, successful example, you will short-circuit integration of your own devices into TagoIO.
Check out this 2-minute Youtube video of a small fleet of vehicles updating their device status in TagoIO in real-time, being graphed in the TagoIO dashboard.
There are more videos in the Youtube channel listed on the right of this page to show more advanced TagoIO features, such as analysis, events and actions.
This lab extends the TagoIO Getting Started to set up within 15 minutes any number of realistic, third-party, MQTT-based sensors publishing custom, dynamic telemetry that fits the TagoIO MQTT guidelines. There is no limit to the scalability, but we'll setup 1 sensor, and then you can try the same yourself on any number in the lab for your requirements (if you need more sensors, send e-mail to email@example.com).
Features of this lab include:
- no prior requirements except for a valid TagoIO account, ie. a TagoIO login ;
- no extra setup of hardware, NODE.JS, or cloning of Github source code;
- step-by-step, clear instructions for all tasks;
- 1 realistic sensor (or more) that publishes telemetry via MQTT ;
- each sensor is authorized to access your account (and only your account) in TagoIO, just like real devices will have to be;
- dynamic telemetry published over the internet to TagoIO and reflected in the device state;
- real-time, interactive control of the telemetry to reproduce any scenario you want at any point in time;
- investigate all aspects of TagoIO interaction with a third-party device;
- finally, verifiable cleanup of everything we setup automatically.
These are the tutorial steps you are going to perform to get going quickly:
The power of MIMIC is not limited to this. If you have a scenario you need simulated, send e-mail to firstname.lastname@example.org.
Step 1: Setup
Sign up to your own TagoIO account if you have not done it. This takes 5 minutes.
NOTE: NEVER give out your TagoIO account login username and password to anyone you don't trust.
We first go to their home page and press Get Started to sign up for a TagoIO account.
Then review how Tago works
To operate your lab, we recommend 2 web browser (Chrome, Firefox, Edge, ...) windows side by side. For example in the left browser window you can have your MIMIC MQTT lab for TagoIO, and in the right your TagoIO cockpit, logged into your TagoIO account, eg. as in Figure 1:
Figure 1 - 2 browser windows side-by-side
When we point to features in either of the windows, they will be highlighted with a red circle. For example, in Figure 1 above we have highlighed the main menu of MIMIC lab and that of the TagoIO cockpit. Check it out by clicking on the Figure 1 picture to open it (make it larger). Then press your browser Back button (left arrow) to get back to this page.
You can maximize either of them when working in one window for a while. When you press README or Help in the MIMIC lab (left browser window), it will open another tab with the help page. Clicking on links in this document to external pages will also open in separate tabs. That way you can switch between the tabs, or lay them out however you wish.
To check it out, click on TagoIO Tutorial, then the top README menu item, and the help page titled Documentation: MQTT Lab for TagoIO appears in a new browser tab. Close the tab by clicking on its x, or switch back to the previous tab.
Step 2: Add Device(s)
The left MIMIC MQTT lab browser window shows red icons, one for each simulated device. This is the equivalent of your real-world devices sitting on your lab bench. They are not doing anything.
We need to configure one of the devices to publish telemetry to TagoIO according to the TagoIO Devices rules. This task configures the simulated devices to use the access parameters (token) that you configured in TagoIO.
Let's first check on the devices in your TagoIO account (right browser
Your TagoIO cockpit home page shows the number of devices as 0 as shown in Figure 1 above.
Click on the top left main menu (triple bar to the left of the TagoIO logo), then select Devices. There should be no devices, if this is a fresh account. Else, it will show the devices that are registered in this account. There should be no devices from this lab until the next step.
Click on Add Device.
Figure 2 - Step 2: TagoIO Add Device dialog
Click on the MQTT integration in the left list, then Custom
Figure 3 - Step 2: TagoIO MQTT Integration dialog
In the Complete your configuration dialog give the device a name,
for example mimic1. Then press Create device.
Figure 4 - Step 2: TagoIO Complete your Configuration dialog
TagoIO will create your device and lets you know when it's done.
Figure 5 - Step 2: TagoIO Creating your device
When it's done, the device information appears. You need to copy it's
authentication token to import it into the MIMIC lab. Click on the
Copy token button.
Figure 6 - Step 2: TagoIO Device info
In the MIMIC TagoIO lab (left browser window) click on
TagoIO Tutorial -> Step 2: Add Device.... The
Step 2: Add Device dialog appears.
Figure 7 - Step 2: MIMIC Add Device dialog
Type the Prefix for the NAME of the device to be created in your TagoIO account. We recommend to keep mimic, that way you can find it easily later. The first device will be mimic1. Then paste the Token that you copied in the TagoIO cockpit.
Once you click OK, a new Run Script Console tab is opened in the browser with the output of the processing. When it says Task completed, and there are no ERROR messages, your new sensor device is configured in the MIMIC MQTT Lab, ready to connect to your TagoIO account. You can dismiss this tab, or switch back to the lab browser tab titled TagoIO Lab.
If it does not have it already, when you now reload the MIMIC MQTT Lab window, the first icon should have a name underneath its number, eg. the first device will be named mimic1. It is red because it is currently stopped. This is the equivalent of the device sitting on your lab bench in the real world with power switched off.
We configured a new device with name mimic1 and configured it with the authentication parameters necessary to connect to TagoIO;
Using the lab
To start using the lab, first verify that at least one device with the chosen prefix, eg. mimic1, is showing in your MIMIC MQTT Lab.
Step 3: Start Device(s)
The devices in your lab are stopped, equivalent to lab equipment sitting on your lab bench and powered off. So they are not doing anything. We need to power up the recently configured device, the one that is labelled mimic1.
To start it, select the icon(s) of the device(s) you want to start. Each selected device will have a blue indicator in the upper left. Then click on TagoIO Tutorial -> Step 3: Start Device(s) -> Go!.
The selected icon(s) will turn green, as if you had turned power on.
Just like the equipment on your lab bench, whether it delivers telemetry to TagoIO or not depends on whether you have configured the correct parameters in the MQTT client software.
In this lab, if you added the device as in the section above and there were no errors, then it will publish telemetry once a second. You will know that it works when a orange <--> arrow appears in the icon, indicating activity.
In your TagoIO Iot cockpit mimic1 device page, to see the received telemetry you can select Live Inspector and press the green "play" button as shown in Figure 8:
Figure 8 - Step 3: Device Live Inspector
From the live inspector you see that the telemetry will be updating. In particular, we made it so that the Light value changes frequently at random, like a flickering light. We'll see it in a dashboard in the Step 5: Change Telemetry section below.
The icon of the selected device shows green to indicate that it is started, and telemetry is published to TagoIO. Now you can investigate further how things work, and change telemetry on the fly.
Step 4: Investigate
Now that it is running, you'll want to see how the lab device and your TagoIO device state are linked. That way you can reproduce this with your real devices.
To check the configuration of the device in your TagoIO Device Management page, click on the device name, and then click Info on the left.
To check the configuration of the simulated device in MIMIC, select the device icon in the lab, then click on TagoIO Tutorial -> Step 4: Investigate -> MQTT Configuration...
Figure 9 - Step 4: MQTT Configuration
The important configuration parameters for the device are the
Config File - this defines the MIMIC simulation: what MQTT payload
to send where and when. Here we publish once a second the telemetry to
the device topic with a JSON message containing the desired telemetry.
The Light value changes at random for this tutorial. This simulates a very dynamic attribute that changes at every sample.
Finally, the Temperature values can be dynamically controlled to achieve on-demand, consistent, real-time results, eg. in the Step 5: Change Telemetry section below.
Broker - your TagoIO broker mqtt.tago.io
Port - 8883 for secure MQTT communications
ClientID - we use the default MIMIC client ID
Username - not used
Password - set to your device token
- Use TLS - set to true to use secure MQTT over TLS
These are the configurables you would have to setup in your real-world device to communicate with TagoIO.
NOTE: The OK button is disabled in this lab. More advanced labs allow you to configure anything on the simulated devices.
We verified the necessary configuration for a device to communicate with TagoIO Iot.
Step 5: Change Telemetry
You are seeing real-time, dynamic telemetry in your digital twin on TagoIO. The Temperature value is static, while the Light value changes at random, like a flickering light. In this task we will interactively change the temperature to some other predictable value. This lets you change the temperature on-demand, eg. a device over-heating. Imagine the effort to do this with a real device.
If you have not done so already above, in the MIMIC lab window select the icon(s) of the device(s) you want to manipulate and start it. Each selected device will have a green icon and a blue indicator in the upper left. Then click on TagoIO Tutorial -> Step 5: Change Telemetry....
In the Step 5: Change Telemetry dialog, change the Temperature value to something else, eg. 60000. As soon as you slide the slider to a new value, the new temperature value is published. If you click OK, the value is preserved, if you click Cancel, the value goes back to what it was when you entered the dialog.
In this 2-minute Youtube video we create a dashboard and show the temperature and light telemetry updating in real-time.
We changed temperature telemetry on the fly, on-demand, predictably. You can use this technique when it comes to testing your application for certain conditions.
Step 6: Stop Device(s)
Your lab devices are continuously generating telemetry and publishing messages to TagoIO. This task stops them, the equivalent of powering down the real equipment.
In the MIMIC lab window select the icon(s) of the device(s) you want to stop. Each selected device will have a blue indicator in the upper left. Then click on TagoIO Tutorial -> Step 6: Stop Device(s).
The icon(s) will turn red, and messages cease to be published.
This is the equivalent of turning power off to your real device.
We stopped the devices to stop publishing messages.
Step 7: Advanced Tasks
These are further optional tasks you can do in your lab:
Step 2: Add Device
, and it will add more things with incrementing instance number upto
the total allowed in your lab. Once you start the lab devices,
you will see independent telemetry for each;
to display the telemetry any way you want;
- test analysis, actions and events to act on the telemetry received, as shown in this 2-minute video ;
Step 8: Cleanup
Once a lab is setup, you want to clean it up when you are done, to be certain no left-over devices have access to your account. This procedure makes certain there are no left-overs.
The TagoIO Tutorial -> Step 8: Cleanup... lets you cleanup devices setup in the lab. Just select the device(s), then that menu item cleans up any associated resources from the MIMIC MQTT Lab. You need to delete the associated devices from TagoIO.
Once you have deleted a device, you can add one back in with different credentials with the Add step above.
Frequently Asked Questions
- Q: What will this cost me?
A: Besides the fixed cost for the MIMIC MQTT lab, there will be TagoIO costs in your TagoIO account that we cannot control, beyond their free evaluation.
- Q: What exactly does this do to my TagoIO account?
A: If you run the Step 2 - Add dialog with correct TagoIO authentication parameters, and start the device, it will setup exactly 1 device instance in your TagoIO account. Any subsequent devices connecting to TagoIO from this lab will be added as well.
Since we NEVER know your account authentication parameters, we cannot do anything else to your account.
- Q: What about security / privacy?
A: The lab will be able to access your account during the session because device authentication parameters (tokens) are stored in the lab configuration. You can change tokens for the devices in your TagoIO device dialog. Then you can verify that the devices can no longer talk to your account. This is verifiable cleanup, ie. you have proven that the outside device cannot access any more.
- Q: What next?
A: This lab gives you a small successful step in connecting a few third-party sensors publishing real-time, dynamic, predictable, controllable telemetry to TagoIO in a matter of minutes. The next steps are up to you:
- You can build on what you learned to connect your own devices to
Explore our other free resources / videos to learn about solutions to
common problems you will encounter in IoT development;
rent an advanced lab
anytime you need to test different aspects of your
application, or lease a longer-term
MIMIC MQTT Simulator
with more features;
- You can scale the deployment to as many devices as you need to test, demo, train your IoT Application.
- You can build on what you learned to connect your own devices to TagoIO;