System Architecture¶
The system operates through two primary workflows: Data Flow for normal operation and Configuration Flow for setup and maintenance.
Data Flow¶
flowchart LR
classDef block fill:#e5e5e5,stroke:#555,stroke-width:1px,color:#111;
classDef block0 fill:#d4d4d4,stroke:#555,stroke-width:2px,color:#111;
Sensors["Industrial Devices"]:::block
Gateway["**Yeti Gateway**"]:::block0
TB["ThingsBoard <br> Cloud Platform"]:::block
App["Application Server"]:::block
Sensors -->|Data Acquisition| Gateway
Gateway -->|Telemetry Upload| TB
TB -->|Data Integration| App
TB -->|Control Commands| Gateway
-
Data Acquisition (Industrial Devices -> Yeti Gateway)
The gateway polls connected industrial devices (e.g., Modbus) at configurable intervals and collects raw sensor data. -
Telemetry Ingestion (Yeti Gateway -> ThingsBoard)
The gateway sends collected data to the cloud over MQTTS (MQTT over TLS/SSL), ensuring encrypted and reliable transmission. -
Data Integration (ThingsBoard -> Application Server)
The Application Server retrieves real-time, aggregated, or processed data from ThingsBoard via its secure REST API for analytics, dashboards, and business logic. -
Control Commands (ThingsBoard -> Yeti Gateway)
ThingsBoard enables remote management, including OTA firmware updates, configuration adjustments, and direct control commands sent back to the gateway.
Configuration Flow¶
flowchart LR
classDef block fill:#e5e5e5,stroke:#555,stroke-width:1px,color:#111;
classDef block0 fill:#d4d4d4,stroke:#555,stroke-width:2px,color:#111;
%% Nodes
PC["User Device<br>(Phone/Laptop)"]:::block
Gateway["**Yeti Gateway**"]:::block0
%% Flows (top → middle → bottom)
PC -->|Local Connection| Gateway
Gateway <-->|Parameter Configuration| PC
-
Local Connection (User Device -> Yeti Gateway)
The user device (phone or PC) temporarily connects to the Yeti Gateway—typically via a local Wi-Fi access point (AP mode) or BLE—to perform initial setup. -
Parameter Configuration (Yeti Gateway <-> User Device)
The user sends required configuration parameters (e.g., cloud credentials, device connection strings, polling intervals) to the gateway before deployment.