Skip to content

APCI Functions

takeshix edited this page Nov 21, 2016 · 3 revisions

APCI Functions

KNX provides a range of application layer functions to interact with bus devices for retrieving information, changing configuration values or other maintenance tasks. KNXmap implements wrappers for various functions that allow easy interaction with bus devices. THe APCI wrappers are available via the apci subcommand.

A_Authorize

Send an authorization check to a bus devices. The return value is the access level for the given key. It ranges from 0 (highest level) to 15 (lowest level/authorization failed).

knxmap apci 192.168.0.10 1.1.1 Authorize --key 123

A_Key_Write

Change the authorization key for a bus device. This function supports three options:

  • --key: The current authorization key
  • --new-key: The new authorization key
  • --key-level: The access level for the new authorization key (default: 0)

This function allows to set different access key for different access levels (from 0 to 15).

knxmap apci 192.168.0.10 1.1.3 Key_Write --key 0xffffffff --new-key 0x11111111

A_DeviceDescriptor_Read

Read the device descriptor of a bus device. The device descriptor is a two byte value containing the following information:

  • Device Medium
  • Device Type
  • Device Version

This value can be parsed by KnxMessage.parse_device_descriptor().

knxmap apci 192.168.0.10 1.1.1 DeviceDescriptor_Read

A_PropertyValue_Read

Read a property from a object of a bus device. Supported options:

  • --property-id: The property ID
  • --object-index: The object where to read from (default: 0)
  • --elements: The count of elements to read (default: 1)
  • --start-index: The start index for multi byte properties
knxmap apci 192.168.0.10 1.1.1 PropertyValue_Read --property-id 0xb

A_Memory_Read

Read memory from a bus device. Supported options:

  • --memory-address: The memory address to read memory from
  • --read-count: How many bytes to read (default: 1)
  • --key: Authorization key
knxmap apci 192.168.0.10 1.1.1 Memory_Read --memory-address 0x0060

A_Memory_Write

Write data to a memory address of a bus device. Supported options:

  • --memory-address: The memory address to write memory to
  • --write-count: How many bytes to write (default: 1)
  • --data: The data that will be written to memory (in hex format)
  • --key: Authorization key
knxmap apci 192.168.0.10 1.1.1 Memory_Write --memory-address 0x0060 --memory-data af

A_Restart

Restart a bus device.

knxmap apci 192.168.0.10 1.1.3 Restart

Progmode

Enable or disable programming mode of bus device. Read the current programming mode status:

knxmap apci 192.168.0.10 1.1.3 Progmode

Toggle the programming mode on/off:

knxmap apci 192.168.0.10 1.1.3 Progmode --toggle