Reading data from a PLC without Talk2M

I have an Allen-Bradley CompactLogix PLC, on the LAN side of a Flexy 205.
The Flexy 205 is connected to the internet. I can connect to the PLC using Talk2M

I have an HMI at another location also connected to the internet

I have made the Flexy’s Cellular IP address visible, and I can ping the unit from the HMI PC.

The HMI needs to be able to read data from the PLC, send commands to the PLC, without using Talk2M.

I was told this is possible, but thus far, setting up a proxy and redirecting traffic on Port 44818 has not worked. Looking for suggestions.

If Necessary, I can connect the HMI to the internet using another Flexy w/ Verizon cellular.

Hello @stevenjp,

I would like to first mention that it is not recommended to directly open the ewon up to the internet. Allowing access to the eWON LAN adds a security risk and allowing access into the LAN adds even more risk. This is also not the intended use of the ewon.

The first thing you need to make sure is the WAN IP is accessable over the internet. Typically an IP assigned by a carrier is in a private network and not a public IP address. Are you sure you are reaching the ewon and not another device on the internet?

You can allow access to the ewon and the LAN by setting the with the following in the comcfg file.
• NatItf = 2 (Nat and TF on WAN)
• VPNRedirect = 0 (Allow traffic outside the VPN tunnel)
• FwrdToWAN = 1 (Forward LAN traffic to WAN)

You will also need to setup port forwarding to forward the port traffic from the WAN to the LAN in the proxy table. This should allow the traffic that makes it to the ewons interface to be forwarded to the LAN device.

This should be the same as seen in option 3 in the following doc.


Thanks for responding. Part of the issue is that we have to have the main HMI communicate with the remote PLCs, but the main HMI will not have Talk2M Pro.

The WAN IP’s are addressable. I can ping them. I’ll try the settings and get back to you later on Thursday.


This there another way to accomplish what I need, without exposing the LAN to the outside world?

Hi Steven,

If there is also a PLC connected with the HMI at that location you can setup tags for the flexy to read and write. Then you can exchange data using m2web api between two flexys.

Sharing Data Between 2 Flexys v1.0.pdf (491.8 KB)



Sort of. There are flexys at both locations. If I pull data from the remote flexy with the PLC to the local flexy with the HMI, can the HMI read the valves from its flexy?


Generally no the IOservers on the Flexy are only configured for PLC’s. One way around this would be if you HMI can act as a modbus TCP client. You could setup tags on the flexy and publish them as modbus registers for the HMI to read.



To confirm, if I don’t have a Modbus TCP client, then I need to pull data from PLC-to-PLC, then read the data from the local (from the main HMI perspective) PLC?

I believe you are correct. To make sure i will try and explain with some more details.

If the HMI can’t poll data itself from the flexy over modbus TCP another option would be for the ewons on each side to read and write to plc’s. The ewons would then exchange their tag data with each other using the m2web API.

This means Flexy A is going to read and write data to the PLC A and Flexy B is reading and writing to PLC B. Then the flexy’s will write the tag info onto tags setup on the remote flexy, using the m2web API.

Keep in mind this option does rely on the m2web api and a connection to talk2m.


The issue is that the end user does not have (and will not have) a Talk2M Pro account (just the free account).

If the M2Web is built in and doesn’t have any ongoing costs, we can use that. Otherwise, we have to do the other method.

You do not need talk2m pro to use the m2web API there is not cost added to using this feature.



Thanks. OK, I supposed we can give this a try.