The idea of developing a universal automation platform from scratch came to the 2Smart team when we searched for a solution for personal use. None of the complete smart home systems suits us for a variety of reasons. The main drawback of the home intelligent systems reviewed by us was the lack of flexibility, complexity of configuration, and excessive marketing focus on a narrow target audience.
As we thought about developing an automation platform, we also considered how it could be used in industrial, agricultural, and other commercial environments. The potential for developing the Internet of Things is still huge, and we decided that our product should meet the needs of the broadest possible range of users.
Such, we decided to develop the most flexible automation product, with which one could easily configure both the control system for an industrial or agricultural facility and an advanced smart home.
The main challenge that the 2Smart team took on was to create the best whole home automation system.
The most important business challenge was to develop the simplest automation platform possible. Connecting devices and setting up basic home control automation should not require special technical skills from the user. The configuration should be intuitive.
Administrators and users of the system should be available in a variety of automation scenarios and the ability to control the parameters of managed devices. The full smart home system should provide for unlimited expansion of capabilities and the addition of new functionality, including by the administrator.
At the same time, the automation platform must be enterprise-grade. A simple and intuitive user interface must be combined with professional features and maximum flexibility.
The key technical challenge, therefore, was precisely the system’s flexibility, which primarily lies in the ability to connect any device. To make this possible, the platform must support the maximum IoT protocols used to interact with sensors and connected devices on objects.
To answer the technical challenge, the 2Smart team decided to use the pluggable architecture when the product consists of a universal core and many modules. The platform core does not know anything about the hardware protocols used and is not tied to any manufacturer. Plugins, or modules, are responsible for protocol support and all user functionality.
The core is an MQTT broker whose topic structure is published according to the Homie convention v3.0.1.
This approach makes it possible to control the device and receive information from its sensors without a specific idea of what protocol this device is based on.
It is known that such popular protocols as KNX and Modbus are not designed to work with an MQTT broker. To support them, our team has developed a Software Development Kit (SDK), based on which it is possible to create “bridges”, or services responsible for the interaction of a system and a device operating on a particular protocol. So, for example, a Modbus bridge can communicate with an actual device and the whole home automation system via a Modbus TCP/RTU gateway.
As for solving the problem of simple configuration of the platform by the end user, our team decided to take on those tasks that, in the full smart home automation systems we studied, are usually solved by the user himself. Namely, writing complex configuration files, so the device starts working in the system.
Instead of configuring devices and the entire system, the 2Smart team offered users a simple interface to connect and control smart devices.
The 2Smart Standalone automation platform is installed on a local server – a computer running centOS 7, Debian, macOS, or Ubuntu. Various sensors and controlled devices are connected to this server.
If necessary, you can deploy the platform on a cloud server. This option is suitable if you are going to work with virtual devices. Connecting physical devices will also be possible, but each of them will need to have a static IP.
The Standalone complete smart home systems users are virtually unlimited in the types of IoT devices and sensors that connect to the platform. However, in most cases, their connection requires additional equipment, such as converters, gateways, and buses, to support different IoT protocols.
The platform interface consists of two parts:
End users also can manage the system using the 2Smart Standalone mobile app, available for Android and iOS devices.
In addition, integration with the 2Smart Cloud platform is possible. The user can use the 2Smart Cloud mobile application to manage Standalone devices. Our team carries out the support and development of this application with a higher priority, so the user gets access to new features earlier if they configure this integration.
The admin panel with a reactive interface is designed to configure the full smart home system. Here you can add new devices and set them up. You can also set general settings in this panel, view the selected sensors’ values, and create automation scenarios.
The admin panel dashboard displays the current status of all system devices:
The system interface makes all changes visible without reloading the page and delays.
If new nodes, sensors, or telemetry have been added to the device, they are instantly displayed on the device card. The same logic works when removing the components of the device.
The device card immediately pulls up new values after the user changes the sensor values. The status of the device is also displayed in real-time. By physically changing the device sensor’s value, the user can see the changes on the device card.
A device is a physical or virtual machine that supports the 2Smart protocol and can connect to a server or cloud. It acts as a hub for sensors. The device announces its set of nodes and sensors, reports their state, and receives control messages for them.
Devices are represented as individual components in a card, consisting of nodes, options, and telemetry.
Nodes are logical combinations of sensors. The device combines its sensors or sensors of child devices into nodes. Sensors cannot be defined outside of a node. Each node can also contain its sensors, options, and telemetry.
Scenarios are used to automate the operation of devices connected to the smart home automation platform. They are divided into easy and professional. Easy scenarios are available in the platform market as extensions that you just need to download, install and make the necessary settings. Professional scenarios are those developed by an advanced platform user with the JavaScript programming language and the 2Smart Standalone public API.
The user who has developed a pro scenario can share it with all who have deployed home automation control systems based on 2Smart Standalone. To do this, they need to publish their scenario to NPM. After that, it will appear in the public extension market.
Here are the basic easy scenarios that our team has developed. They are available in the extension market immediately after the platform is deployed:
Bridges or addons, also available in the built-in market, are used to connect devices to the platform, integrate with other services, and expand full smart home system capabilities.
As with extensions, platform users can use tools to develop their bridges. The only requirement is access to the API of the desired service.
Our team provides several ready-made solutions that are available in the 2Smart Standalone market immediately after platform deployment.
The following bridges are responsible for supporting additional protocols in full smart home automation systems based on 2Smart Standalone.
The bridges described below enhance the user experience when using complete smart home systems based on the platform.
The client panel allows you to add screens to control the whole home automation system and create widgets that you can customize to control connected devices. Using these widgets, the user can view and control sensor readings, set the required values, manage automation scenarios and display the necessary information on the screen.
The server interface allows you to create unlimited screens (displays) with various combinations of widgets. It makes it possible to independently organize screens by any logic defined by the user, without strict reference to room types (ground floor, bedroom, bathroom).
The end user can flexibly customize the location of widgets on each screen using drag and drop.
Any screens configured in the system can be used to display on an external monitor. They are also displayed in the user’s mobile application as configured, with the ability to manage widgets. Here are some options for configuring screens for different needs:
The Parent Control feature restricts access to screens with a password. Activating this feature will help protect the platform from accidental actions by children when using it as a smart home assistant system. A password also sets restricted access for unauthorized employees when using the platform in a commercial facility.
After enabling the Parent Control function, the user can block the screen anytime by pressing the Lock session button. The screen also blocks automatically if there is no user activity for a certain time.
The finished complete smart home automation systems were deployed in the homes of our managers and specialists. The platform has also been submitted for testing at an agricultural facility, namely a sizeable private greenhouse. Its owner provided the best feedback on their platform deployment experience.
One of the most interesting examples of using a 2Smart Standalone is the home of the head of one of the projects in the large WebbyLab family, which is located in the suburbs of Kyiv. Laying communications in the house, even during its construction, meant configuring an advanced smart home based on 2Smart Standalone. Let’s take a look at what came of it.
To deploy the 2Smart Standalone smart home automation software, a budget mini-computer HP 260 G2 DM (2TP47ES) with the following characteristics is used:
These computer specifications are sufficient for the smooth operation of 2Smart Standalone, even if many devices and sensors are connected to the platform.
To provide additional system autonomy, the user has activated in the BIOS of the mini-computer the function to turn on the device when power is applied automatically. Thus, even after a power outage, a computer with a deployed full smart home automation platform resumes its work immediately after restoring the power supply.
The house is equipped with storage batteries to ensure the constant availability of power supply. The power automatic transfer switch (ATS), shown in the photo below, switches the house to battery power if mains power is unavailable. When the network becomes available, the ATS switches the house’s power to it.
For the smart home to understand which power supply option is currently being used, a Zigbee door open sensor is installed on the ATS handle. If the sensor is in a position that actually indicates using the battery, the automation platform turns off some electrical loads, such as underfloor heating, to save battery power.
We chose this example from several complete smart home automation systems because it is impressive, among other things, because it uses a lot of connected devices operating on different protocols:
Such a wide range of devices that operate using different protocols allows us to conclude how we practically implemented creating a flexible system that can connect any device. The vast majority of devices connected to the whole home automation system work successfully, regardless of the protocol used.
The philosophy adhered to by the user is that a full smart home automation platform should work as autonomously as possible and not require attention to itself after setting up the main scenarios. The user remembers the existence of the automation platform only when it sends him the notifications that he asked to be sent.
The following home control automation scenarios manage the utility resources of the home, improve its energy efficiency and extend the life of the installed equipment:
The following scenarios control the lighting in the house and outside:
A couple of service scenarios serve devices connected to the automation platform:
The user monitors the state of the whole home automation system primarily using a mobile application. To receive emergency alerts, he set up integration with the Telegram messenger, where notifications about the following events are instantly received:
The 2Smart Standalone market includes two bridges for integrating the automation platform with the 2Smart Cloud IoT platform:
A user who deployed an advanced smart home based on 2Smart Standalone found the first bridge listed more useful. Here are three examples of its practical use:
Thus, 2Smart Standalone can significantly improve the user experience even for simple home devices, providing features not provided by their original functionality.
Simple calculations show that using the 2Smart Standalone full smart home system saves at least 40% of resources.
The easiest way to calculate the savings on the example of heating. The inertial heating system (water-heated floor) allows you to turn on the boiler only at the night rate without losing comfort. If the cost of a kilowatt-hour is UAH 1.68, and at the night rate it is UAH 0.84, conventional 1000 kilowatt-hours with round-the-clock heating would cost 1400 UAH, and with using only the night tariff 840 UAH, i.е. 40% cheaper
The 2Smart Standalone system allows you to additionally save on the dosed turning on of other electrical systems: electric underfloor heating, heated towel rails, and hot water circulation. Here the savings can be more than 40% because, in addition to using the night tariff, it is possible to radically reduce the operating time of devices, switching on them only if it is indispensable.
Of course, this benefit is common to most home automation control systems on the market. The difference between 2Smart Standalone and other full smart home systems, which the user noted, is the almost limitless possibilities for configuring scenarios.
The owner of the smart home described above is the project manager, which is not related to the development and support of 2Smart Standalone. Therefore, he acts as just an advanced user who has received a ready-made system.
The user is satisfied that the platform is installed on the system with just one command in the console. After that, it is ready to be configured.
The platform installed supports any protocol. The user was able to connect almost every device he planned.
When configuring this smart home, there were only two problems:
The bridges and scenarios from the market really provide amazing flexibility. And the ability to create custom scenarios contributes to implementing any idea for home equipment automation.
However, the main possible drawback the user drew attention to is the lack of ready-made solutions. The platform does not offer ideas for automating the work of lighting, boiler, or heating systems. The system administrator must be well aware of its capabilities and understand how to use them. Only in this case, the possibilities of the platform become almost limitless.
Despite this, the user named 2Smart Standalone is the best whole home automation system he knows. The platform allowed to set up as complete home automation control as the user needed.
If you require 2Smart’s custom Internet of Things development services or white-label IoT platform solutions – send us your task description, and we will find the best solution for you.
Share with us your business idea and expectations about the software or additional services.