pnoker c71b420248 docs(headers): add the missing agpl headers to deploy and config files
- add the canonical AGPL header to the six agentic application yml files and the two python scripts that lacked one
- add the header to all 79 kustomize, helm, and grafana yaml files, including the k8s driver template which regenerates the 36 driver manifests
- verified: the k8s yaml files parse (multi-document aware), the python scripts compile, and the regenerated drivers differ only by the header
2026-08-25 16:13:47 +08:00

English | 中文 | 日本語 | Tiếng Việt | 한국어 | Español | Русский

AI assistants: Read README.ai.md first for a concise, AI-friendly overview of IoT DC3.

IoT DC3 — 多协议接入、云原生、AI 赋能的开源工业物联网平台,面向智能体演进

GitHub Stars Gitee Star Gitee Fork Contributors License Java 21 Spring Boot 4

IoT DC3 — the multi-protocol, cloud-native, open-source industrial IoT platform.
AI-powered — from device connectivity to industrial agents

https://dc3.site

🔌 Multi-protocol connectivity  ·  🤖 AI Agentic Center  ·  ☁️ Cloud-native microservices


📸 Product Preview

📸 Platform Overview 📸 Device Management 📸 AI Chat
Platform dashboard
Home / Dashboard
System overview · Online device metrics · Data trend charts
Device management page
Device Management
Device list · Online status · Search and filtering
AI chat page
AI Chat
Natural-language device queries · Data analysis · Intelligent assistance

🏗️ Architecture Overview

Architecture at a Glance

IoT DC3 Architecture Panorama

Six-layer microservice architecture at a glance: clients → gateway → four center services → message bus → 36 protocol drivers → field devices. PostgreSQL (TimescaleDB + pgvector + AGE) persistence and optional observability stack (ELK + Prometheus + Grafana) laid out in one view.

🧱 Design principles — cross-service calls always go through Facade interfaces; the DO/BO/VO three-tier model keeps persistence, business, and API shapes strictly separated; and tenant isolation runs end to end across database, cache, and API paths. Clear boundaries that scale across services and teams.

📖 For the full architecture documentation, see System Architecture Overview.

Core Features

🔌 Multi-Protocol Device Connectivity

IoT DC3 includes 36 access driver modules for industrial automation, IoT communication, data bridging, basic communication, and simulation/debugging scenarios, reducing the cost of connecting common devices and data sources:

Category Driver Modules
🏭 Industrial protocols Modbus TCP · Modbus RTU · OPC UA · OPC DA · Siemens S7 · BACnet/IP · EtherNet/IP · Omron FINS · Mitsubishi MELSEC · IEC 60870-5-104 · IEC 61850 · DNP3 · DLMS · DLT645 · KNX · M-Bus · SL651
📡 IoT protocols MQTT · CoAP · LwM2M · HTTP · BLE · Zigbee · LoRaWAN
🗄️ Data bridging MySQL · PostgreSQL · Oracle · SQL Server · Redis
🔧 Basic communication, messaging and NMS TCP/UDP · Serial · SNMP · CAN · Kafka
🧪 Simulation and debugging Virtual · Listening Virtual

The Driver SDK supports fast development of custom protocol drivers and registration into the runtime platform.

🤖 AI Capability Integration

The agentic center is built on Spring AI and connects large language models into IoT operations workflows:

  • Natural-language assisted operations - through Tool Calling and under access control, LLMs can query devices, read/write points, and assist with command execution
  • Intelligent alarm analysis - AI assists with root-cause analysis and response suggestions
  • Data insights - Query device data in natural language and generate visual charts
  • Multi-model support - Compatible with OpenAI API-style providers and mainstream models such as GPT, Claude, DeepSeek, and Qwen
  • Conversation memory - Multi-turn conversations and context memory persisted to the database

🏗️ Cloud-Native Microservices

Distributed microservice architecture based on Spring Boot 4 + Spring Cloud 2025:

  • Service governance - Spring Cloud Gateway as the unified entrypoint, with static routes and flexible environment variables
  • Efficient communication - gRPC service calls with Protobuf serialization
  • Horizontal scaling - Stateless design for scaling individual services by workload
  • Resilience - Replaceable service nodes and fault isolation

