Skip to content

Releases: otfabric/knxctl

v0.7.2

Choose a tag to compare

@github-actions github-actions released this 31 Oct 14:32

Date: 2026-10-31
Previous release: v0.7.1

Changed

  • Policy 1.2: build output in bin/ and release/, a per-package coverage floor, and more tests and CI. No change in behaviour.
  • Built on go-knx v0.5.2.

v0.7.1

Choose a tag to compare

@github-actions github-actions released this 31 Oct 01:02
42e98d7

Date: 2026-10-31
Previous release: v0.7.0

Fixed

  • go-knx v0.5.1: knxctl commands that start a local server (and the tests) no longer fail on Windows with "no port free for UDP and TCP" (see its release notes).

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 12:49
c85872c

Date: 2026-10-30
Previous release: v0.6.0

Exit codes converge on the organisation table (ADR-0006). Scripts that test for these codes must change.

Case Old New
Operating system refused an operation (permission) 7 9
KNXnet/IP server refused the request (rejected) 9 6

All other codes are unchanged. The JSON kind values do not change: rejected stays rejected. Exit 7 is now reserved for a partial result, which knxctl does not produce today.

KNXCTL_OUTPUT_FORMAT is now accepted besides KNXCTL_FORMAT, which is the canonical name and wins when both are set.

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 07:23
fab4ee8

Date: 2026-10-30
Previous release: v0.5.1

Added

  • property read and property write --device IA: remote device
    management of a device on the KNX network through a tunnel
    (A_PropertyValue_Read/_Write; the object type is found in the device's
    interface object list), connectionless or with --connected in a
    transport connection.
  • KNX Data Secure tool access: with the device's tool key (--tool-key,
    env KNXCTL_TOOL_KEY, or the device's entry in --keyring) the access is
    secured (S-A_Sync, then S-A_Data with tool access); results report
    secured.
  • serve --tool-key HEX|keyring: the simulator's own device accepts only
    remote management secured with that tool key. The simulator's device now
    answers remote device management, and its friendly name is writable.

Changes

  • go-knx v0.5.0.

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 30 Oct 02:15
4218dc1

Date: 2026-10-30
Previous release: v0.5.0

Fixes

  • A command interrupted before it had a result (Ctrl-C while connecting,
    for example) exits 130 with kind interrupted, as the sibling CLIs do;
    it was reported as an internal error (exit 10).
  • tunnel connect --hold says on stderr when it is connected and
    holding.
  • Tests: the interrupt and server-gone tests of tunnel connect waited
    for the server to register the connection, which happens before the
    client has its CONNECT_RESPONSE; under load the client was interrupted
    while still connecting (the flaky failure). They now wait for the
    client's own notice.

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 01:55
2e50f69

Date: 2026-10-30
Previous release: v0.4.0

Summary

On go-knx v0.4.1, the go-knx API features that were missing from the CLI.

Additions

  • property write host object pid hex: M_PropWrite (--start, --count,
    --instance).
  • tunnel feature get|set host feature: the tunnelling v2 feature
    services, by name (max-apdu, bus-connection, address, info-service...)
    or number; TCP by default, --udp for UDP.
  • discover --programming-mode, --mac, --service family[:version]:
    extended search with search parameters.
  • routing monitor --keyring/--backbone-key: secure routing and Data
    Secure, like monitor --routing.
  • diagnose --tcp and the secure session flags; a security check lists
    the secured services and tells when tunnelling needs a secure session.
  • --priority on the commands that send telegrams.
  • serve --programming-mode, --serial, --multicast.

Fixes

  • go-knx v0.4.1: a server on an ephemeral port keeps TCP.

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 00:59
9d27568

Date: 2026-10-30
Previous release: v0.3.0

Summary

On go-knx v0.4.0: secure sessions over UDP, secure routing in serve,
and S-A_Sync with the surrogate role.

Additions

  • --udp on every tunnelling command: the KNX IP Secure session over UDP
    instead of TCP.
  • serve --routing routes securely with the keyring's backbone key or
    --backbone-key.
  • With a keyring that has a tool key for knxctl's own address, knxctl
    answers S-A_Sync and group object diagnostics: Calimero tools send their
    Data Secure group telegrams through it.

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 29 Oct 23:28
39b9ef1

Date: 2026-10-30
Previous release: v0.2.0

Summary

KNX IP Secure and KNX Data Secure, on go-knx v0.3.0.

Additions

  • --keyring (ETS .knxkeys) on every command that reaches the network:
    secure tunnelling as a keyring user (--tunnel-address, --user-id, or
    the first user; user 1 is the host's management password), Data Secure
    for the keyring's groups, secure routing with its backbone key.
  • --user-id, --user-password, --device-password, --backbone-key
    without a keyring. Secrets default to environment variables.
  • serve --keyring/--keyring-host and serve --secure-user id:password[:address] --device-password: a secure simulator; Data
    Secure telegrams are printed decrypted when the keyring has the key.
  • keyring show: verify and summarise a keyring (--secrets to show keys
    and passwords).
  • Secured telegrams are marked [secure] / "secure": true.
  • docs/cli.md now covers busmonitor, property read and keyring.

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 29 Oct 21:30
806f6b0

Date: 2026-10-29
Previous release: v0.1.1

Summary

KNXnet/IP over TCP, busmonitor and device management, on go-knx v0.2.0.

Additions

  • --tcp on every tunnelling command (group, monitor, tunnel connect, busmonitor, property read): KNXnet/IP over TCP.
  • busmonitor host: every bus frame through a busmonitor connection
    (L_Busmon.ind), decoded from the TP1 frame; text or JSON Lines.
  • property read host object pid: interface object properties with local
    device management (--start, --count, --instance); objects by type
    number or device, router, knxnetip.
  • serve --no-tcp and serve --concurrent-busmonitor.

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 29 Oct 20:54
3466020

Date: 2026-10-29
Previous release: v0.1.0

Fixes

  • knxctl version reports the module version of builds made with
    go install github.com/otfabric/knxctl@vX.Y.Z (it said "dev": such
    builds carry no link-time version).