This is a hidden post, as captureKNX is currently in pre-release stage. Content will change between now and the post appearing publicly. |
captureKNX is software installed on a Raspberry Pi 5 that will (in conjunction with a HAT that provides a physical interface) capture all KNX traffic to a database.
The installed ‘InfluxDB’ database and its companion visualisation software ‘Grafana’ will let you query this data from a browser any time.
Whilst replicating ETS’ Group Monitor functionality, the power of the database as well as the graphing abilities in Grafana let you do a lot more with these captured telegrams.
capture-What?
If you’re new to KNX, check out my post Why KNX?
In short, it’s the building management platform we’re using here at home for the building automation and our ‘smart home’ controls.
Features
- Capture all KNX network traffic for a year (or longer!) without needing to leave ETS running and connected. (ETS6 will only capture 1,000 telegrams before over-writing them.)
- No fancy hardware. Buy a Raspberry Pi 5, plug a KNX shield on top, add a solid-state drive, stick it in a box (artwork provided here to print your own) and apply power!
- No valuable ETS dongle left unguarded on site.
- Plugs directly into the KNX bus. This means your KNX telegrams aren’t permanently spamming your IP network, and means you can capture tiny KNX installations that don’t have a full-time router or programming interface.
- Easy setup. A bash script installs all the software components. You only need to copy the topology/project file across after exporting it from ETS.
- A fully on-premises solution. Once you’ve bought the hardware, that’s your total outlay. (Late 2024 estimate circa $AUD250 / $US170 / €150.)
- With Grafana you can easily visualise data like daily temperatures or light levels, and overlay heating/lighting control signals.
- A dedicated dashboard replicates ETS’ Diagnostics / Group Monitor feature. Debug your logic and other occurrences by filtering the view by time/date, Group Address, sending device or the value sent.
- Hunting down bugs? Grafana can send you an alert when a specific telegram is seen!
Limitations / Restrictions
- The direct-connection to the KNX bus means it can only capture the Telegrams seen on that network Line. This will prevent it from seeing all traffic in a multi-area or multi-line network.
- It’s not an off-the-shelf product. You buy the components and build it yourself – but there’s heaps of documentation here to help you.
- Every telegram to a known Group Address is captured, however it only decodes the most commonly-used DPT types. (This is expected to evolve over time).
Software architecture
captureKNX is a consolidation of multiple open-source & freeware software components, all running on the one Raspberry Pi 5 single board computer.
The ‘HAT’ provides the physical interface to the KNX TP Line, and the ensuing components read and format the telegrams, then stuff them in the InfluxDB database. Grafana is the ‘visualisation’ component that lets you easily review and filter the raw logs, and/or create dashboards of useful values, all of which you access from a web browser. Preview the power of this here.
Where to next?
Everything’s over on GitHub:
- This is its landing page
- Shopping list
- Installation, commissioning, operating and troubleshooting docos
- FAQs
- The issues register
– Greig.