Provided by: libmodbus-dev_3.0.6-2+deb9u1build0.18.04.1_amd64 bug

NAME

       modbus_new_tcp_pi - create a libmodbus context for TCP Protocol Independent

SYNOPSIS

       modbus_t *modbus_new_tcp_pi(const char *node, const char *service);

DESCRIPTION

       The modbus_new_tcp_pi() function shall allocate and initialize a modbus_t structure to
       communicate with a Modbus TCP IPv4 or Ipv6 server.

       The node argument specifies the host name or IP address of the host to connect to, eg.
       192.168.0.5 , ::1 or server.com.

       The service argument is the service name/port number to connect to. To use the default
       Modbus port use the string "502". On many Unix systems, it’s convenient to use a port
       number greater than or equal to 1024 because it’s not necessary to have administrator
       privileges.

RETURN VALUE

       The modbus_new_tcp_pi() function shall return a pointer to a modbus_t structure if
       successful. Otherwise it shall return NULL and set errno to one of the values defined
       below.

ERRORS

       EINVAL
           The node string is empty or has been truncated. The service string is empty or has
           been truncated.

EXAMPLE

           modbus_t *ctx;

           ctx = modbus_new_tcp_pi("::1", "1502");
           if (ctx == NULL) {
               fprintf(stderr, "Unable to allocate libmodbus context\n");
               return -1;
           }

           if (modbus_connect(ctx) == -1) {
               fprintf(stderr, "Connection failed: %s\n", modbus_strerror(errno));
               modbus_free(ctx);
               return -1;
           }

SEE ALSO

       modbus_new_tcp(3) modbus_new_rtu(3) modbus_free(3)

AUTHORS

       The libmodbus documentation was written by Stéphane Raimbault
       <stephane.raimbault@gmail.com[1]>

NOTES

        1. stephane.raimbault@gmail.com
           mailto:stephane.raimbault@gmail.com