The 2smart platform has pluggable architecture and consists of a universal core and
modules. The core knows nothing about hardware protocols and is not bound to any vendor. Modules are plugins that add support for different features and protocols. For example, if you want to integrate with Zigbee, all you need is just to install the Zigbee Bridge module from our market place.
This approach allows us to support devices from any vendor with any protocol. For now, we have the following bridges available: Zigbee, KNX, Modbus, Xiaomi Hub, Custom MQTT bridge, etc.
Having the right architecture was very important for the success of this project. Here are some of the aspects that we have implemented:
Every feature works offline. At the same time, we support remote access through the Internet.
No backend polling, everything is event-based. Almost everything works instantly with minimal delays in reactions.
Modular architecture with the ability to install 3rd-party extensions. We have created a marketplace for extensions. Extensions are distributed in docker images.
The user will be able to install the application on a local machine by running one command.
Device auto-discovery support.
Elaborate UI is the second most import part of the platform:
You can configure dashboards to suit your own needs.
You can have dashboards for different rooms, floors, and zones.
Everything on every dashboard is in real time.
You can add as many widgets to the dashboard as you like.
Each dashboard can have mobile and desktop layouts.
We target different types of users:
The main idea is the flexibility of managing a smart home. To achieve this, we have developed several scenarios. For more advanced users, we provide the opportunity to write scripts in the code editor.
For users who don’t want to write code, it will be possible to create flexible scripts using a fairly simple and highly flexible interface.
Professionals who want to integrate new types of devices can create their own bridge. For them, we have SDK, which simplifies the development process.