At Thingsquare we build IoT (Internet of Things) solutions together with our customers. Solutions that solve our customers’ problems.
But we don’t start from scratch every time – we use the powerful Thingsquare IoT platform.
The Thingsquare IoT platform is a remarkable piece of technology.
It starts inside the chips in each IoT device and continues all the way into the cloud. And covers everything in between.
For us, the Thingsquare platform allow us to build full IoT solutions without having to reinvent any wheels. And we can build prototypes quickly – really quickly, as in in a few weeks.
So what does the Thingsquare IoT platform bring to the table to help us do this?
Here are a few things:
- A solid wireless mesh networking stack, that lets us achieve very long range and impressive wireless coverage
- Thousands of devices per network
- Sub-GHz wireless networking
- Built-in end-to-end security
- Extreme power-saving mechanisms that let devices live for years on tiny batteries (and not drown the environment in old batteries)
- Flexible installation procedures
- Factory production procedures
- Ready-made smartphone apps for iOS and Android
- Powerful troubleshooting and measurement tools
- Secure over-the-air software updates
- Extensible HTML5 frontend frameworks for rapid prototyping
- The ability to run off the grid, without Internet connectivity
- A backend software stack with ready-made Node JS npm modules and REST APIs for backend integration
- The ability to use off-the-shelf hardware for rapid prototyping
- … and much more!
Since we launched in 2012, we have built an impressive range of solutions with the Thingsquare IoT platform, with hundreds of thousands of customer devices deployed in all continents of the world – except Antarctica.
Today we are launching an on-line demo of the Thingsquare IoT platform, that you can run directly in your browser!
No hardware is needed.
No tricky installation instructions.
You won’t even need to create a user account.
The Thingsquare IoT platform demo is deliberately simple – and there is more than meets the eye.
The Demo
The demo shows a simple IoT solution, built on top of the Thingsquare IoT platform.
The solution is deliberately simple.
It is a remote monitoring solution that includes a simple smartphone app that shows the current temperature from a set of wireless sensors. Any number of sensors can be deployed, but we only deploy 10 of them in this demo.
And because the solution is built with a powerful IoT platform, there is more than first meets the eye.
But let’s first take a look at what does meet the eye.
Click the Demo button to kick things off:
When you start the demo, you will be asked what type of demo scenario you would like to see. For now, we have only one scenario: a remote monitoring setup.
Click the Temperature Sensing icon to get started.
Starting the Demo
When the demo starts, this is what you will see:
In the background, the demo is setting up a bunch of virtual wireless sensors and a virtual wireless access point.
These devices exist only in your browser, but they connect to the Thingsquare IoT cloud backend like any IoT device.
Setting up the virtual devices takes a few seconds.
When it is done, this is what you will see:
At the middle of the screen, you will see a smartphone app. This is fully usable: you are supposed to click and interact with the app, just like you would with a real smartphone.
The app has found a bunch of wireless sensors that it is ready to install.
To the right on the screen, there is a picture an office. This is where the sensors will be installed.
You will literally see the devices appear here.
Click on the Install all
button in the app on the smartphone at the middle of the screen.
The smartphone app will now begin to install the devices:
You will see devices starting to appear at various places in the office as they are being installed.
After a few seconds, all devices have been installed.
A bunch of sensors have appeared in the office on the right.
You will also see a new window appear at the right of the screen. This can be used to control the heat in the room.
But first, click the OK button in the app to close the confirmation dialog.
The app will show the average temperature, as collected from the 10 virtual sensors in the office.
By clicking the three options in the control window to the right, you can control the temperature that the sensors sense. If you click the Too hot
setting, you will see that the temperature rises in the app. Likewise, if you set the temperature setting to Normal
or Cold
, you will see this reflected in the app after a few seconds.
You may notice how the virtual temperature sensors in the office wiggle back and forth occasionally. This is when they sample their temperature sensor and send their data, via the virtual access point, to the backend server. The backend server stores the data in its database and also pushes the data to any connected apps – like the app we have on our screen right now.
Let’s Dive into the Details
So now we have installed the 10 sensors and their access point.
But that is only the surface. Because the system is powered by a full-stack IoT platform, there much more for us to explore.
The sensors are posting temperature measurements to the IoT platform backend roughly every 10 seconds. We can control the temperature in the virtual office and we see the results in the app.
Let’s now dive a little bit deeper into the platform to see what is going on behind the scenes.
Open the Device Viewer
As you may have already noticed, there is a button in the top left corner of the demo screen that says Open Device Viewer
.
Click this button.
A new view appears below the button:
This device viewer view is the default view into the Thingsquare IoT platform. This is what you see when you download and install the Thingsquare iOS or Android app.
At this point the virtual smartphone may be in the way of the device viewer. You can move the virtual smartphone by clicking and dragging the text that says Demo app view
.
The device viewer lets you see a lot more details about each device than the significantly more simplistic app that the demo uses.
The IoT platform collects a lot of information about each device – not just the sensor data that they produce.
In the device viewer, we first see the list of devices, organized in different networks. But we only have one network. And that’s where all of our devices are.
Scroll down the list to see all the devices.
Click on one of the sensors.
We now have a detailed view of that sensor. You see the current temperature value that it has reported in the middle of the screen.
Now click this temperature value to bring up the data history for this value.
The Data History
The data history view lets us go back in time and see what a specific sensor has reported.
The IoT platform stores all data it receives from its devices and makes that data available to device viewer via its REST API.
We use this capability to see a graph of the temperature.
We can click the Live
button to get the graph to update itself when new data arrives.
Now change the temperature in the room with the control window to the right.
Within a few seconds, you should see that the temperature data from this virtual sensor starts to change. Depending on your setting, the temperature could go up, or down.
The IoT platform collects the data from the sensors, stores it in its database, and also immediately forwards it to any device viewer that is currently looking at the data.
See the Mesh Structure
Every IoT solution based on the Thingsquare IoT platform uses a wireless mesh network.
A wireless mesh network lets devices help each other out – if one device is too far away from the access point, devices that are closer to the access point will take their data and send it to the access point.
The device viewer can be used to inspect the current structure of the mesh network.
Go to the access point, click on the Details
tab, and scroll down until you find the Show mesh
button. This brings up the mesh network view:
In small networks, the wireless network does not always need to use the mesh capabilities.
Our demo network is such a network: all devices can directly reach the access point. We can see that in the mesh network structure – it is effectively a star network.
But since the IoT platform natively supports a full mesh network structure, we can add a few network extenders to extend the size and range of the network.
The device viewer also lets us see our devices on the map. Again, the IoT platform keeps a lot of information about each device, including the physical location of the devices. We collect this information in the device viewer and we place the device on the map.
To find the map view, go to the More
tab, then click on the Device Map
button. Then select what devices to show on the Select devices
button (select All
devices there). Finally, go to Options
to select what data to view. Select Temperature
to see the current temperatures overlaid on the map.
Bonus: Switch Between Celsius and Fahrenheit
The IoT platform not only stores information about the devices connected to it. It also keeps track of users that use the platform, and their data.
In this demo, we use this particular feature of the IoT platform to keep track if the user wants to see temperatures in Celsius or Fahrenheit.
The information is stored in the backend database and made available to the smartphone apps that connect to it.
To change whether Celsius or Fahrenheit should be used, go the User
tab in the device viewer. There, click either Fahrenheit or Celsius. Watch how the smartphone app changes its display depending on the setting.
How it Works
The Thingsquare IoT platform demo is built exactly the same way as any IoT solution:
- The IoT backend runs in the cloud
- Devices securely connect to the backend and report data
- Frontends collect to the backend to receive updates from devices
The architecture of a typical IoT solution is shown below:
The Thingsquare IoT platform demo uses the same architecture, but both the user devices and IoT devices run in the same browser window.
But from the IoT platform backend’s perspective, there is little difference between the demo architecture and the architecture of any other IoT solution built with the platform. IoT devices connect via a secure TLS connection. User devices as well.
The main difference between the demo solution and a normal IoT solution is that user accounts have been configured to be anonymous: we do not require users to actively create an account for the purpose of using the demo.
Conclusions
At Thingsquare, we use our IoT platform to quickly build solid IoT solutions, without having to reinvent any wheels. Today, we launched an on-line, in-browser demo of the platform to display the its full power to the world.
We use our IoT platform to solve hard problems in the IoT space, with a particular focus on large-scale systems with extreme low-power requirements and long range – get in touch with us to learn how we can help your business!