knxdownload
knxdownload builds the memory image (and for some devices the load plan) that a project device should hold, and can
compare it with the real device. It only reads: nothing is ever written to a device by this tool.
knxdownload -pwfile FILE -device 1.1.21 [-dump] [-plan] project.knxproj
knxdownload -pwfile FILE -device 1.1.21 -verify GATEWAY [-tcp] [-all] project.knxproj
knxdownload -pwfile FILE -device 1.1.21 -from-dump DIR [-all] project.knxproj
knxdownload -pwfile FILE -device 1.1.21 -xml out.xml project.knxproj
Flags
| Flag | Meaning |
|---|---|
-pwfile FILE | File holding the project password. |
-device ADDR | Individual address of the project device. Required. |
-dump | Print the image: each segment as hex. |
-plan | Print the load plan, every operation a download would perform, and exit. Nothing is sent. |
-verify GATEWAY | Connect through this gateway, read the device’s memory (read-only) and compare it with the image. For System B devices (mask 0x07B0) it compares the load images by size and checksum instead. |
-tcp | Tunnel over TCP instead of UDP. |
-from-dump DIR | Compare against saved reads in a directory (files named 0xADDR.txt, as printed by knxprobe -mem) instead of the bus. |
-all | Print every difference, not only the first 40. |
-xml FILE | Write the application program of the device to this file and exit. |
The output starts with the application program name, number and version, the mask, each segment with its address and
size, and any notes and WARNING lines from building the image. With -verify or -from-dump it then prints the
number of differing octets per segment and the differences (image value, device value, mask).
A difference at octet 0x100, a status octet that changes while the device runs, is ignored.
For some masks the image depends on what the device reports; then -verify reads that from the device first.
Example
knxdownload -pwfile pw.txt -device 1.1.21 -plan house.knxproj
knxdownload -pwfile pw.txt -device 1.1.21 -verify 10.0.0.5:3671 house.knxproj
Use the result as a dry-run before knxprogram.