Fault Detection and Diagnostics for HVAC systems — config-driven, pandas-based
Project description
Open-FDD
Open-FDD is an open-source knowledge graph fault-detection platform for HVAC systems that helps facilities optimize their energy usage and cost-savings. Because it runs on-prem, facilities never have to worry about a vendor hiking prices, going dark, or walking away with their data. The platform is an AFDD stack designed to run inside the building, behind the firewall, under the owner’s control. It transforms operational data into actionable, cost-saving insights and provides a secure integration layer that any cloud platform can use without vendor lock-in. U.S. Department of Energy research reports median energy savings of roughly 8–9% from FDD programs—meaningful annual savings depending on facility size and energy spend.
The building is modeled in a unified graph: Brick (sites, equipment, points), BACnet discovery RDF, platform config, and—as the project evolves—other ontologies such as ASHRAE 223P, in one semantic model queried via SPARQL and serialized to config/data_model.ttl.
Quick Start — Open-FDD AFDD Platform Manually by the Human
Open-FDD uses Docker and Docker Compose to orchestrate and manage all platform services within a unified containerized environment. The bootstrap script (./scripts/bootstrap.sh) is Linux only (tested on Ubuntu Server and Linux Mint, x86; should work on ARM but is untested). Windows is not supported.
Engine-only (rules engine, no Docker)
If you only want the Python rules engine (no full platform stack):
pip install open-fdd
Then run the standalone examples from:
🚀 Platform Deployment (Docker)
git clone https://github.com/bbartling/open-fdd.git
cd open-fdd
./scripts/bootstrap.sh
Also available is the partial stack mode: ./scripts/bootstrap.sh --mode collector, --mode model, or --mode engine. See Modular architecture for the service matrix and mode behavior.
Quick Start — OpenClaw (agent)
All OpenClaw work starts from openclaw/README.md — that page is the single entry (mission, skills, bench tests, MCP/auth, and links to product integration docs).
The open-fdd Pyramid
If OpenFDD nails the ontology, the project will be a huge success: an open-source knowledge graph for buildings. Everything else is just a nice add-on.
Online Documentation
- 📖 Docs — GitHub Pages (Linux quick start, stack, reference).
- 📕 Documentation PDF — offline / print-friendly bundle.
- ✨ LLM prompt (copy/paste template) — canonical text on the docs site (same section as LLM workflow); GitHub Pages serves this path without a trailing slash.
Dependencies
Optional: rdflib (Brick TTL), matplotlib (viz)
Contributing
Open PRs against the current integration branch (e.g. develop or develop/vX.Y.Z), not master — master is release-only and protected.
Tests: ./scripts/bootstrap.sh --test (frontend + pytest + Caddy; frontend tries Docker then host npm), or from repo root:
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
pytest -v
.[dev] pulls in the full Python test deps; pyproject.toml sets default test paths. More detail: docs/contributing.md. Ask in #dev-chat on Discord if the active integration branch is unclear.
Fork sync (once add upstream, then as needed):
git remote add upstream https://github.com/bbartling/open-fdd.git
git fetch upstream && git checkout develop && git merge upstream/develop && git push origin develop
(Use your real integration branch name instead of develop if the project is on a versioned line.)
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file open_fdd-2.0.11.tar.gz.
File metadata
- Download URL: open_fdd-2.0.11.tar.gz
- Upload date:
- Size: 151.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4ac535bc011167de3729e69b290aa2457c549f53f36d86ff1558b6294c26c786
|
|
| MD5 |
9ba0ae2815748fb17325781e37c641d9
|
|
| BLAKE2b-256 |
e03204fed2a797931d86bfe135c490eea007993aaf2b1c7260454fbe1705eef9
|
Provenance
The following attestation bundles were made for open_fdd-2.0.11.tar.gz:
Publisher:
publish-open-fdd.yml on bbartling/open-fdd
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
open_fdd-2.0.11.tar.gz -
Subject digest:
4ac535bc011167de3729e69b290aa2457c549f53f36d86ff1558b6294c26c786 - Sigstore transparency entry: 1191470743
- Sigstore integration time:
-
Permalink:
bbartling/open-fdd@8bf0957a10e463cf7fa46700d4ae628d4eb99369 -
Branch / Tag:
refs/tags/open-fdd-v2.0.11 - Owner: https://github.com/bbartling
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-open-fdd.yml@8bf0957a10e463cf7fa46700d4ae628d4eb99369 -
Trigger Event:
push
-
Statement type:
File details
Details for the file open_fdd-2.0.11-py3-none-any.whl.
File metadata
- Download URL: open_fdd-2.0.11-py3-none-any.whl
- Upload date:
- Size: 191.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5ea2892c3669e780438edc18bbd5402511a3161d0a7b66f25b7fb4d5027d29e
|
|
| MD5 |
00b7ca726022df393f0ab16c425ae71d
|
|
| BLAKE2b-256 |
424ae1be2cad4504269371a94c4b8458b3e64f6bc2f1768edfdd3157779463e4
|
Provenance
The following attestation bundles were made for open_fdd-2.0.11-py3-none-any.whl:
Publisher:
publish-open-fdd.yml on bbartling/open-fdd
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
open_fdd-2.0.11-py3-none-any.whl -
Subject digest:
e5ea2892c3669e780438edc18bbd5402511a3161d0a7b66f25b7fb4d5027d29e - Sigstore transparency entry: 1191470744
- Sigstore integration time:
-
Permalink:
bbartling/open-fdd@8bf0957a10e463cf7fa46700d4ae628d4eb99369 -
Branch / Tag:
refs/tags/open-fdd-v2.0.11 - Owner: https://github.com/bbartling
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-open-fdd.yml@8bf0957a10e463cf7fa46700d4ae628d4eb99369 -
Trigger Event:
push
-
Statement type: