FreeBSD Manual Pages
MODBUS_NEW_TCP_PI(3) libmodbus Manual MODBUS_NEW_TCP_PI(3) 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". A NULL value can be used to listen any addresses in server mode. 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 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. ENOMEM Out of memory. Possibly, the application hits its memory limit and/or whole system is running out of memory. 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_tcp_pi_listen(3) modbus_free(3) AUTHORS The libmodbus documentation was written by Stphane Raimbault <stephane.raimbault@gmail.com> libmodbus v3.1.7 04/12/2025 MODBUS_NEW_TCP_PI(3)
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | EXAMPLE | SEE ALSO | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=modbus_new_tcp_pi&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>