Published: August 22, 2019
GRV-EPIC-PR1 can't use TCP port 502 for the Modbus toolkit slave subroutine
In a PAC controller, the built-in (I/O and memory map) Modbus/TCP Slave automatically listens on TCP port 502, which is the standard Modbus/TCP port number. If you want to use the Modbus slave subroutine from the PAC Control toolkit (PAC-INT-MB), you first have to change the internal Modbus port to 0 in PAC Manager (PAC Manager > Tools > Inspect > Communication > Network Security > Modbus). This disables the built-in (I/O and mem map) Modbus/TCP slave functionality from listening on that port, which makes TCP port 502 available to PAC Control and the Modbus toolkit slave subroutine.
The GRV-EPIC-PR1 doesn't allow the use of TCP ports below 1024 for security reasons. Because of this, the built-in (I/O and mem map) Modbus/TCP slave uses TCP port 8502 internally. Inbound packets for TCP port 502 are pre-routed to port 8502 internally.
To use the PAC Control Modbus integration toolkit slave subroutine on a groov EPIC processor, choose an unused port number in the range of 1024 - 32767. The processor uses various TCP ports between 1024 and 27777, so we recommend choosing an unused port in the range of 27778 - 32767.
For port numbers reserved by other organizations, see the IANA Service Name and Transport Protocol Port Number Registry
. In the search box, enter the word "unassigned" (without the quote marks) and then use the page links to jump to page 8 (approximately). As of July, 2019, the following large groups are listed as unassigned:
- 28002 - 28118
- 28241 - 28588
- 29170 - 29998
After you choose a port number:
- Change the comm handle in the slave subroutine to the port number you selected.
- Use the same port number in the Modbus/TCP master that needs to communicate with the slave subroutine.
- Add a Firewall rule for that TCP port on the GRV-EPIC-PR1 to allow the traffic into the GRV-EPIC-PR1. For instructions on adding Firewall rules, see the groov EPIC User's Guide (form 2267).
Opto 22 is investigating this issue.
Contact: Opto 22 Product Support.
Phone: 800-835-6786 or 951-695-3080
This Opto 22 Knowledge Base ('OptoKB') article is intended to provide general technical information on a particular subject or subjects and is not an exhaustive treatment of such subjects. Accordingly, the information in this OptoKB article is not intended to constitute application, design, software, or other professional engineering advice or services. Opto 22 may modify the OptoKB articles at any time. Before making any decision or taking any action which might affect your equipment, you should consult a qualified professional.
OPTO 22 DOES NOT WARRANT THE COMPLETENESS, TIMELINESS, OR ACCURACY OF THE DATA CONTAINED IN THIS OPTOKB ARTICLE AND MAY MAKE CHANGES THERETO AT ANY TIME AT ITS SOLE DISCRETION WITHOUT NOTICE. FURTHER, ALL INFORMATION CONVEYED HEREBY IS PROVIDED TO USERS 'AS IS.' IN NO EVENT SHALL OPTO 22 BE LIABLE FOR ANY DAMAGES OF ANY KIND INCLUDING DIRECT, INDIRECT INCIDENTAL, CONSEQUENTIAL, LOSS PROFIT, OR DAMAGE, EVEN IF OPTO 22 HAS BEEN ADVISED ON THE POSSIBILITY OF SUCH DAMAGES.
OPTO 22 DISCLAIMS ALL WARRANTIES WHETHER EXPRESSED OR IMPLIED WITH RESPECT TO THE INFORMATION (INCLUDING HARDWARE, SOFTWARE, AND/OR FIRMWARE) PROVIDED HEREBY, INCLUDING THE IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTIBILITY, AND NON-INFRINGEMENT. Note that certain jurisdictions do not sanction the exclusion of implied warranties: thus, this disclaimer may not apply to you.
Copyright © 2023 Opto 22. All rights reserved.