I’ve developed a open source modern Python bridge that connects MBMD (Modbus Measurement Daemon from volkszaehler org power meters to Victron Venus OS. The key motivation was Venus OS GUI v2 compatibility - existing bridges don’t implement the required GetItems() method, making meters invisible in the new interface.
GitHub Repository: https://github.com/bjoernh/victron_mbmd_mqtt_bridge
Why This Bridge?
Starting with Venus OS v3.40~2, the new GUI v2 stoped showing my SDM630 meter. This new bridge uses Victron’s official aiovelib async library, which making your MBMD-connected meters fully visible in GUI v2.
Key Features:
- GUI v2 Compatible - Works perfectly with the new Venus OS interface
- Multiple Device Support - Grid meters - support for PV inverters, AC loads prepared, but untested
- Async Architecture - Modern Python asyncio with auto-reconnect
- Easy Setup - Interactive configuration wizard and troubleshooting tools
- 97 unit tests, 89% code coverage, comprehensive error handling
- Watchdog Monitoring - Per-device timeout tracking to prevent stale data
- Getting started guide and developer documentation
What is MBMD?
MBMD (Modbus Measurement Daemon) is a lightweight server that reads Modbus data from power meters (via RS485 or TCP) and publishes measurements via MQTT. It supports 24+ meter types including:
Eastron SDM series (SDM72, SDM120, SDM220 SDM530, SDM630, etc.)
Janitza, Inepro, ABB, KOSTAL, ORNO, iEM3000 Series, …
MBMD GitHub: GitHub - volkszaehler/mbmd: ModBus Measurement Daemon - simple reading of data from ModBus meters and grid inverters
Compatibility
- Venus OS v3.40+ (tested with Python 3.12+)
- MBMD any version with MQTT support
- MQTT Broker
Helpful Utilities Included
- troubleshoot.py - Diagnoses common configuration issues
- setup_and_test.py - Interactive setup wizard with connectivity tests
- monitor_bridge.py - Real-time MQTT and D-Bus monitoring
Happy to answer questions. If this solves a problem for you, please star the repo and share your experience for feedback. ![]()
