Overview
An on-premise Agentic AI system for predictive maintenance in SME manufacturing. Runs on LMP's NVIDIA Blackwell GPU cluster. The agent monitors industrial equipment via telemetry sensors, detects anomalies before failures occur, checks spare parts inventory, places orders, and schedules maintenance β all autonomously, with Human-in-the-Loop (HITL) financial controls for high-value decisions.
Architecture
PT100 Sensor β RPi (MAX31865 ADC) β MQTT Broker β Ingestion Service β TimescaleDB
β β
Eclipse Mosquitto AI Agent (LLM on Blackwell)
(pve3:1883) β
ββββββββββββ΄βββββββββββ
β β
Part in stock Part NOT in stock
β β
Generate work order Query supplier API
Assign to technician β
ββββββββ΄βββββββ
Under limit Over limit
β β
Auto-order HITL approval
Hardware Platform
Control Server (pve3)
| CPU | Ryzen 9 9950X3D |
| RAM | 96GB DDR5 |
| GPU | RTX 5080 16GB |
| Role | Orchestration, Docker, MQTT |
AI Cluster (2Γ GB10 Blackwell)
| Nodes | spark + dark |
| VRAM | 128GB each (256GB total) |
| Interconnect | 2Γ200GbE RDMA |
| Model | Nemotron-3-Nano-30B (TRT-LLM) |
Telemetry β Part #1 (PoC)
| Parameter | Value | Notes |
|---|---|---|
| Sensor | PT100 (3-wire RTD) | via MAX31865 ADC on RPi |
| Measurement | Temperature (Β°C) | Range: -200 to +850Β°C |
| Interval | 5 seconds | 17,280 readings/day |
| Normal range | 35β40Β°C | Operational band |
| Warning | >41Β°C | Instant, single reading |
| Alarm | >45Β°C Γ 10 readings | 50 sec sustained β failure |
| Transport | MQTT (QoS 1) | Topic: iol/telemetry/part/1/temperature |
| Database | TimescaleDB (PG16) | ~240 MB/year for 1 sensor |
Database Schema (TimescaleDB)
ββββββββββββ ββββββββββββ ββββββββββββββββββββββ
β parts β1ββββ*β sensors β1ββββ*β sensor_thresholds β
β β β β β β
β part_id β β sensor_idβ β range_min/max β
β part_no β β part_id β β warning_value β
β name β β type β β alarm_value β
β location β β unit β β alarm_count β
β status β β interval β β β
ββββββββββββ ββββββ¬ββββββ ββββββββββββββββββββββ
β
ββββββ΄ββββββ
βtelemetry β
β(hypertbl)β ββββββββββββ
β β β alerts β
β time β β β
β sensor_idβ β alert_id β
β value β β sensor_idβ
β quality β β type β
ββββββββββββ β status β
ββββββββββββ
5 tables Β· telemetry is a TimescaleDB hypertable with automatic time-based partitioning.
Full SQL: db-design.md on GitLab
Data Ingestion Pipeline
PT100 + RPi
MAX31865 ADC β Python β JSON payload every 5s
MQTT Broker
Eclipse Mosquitto 2 on pve3:1883
Ingestion Service
Python subscriber, batch INSERT (50 rows or 5s)
TimescaleDB
PG16 hypertable, 90-day raw + 1-min aggregates
Docker Stack
services:
iol-db: timescale/timescaledb:latest-pg16 # :5432
mqtt-broker: eclipse-mosquitto:2 # :1883, :9001
iol-ingest: custom Python image # subscribes MQTT β writes DB
Full compose + Dockerfile: telemetry-ingestion.md on GitLab
Inventory Decision Logic
After confirming a failure prediction, the agent checks spare parts inventory and follows one of three paths.
Decision A
Part In Stock
Reserve part β generate work order β assign technician β schedule before failure. Fully autonomous.
Decision B1
Out of Stock, Under β¬500
Query supplier API β auto-order β create PO β schedule work after delivery. Autonomous within limit.
Decision B2
Out of Stock, Over β¬500
Query supplier β create pending PO β HITL approval request β human approves/rejects. Human-in-the-loop.
Full logic + SQL: inventory-decision-logic.md on GitLab
Maintenance Log System
Customer-supplied maintenance books are ingested into both a structured SQL database (lifecycle tracking, overdue alerts) and a vector embedding store (semantic search by the LLM agent). The agent combines both for failure prediction.
Structured Queries
SQL: lifecycle tracking, overdue parts, maintenance history
Semantic Search
pgvector + nomic-embed-text: find historical correlations
LLM Reasoning
Nemotron on Blackwell: predict time-to-failure from combined data
Project Objectives
1. Validate on Blackwell
Prove local LLMs can do real-time telemetry + semantic log analysis without cloud.
2. Closed-Loop Integration
Agent writes to ERP/SQL, generates work orders, calls supplier APIs autonomously.
3. HITL Efficiency
90% automation, humans approve only high-value financial decisions.
Python Libraries
GitLab Repository Documents
| Document | Description | Link |
|---|---|---|
| project-analysis.md | Full project analysis & definition | GitLab β |
| db-design.md | TimescaleDB schema, detection queries, retention | GitLab β |
| db-design-maintenance.md | Maintenance log DB β structured + pgvector + seed data | GitLab β |
| telemetry-ingestion.md | PT100 β MQTT β DB pipeline, code, Docker | GitLab β |
| python-libraries.md | Python library reference with official docs links | GitLab β |
| maintenance-log-design.md | Maintenance log schema, semantic search, ingestion pipeline | GitLab β |
| sample-data/ (3 files) | Sample maintenance logs: ML-001 (7d), ML-002 (3d), ML-003 (8d) | GitLab β |
| spare_parts_stock.sql | Spare parts inventory DB β part_no, qty, price + seed data | GitLab β |
| inventory-decision-logic.md | Decision A, B1, B2 β full SQL + HITL flow + new tables | GitLab β |
| supplier-api-design.md | Supplier gateway API β search, quote, order, tracking | GitLab β |
| agent-orchestration.md | LLM orchestration β tool-calling engine, event loop, audit trail | GitLab β |
π« EventAlpha
LIVE β PAPER TRADINGTicket market intelligence & arbitrage platform (formerly Patko Project). Monitoring Ticketmaster US+EU, concerts + sports. Virtual β¬5,000 paper trading budget active.
View EventAlpha page βπ¦ Sprint Summary β 2026-03-23/24
DESIGN PHASE COMPLETE- βProject analysis & definition (project-analysis.md)
- βTelemetry DB schema designed (db-design.md)
- βTimescaleDB deployed: qa-docker:5434, DB iol_telemetry, seeded with PART-001
- βPT100 β MQTT β TimescaleDB ingestion pipeline designed (telemetry-ingestion.md)
- βMaintenance log schema (4 tables) + 3 sample logs (7-day, 3-day, 8-day failure patterns)
- βSpare parts stock schema: part_no, qty, price β 5 sample parts seeded
- βSupplier API gateway spec (5 endpoints, ranked results, HITL gate)
- βAgent orchestration layer designed (8 tools, ReAct loop, 128K context)
- βPython library reference doc with official links
- βFull project handover: IOL-Agent-Project-Handover.md (190KB) + PDF (397KB)
- βAll docs pushed to GitLab + this portal page updated