📊 Real-Time Data Engine

  • Data collection - Drivers collect device telemetry and send it asynchronously through the internal message broker — pluggable per deployment: RabbitMQ (default), Kafka, RocketMQ, Pulsar, ActiveMQ or any MQTT 5 broker (broker guide)
  • Time-series storage - Efficient queries for real-time and historical data
  • Rule engine - Flexible alarm rules with multi-level alarms and notifications
  • Event traceability - Full command and event history

🔐 Enterprise Security and Multi-Tenancy

  • Tenant isolation - Tenant-level isolation across database, cache, and API paths
  • Authentication and authorization - JWT + Spring Security with RBAC
  • Transport encryption - TLS/SSL communication support
  • Audit tracking - User operation and system event logs

🧩 Developer Friendly

  • Driver SDK - A complete driver development toolkit. See the Driver Authoring Guide
  • Separated frontend and backend - Vue 3 + TypeScript frontend, RESTful and gRPC APIs
  • Containerized deployment - One-command startup with Podman / Docker Compose, plus compose scaling, Docker Swarm, Kubernetes and Helm deployment configs. See the Deployment Guide.
  • Complete documentation - Online docs, quickstart guide, and troubleshooting guide

Quick Start

For source-based local development, start PostgreSQL and RabbitMQ, load local environment variables, then build:

make up-db
source dc3/env/dev.env.sh
mvn -s .mvn/settings.xml clean package

Use make up-db-cn if you prefer the Alibaba Cloud registry in Mainland China.

📖 For service startup order, IDE setup, verification commands, and common pitfalls, see the full Quickstart.

🛠️ Technology Stack

IoT DC3 is built on Java 21, Spring Boot 4, Spring Cloud 2025, Spring AI 2, PostgreSQL, a pluggable message broker (RabbitMQ, Kafka, RocketMQ, Pulsar, ActiveMQ or MQTT 5 — selection guide), gRPC, Vue 3, TypeScript, and Vite.

See Technology Stack for component details and where each technology is used.

📖 Documentation and Community

Resource Link
📚 Online docs docs.dc3.site
🚀 Quickstart Quickstart Guide
🛠️ Technology stack Technology Stack
🏗️ Architecture Modules and Dependencies
🔧 Driver development Driver Authoring Guide
🐛 Troubleshooting Troubleshooting
📋 Changelog Release Changelog
🐛 Issue feedback GitHub Issues
🇨🇳 Gitee mirror Gitee GVP Project

🌍 Use Cases

🏭 Smart Factory Production-line device monitoring, process parameter collection, predictive maintenance, and OEE analysis
Energy Monitoring Remote metering for power, water, and gas; energy trend analysis; anomaly alarms
🌾 Smart Agriculture Greenhouse monitoring, automatic irrigation control, pest and disease warnings, yield forecasting
🏙️ Smart City Streetlight management, environmental monitoring, municipal facility operations, safety monitoring

🤝 Contributing

Contributions of all kinds are welcome. Please follow this workflow:

  1. Fork and branch - Create a branch from main, using the format feature/your_name/feature_description (for example: feature/pnoker/mqtt_driver)
  2. Develop and commit - Complete your changes on the new branch and follow the Conventional Commits specification
  3. Open a PR - Submit a Pull Request to the develop branch for maintainer review and merge

📄 License

IoT DC3 is open source under the AGPL 3.0 license.

  • Personal learning, research, and internal use - Free
  • Modify the code and open source your changes - Welcome
  • ⚠️ Offering it as a commercial service to third parties without open-sourcing modifications - Requires a commercial license

For commercial licensing details, see LICENSE.txt.

S
Description
IoT DC3 是一个基于 Spring Cloud 的 100% 完全开源的、分布式的物联网(IoT)平台,用于快速开发物联网项目和管理物联设备,是一整套物联系统解决方案。
Readme 317 MiB
Languages
Java 75.7%
TypeScript 10.4%
Vue 8.3%
PLpgSQL 3.6%
JavaScript 0.9%
Other 1%