DLN_I2C_MASTER_SCAN_DEVICES Command and Response

The DLN_I2C_MASTER_SCAN_DEVICES command is used to scan all the 127 slave addresses searching for connected I2C slave devices.

DLN_I2C_MASTER_SCAN_DEVICES Command

Go to response

Syntax

C/C++
 typedef struct
 {
    DLN_MSG_HEADER header;
    uint8_t port;
 } __PACKED_ATTR DLN_I2C_MASTER_SCAN_DEVICES_CMD;
     

Parameters:

header

Defines the DLN message header DLN_MSG_HEADER. The header contains several predefined fields and is used to identify and route messages. You must fill the following fields before sending the command:

Field Description
size The size of the message. Must be equal to the size of the DLN_I2C_MASTER_SCAN_DEVICES_CMD structure.
msgId Identifies the message. For the DLN_I2C_MASTER_SCAN_DEVICES command it must be set to 0x0308. You can use the DLN_MSG_ID_I2C_MASTER_SCAN_DEVICES constant.
echoCounter Can be used to link a command to a response. The response will have the same echoCounter value. This field can be any numerical value from 0 to 0xFFFF (65536).
handle A handle to the DLN-series adapter.
port
A number of the I2C master port to scan for I2C slave devices.

DLN_I2C_MASTER_SCAN_DEVICES Response

Go to command

The adapter sends the DLN_I2C_MASTER_SCAN_DEVICES response after the DLN_I2C_MASTER_SCAN_DEVICES command execution. The response contains the number of found I2C slave devices and lists their slave addresses.

Syntax

C/C++
 typedef struct
 {
    DLN_MSG_HEADER header;
    DLN_RESULT result;
    uint8_t addressCount;
    uint8_t addressList[128];
 } __PACKED_ATTR DLN_I2C_MASTER_SCAN_DEVICES_RSP;
      

Parameters:

header

Defines the DLN message header DLN_MSG_HEADER. The response header contains the following fields:

Field Description
size The size of the message. It is equal to the size of the DLN_I2C_MASTER_SCAN_DEVICES_RSP structure.
msgId Contains the message id. For the DLN_I2C_MASTER_SCAN_DEVICES response it is set to 0x0308. The DLN_MSG_ID_I2C_MASTER_SCAN_DEVICES constant can be used to check the message ID.
echoCounter Links a command to a response. The echoCounter value is copied from the respective command header.
handle A handle to the DLN-series adapter. You can use the handle field to determine the adapter that have sent the response.
result

Contains the result of the command execution. For DLN_I2C_MASTER_SCAN_DEVICES command DLN-series adapter can return the following result values:

Return Code Description
DLN_RES_SUCCESS I2C slave device search completed successfully.
addressCount
A number of found slave devices.
addressList
A 128-element array. Each of the elements is an 8-bit value. It will contain the addresses of found I2C slave devices.