Sign of integers on FINS server read incorrectly

I have a Flexy unit reading from an Omron NX1P2 device on a FINS IO server. The tag I want read is defined as an integer in the PLC (as a DINT specifically, which is a 32 bit integer for Omron according to their software user manual). The tag is defined as an Integer in the eWON Fins Server, which I believe is also a 32 bit value. The tag reads correctly when it’s a positive value, but when it’s a negative value in the PLC then the eWON reads it as a large, positive value. For example, when the PLC is storing/ reading the value as -1 then the eWON tag reads 6553. -2 reads as 6552, -3 reads as 6551, etc. I’ve been trying to troubleshoot this for a bit on my own and haven’t been able to figure where that value comes from.

For additional info, the binary representation of negative numbers in Omron’s software is done by the 2s complement. So ‘-1’ is stored as ‘1111 1111 1111 1111 1111 1111 1111 1111’. I assume that eWON interprets signed integers in the same way, by the 2’s complement, though I can’t find any documentation to back that up.

Any insight would be very appreciated! I suppose a second option would be to have a script that corrects the numbers by subtracting from very high (>6000) “temperatures”, though I’d like to understand why the values aren’t reading correctly in the first place.

Thanks!

@rileydoering

Can you try adding an L modifer following the tag address in the eWON?

I’ll try that the next time I get access to the device on site, thanks.

I haven’t been able to get remote access working yet- we had to give up on getting the VPN working over the WAN port because their firewall couldn’t permit it, so now we have the LAN ports plugged into the intranet. Does the ewon do any filtering on LAN traffic? We can communicate with the eWON fine from within the same subnet but are having issues coming from outside that.

@rileydoering

While the eWON does not technically do filtering, the issue is that you are trying to communicate to one network from another network with nothing handling the routing the in the middle. Have you tried setting a route to your pc when connected to that external network?