How the Methodology Came Together
The methodology took shape around the sheer range of projects built on the platform, spanning everything from simple device automation to large-scale industrial deployments
Project Types
The project portfolio spans the following areas:
- Basic automation: NodeMCU, Raspberry Pi, Zigbee, BLE
- Smart home setups: lighting, temperature control, security, leak detection, gas monitoring
- Weather stations: tracking environmental conditions
- Device prototyping: developing and debugging sensors and controllers
- Testing business hypotheses: sanitary standards, climate control, energy, transport, logistics
- Small business applications: generators, access control systems, solar panels
- Integrations: smart home dashboards, Grafana visualizations
8 Steps to a Quality IoT System
The platform follows a proven methodology for building IoT solutions, where each stage lays the groundwork for the one that follows.
1. Connectivity
This stage establishes a stable connection between the device and the server, acting as a bridge across protocols. Two connection types are supported:
- Direct connection: devices equipped with transceivers for general-purpose networks such as GSM, LTE, Wi-Fi, satellite internet, and Ethernet
- Connection through an intermediary: devices that rely on local protocols like ZigBee, Z-Wave, BLE, LoRa, NB-IoT, KNX, Modbus, and 1-Wire
2. Abstraction
This is the key stage that gives the platform its versatility. The Models subsystem is the mechanism behind digital twins (also known as device shadows), and it does the following:
- Raises the level of abstraction from a device to a control object, meaning a real-world entity such as a vehicle, a machine, an employee, or a building
- Links the structural and semantic content of that object to the device's data
- Organizes the data into a tree: nodes for structure, events for state changes, parameters for measurements, configurations for reference data, and actions for commands
The outcome is a digital model of the control object itself, not just of the device.
3. Normalization
This stage prepares data for further processing:
- Filtering out invalid readings, including zero and negative values
- Scaling values and converting units of measurement
- Typing the data (numbers, strings, binary data, structures)
- Deserializing non-standard payloads
- Aggregating data over time intervals
4. Beneficiation
This stage adds context to the data:
- Geolocation and geofences
- Timestamps and time periods
- Reference data, such as calibration records, VINs, and registration numbers
- Combining data from multiple sources
- Calculating derived metrics
5. Automation
This stage builds business logic without requiring programmers:
- A state machine: a graphical, no-code editor for building scenarios
- States and the transitions between them
- Triggers, including device data, API requests, other automation scripts, and timers
- Actions, such as sending commands and notifications, firing webhooks, and running integrations
Examples include greenhouse climate control, geofence monitoring, and predictive maintenance.
6. Integration
This stage connects the platform to external systems:
- A REST API for integrating with CRM, ERP, MES, and SCADA systems
- An SDK for more advanced automation scenarios
- Webhooks for receiving data from external systems
- Support for standard data exchange formats
7. Presentation
This stage covers data visualization and control:
- Data driven UI: interfaces are generated automatically based on the Models
- Real-time display of object states
- Change history and logs
- Mobile apps and web portals
8. Separation
This stage governs security and access control:
- Multi-tenancy, with complete data isolation between projects
- A flexible role model that lets you configure permissions for each individual user
- A discretionary system built on the principle that everything is forbidden unless explicitly allowed
- A full audit trail of every user action
Materials