Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

modbus_send_raw_request(3) [debian man page]

MODBUS_SEND_RAW_REQU(3) 					 Libmodbus Manual					   MODBUS_SEND_RAW_REQU(3)

NAME
modbus_send_raw_request - send a raw request SYNOPSIS
int modbus_send_raw_request(modbus_t *ctx, uint8_t *raw_req, int 'raw_req_length); DESCRIPTION
The modbus_send_raw_request() function shall send a request via the socket of the context ctx. This function must be used for debugging purposes because you have to take care to make a valid request by hand. The function only adds to the message, the header or CRC of the selected backend, so raw_req must start and contain at least a slave/unit identifier and a function code. This function can be used to send request not handled by the library. RETURN VALUE
The modbus_send_raw_request() function shall return the full message length, counting the extra data relating to the backend, if successful. Otherwise it shall return -1 and set errno. EXAMPLE
modbus_t *ctx; /* Read 5 holding registers from address 1 */ uint8_t raw_req[] = { 0xFF, 0x03, 0x00, 0x01, 0x0, 0x05 }; int req_length; uint8_t rsp[MODBUS_TCP_MAX_ADU_LENGTH]; ctx = modbus_new_tcp("127.0.0.1", 1502); if (modbus_connect(ctx) == -1) { fprintf(stderr, "Connection failed: %s ", modbus_strerror(errno)); modbus_free(ctx); return -1; } req_length = modbus_send_raw_request(ctx, raw_req, 6 * sizeof(uint8_t)); modbus_receive_confirmation(ctx, rsp); modbus_close(ctx); modbus_free(ctx); SEE ALSO
modbus_receive_confirmation(3) AUTHORS
The libmodbus documentation was written by Stephane Raimbault <stephane.raimbault@gmail.com[1]> NOTES
1. stephane.raimbault@gmail.com mailto:stephane.raimbault@gmail.com libmodbus 3.0.3 05/26/2012 MODBUS_SEND_RAW_REQU(3)

Check Out this Related Man Page

MODBUS_REPORT_SLAVE_(3) 					 Libmodbus Manual					   MODBUS_REPORT_SLAVE_(3)

NAME
modbus_report_slave_id - returns a description of the controller SYNOPSIS
int modbus_report_slave_id(modbus_t *ctx, uint8_t *dest); DESCRIPTION
The modbus_report_slave_id() function shall send a request to the controller to obtain a description of the controller. The response stored in dest contains: o the byte count of the response o the slave ID, this unique ID is in reality not unique at all so it's not possible to depend on it to know how the information are packed in the response. o the run indicator status (0x00 = OFF, 0xFF = ON) o additional data specific to each controller. For example, libmodbus returns the version of the library as a string. RETURN VALUE
The modbus_report_slave_id() function shall return the number of read data if successful. Otherwise it shall return -1 and set errno. EXAMPLE
uint8_t *tab_bytes; ... rc = modbus_report_slave_id(ctx, tab_bytes); if (rc > 1) { printf("Run Status Indicator: %s ", tab_bytes[1] ? "ON" : "OFF"); } AUTHORS
The libmodbus documentation was written by Stephane Raimbault <stephane.raimbault@gmail.com[1]> NOTES
1. stephane.raimbault@gmail.com mailto:stephane.raimbault@gmail.com libmodbus 3.0.3 05/26/2012 MODBUS_REPORT_SLAVE_(3)
Man Page