iot-dc3  by pnoker

Industrial IoT platform for AI-driven device control

Created 7 years ago
650 stars

Top 50.6% on SourcePulse

GitHubView on GitHub
Project Summary

This open-source distributed IoT platform, IoT DC3, accelerates IoT project development and simplifies device management by offering a robust, cloud-native microservices architecture. It uniquely integrates large language models (LLMs) for direct device operation, enabling natural-language control, data querying, and intelligent analysis, benefiting developers and power users building complex IoT systems.

How It Works

IoT DC3 is built on a cloud-native microservices architecture using Spring Boot 4 and Spring Cloud 2025, designed for horizontal scaling and resilience. It provides extensive multi-protocol connectivity through 28 pre-built driver modules (industrial, IoT, data bridging) and a Driver SDK for custom protocols. A core differentiator is its AI Agentic Center, powered by Spring AI, which integrates LLMs to enable natural-language device operations, intelligent alarm analysis, and data insights via tool calling.

Quick Start & Requirements

  • Prerequisites: Java 21+, Maven 3.9+, Podman or Docker.
  • Installation: Clone the repository, start base dependencies (PostgreSQL + RabbitMQ) using make up-db, source environment variables (source dc3/env/dev.env.sh), build with Maven (mvn clean package), and then run individual Java services (e.g., java -jar dc3-gateway/target/dc3-gateway.jar).
  • Links: Quickstart Guide, Online Docs.

Highlighted Details

  • 28 ready-to-use driver modules supporting industrial (Modbus, OPC UA) and IoT (MQTT, CoAP) protocols.
  • AI Agentic Center with native Spring AI integration for natural-language device control, data queries, and intelligent analysis.
  • Cloud-native microservices architecture leveraging Spring Cloud 2025, gRPC, and Protobuf for efficient, scalable communication.
  • Enterprise-grade security features including tenant isolation, JWT + Spring Security with RBAC, and TLS/SSL transport encryption.

Maintenance & Community

The project follows a clear contribution workflow via GitHub. Feedback and issue reporting are managed through GitHub Issues. No specific community channels like Slack or Discord are listed.

Licensing & Compatibility

Licensed under the AGPL 3.0 license. This permits personal learning, research, and internal use. Modifications to the source code must be open-sourced. Offering IoT DC3 as a commercial service to third parties without open-sourcing modifications requires a commercial license.

Limitations & Caveats

The AGPL 3.0 license imposes significant obligations for commercial distribution or service offerings, mandating the open-sourcing of derivative works. While containerized deployment is supported, the quick start guide focuses on a multi-step local Java process execution, which may require additional configuration for production environments.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
48
Issues (30d)
0
Star History
13 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.