IDC.Drivers.KNX

TIDCKNXDriver Component

Unit overview

This unit provides the implementation of the KNXnet/IP protocol in tunnel mode. The primary purpose of the component is to enable communication with KNX devices using KNXnet/IP via UDP. The component allows sending and receiving KNX telegrams, discovering KNX devices, and handling group addresses.

Get Started

To get started with this component, follow these steps:

  1. Create an instance of TIDCKNXDriver.

  2. Set the necessary properties such as IP, multicast addresses, and ports.

  3. Attach event handlers for events like OnKNXDeviceFound and OnKNXGroupAddressEvent.

  4. Call the StartKNXDiscovery method to begin KNX device discovery.

  5. Use WriteBytesToGroupAddress and ReadBytesFromGroupAddress to interact with KNX group addresses.

Usage Example

var
  KNXDriver: TIDCKNXDriver;

begin
  KNXDriver := TIDCKNXDriver.Create(nil);
  KNXDriver.OnKNXDeviceFound := MyDeviceFoundEvent;
  KNXDriver.OnKNXGroupAddressEvent := MyGroupAddressEvent;
  KNXDriver.StartKNXDiscovery;
end;

TIDCKNXDriver

Cases of usage

Can used this class directly at low level, when direct and fast commnection is reqiured.

Properties

  • DiscoveryTimeout: Sets the timeout (in milliseconds) for KNX device discovery. This is part of the TIDCKNXConnectionOptions.

  • Active: Controls whether the driver is active.

  • OnKNXDeviceFound: Event triggered when a KNX device is found during discovery.

  • OnKNXGroupAddressEvent: Event triggered when a group address message is received.

Events

  • OnKNXDeviceFound:

    This event is triggered when a KNX device is discovered.

  • OnKNXGroupAddressEvent:

    This event is triggered when a KNX group address telegram is received.

  • OnKNXDeviceConnected:

    This event is triggered when a KNX device successfully connects.

Methods

  • StartKNXDiscovery: Starts the KNX device discovery process.

  • StopKNXDiscovery: Stops the KNX device discovery process.

  • WriteBytesToGroupAddress: Sends a write request to a KNX group address.

  • ReadBytesFromGroupAddress: Sends a read request to a KNX group address.

  • HandleIncomingUDPData: Handles incoming UDP packets and processes them as KNX telegrams.

  • ProcessKNXTelegram: Processes a KNX telegram received via UDP.


Usage Examples

Quick snippets

Last updated

Was this helpful?