Skip to content

bbartling/diy-bacnet-server

Repository files navigation

diy-bacnet-server

Discord CI MIT License Development Status Python

Lightweight BACnet/IP + JSON-RPC edge microservice for Docker-based deployments, including optional Modbus TCP client features.

Quick Start

git clone https://github.com/bbartling/diy-bacnet-server.git
cd diy-bacnet-server
docker build -t diy-bacnet-server .
docker run --rm -it --network host --name bens-bacnet diy-bacnet-server \
  python3 -m bacpypes_server.main --name BensServer --instance 123456 --debug --public
  • BACnet/IP: UDP 47808
  • JSON-RPC API: HTTP 8080
  • Swagger/OpenAPI: /docs and /openapi.json (when enabled by env)

Local development

pip install -e ".[dev]"
python -m bacpypes_server.main --name Lab --instance 999 --debug

Dependencies and optional dev tools (pytest, black, …) live in pyproject.toml (PEP 621), not requirements.txt.

The Docker image installs the test extra (pytest, pytest-asyncio) so sibling stacks such as open-fdd-afdd-stack can run scripts/bootstrap.sh --diy-bacnet-tests (docker exec … pytest in the gateway container).

Documentation

License

MIT. See LICENSE.

Packages

 
 
 

Contributors

Languages