<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[How does the virtual serial port over IP work?]]></title><description><![CDATA[<p dir="auto">Looking at implementing a means to send serial data over the web to a mango unit in a different geographical location. My first question is: Is there a specific format the data needs to be or some kind of handshake to make it talk?<br />
Have tried with a RAW ser2net socket which does connect but no data comes through.<br />
Would like to be able to implement something like the MangoTCP link if it were possible just as it would make transferring and updating of data much easier.</p>
<p dir="auto">Thanks</p>
<p dir="auto">Fox</p>
]]></description><link>https://forum.mango-os.com/topic/3148/how-does-the-virtual-serial-port-over-ip-work</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 20:16:34 GMT</lastBuildDate><atom:link href="https://forum.mango-os.com/topic/3148.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 13 Dec 2017 19:56:38 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to How does the virtual serial port over IP work? on Wed, 20 Dec 2017 00:22:26 GMT]]></title><description><![CDATA[<p dir="auto">Got it, but i had to disable the datasource's regex for it to work. Datapoint regex works fine.<br />
for some reason datasource just wouldn't work with (.* )=(.* )\r<br />
Strange as it works with normal serial data datasources just fine....<br />
disabled datasource regex, set timeout to 30 seconds, changed point regex to<br />
test=(.*)(?:|\r|\n) with identifier being test and bang, in goes my values....</p>
]]></description><link>https://forum.mango-os.com/post/16603</link><guid isPermaLink="true">https://forum.mango-os.com/post/16603</guid><dc:creator><![CDATA[MattFox]]></dc:creator><pubDate>Wed, 20 Dec 2017 00:22:26 GMT</pubDate></item><item><title><![CDATA[Reply to How does the virtual serial port over IP work? on Tue, 19 Dec 2017 16:43:44 GMT]]></title><description><![CDATA[<p dir="auto">I would guess it has something to do with the carriage returns or line feeds. Maybe you can try (?:.|\r|\n)* as your data point's regex.</p>
]]></description><link>https://forum.mango-os.com/post/16588</link><guid isPermaLink="true">https://forum.mango-os.com/post/16588</guid><dc:creator><![CDATA[phildunlap]]></dc:creator><pubDate>Tue, 19 Dec 2017 16:43:44 GMT</pubDate></item><item><title><![CDATA[Reply to How does the virtual serial port over IP work? on Tue, 19 Dec 2017 07:38:32 GMT]]></title><description><![CDATA[<p dir="auto">Still nothing, Here are my settings:</p>
<p dir="auto">Fox virtual serial:<br />
Type: serial server<br />
buffersize:2048<br />
port: 2001<br />
timeout (ms): 0</p>
<p dir="auto">Datasource:<br />
Port: Fox Virtual Server<br />
Bitrate: 115200<br />
Flow Control In: none<br />
Flow Control out: none<br />
Databits:8<br />
stopbits: 1<br />
parity:none<br />
Read Timeout:20000<br />
use terminator :false<br />
regex: ().*<br />
point identifier group:1<br />
config in hex: false<br />
max size of message:1024</p>
<p dir="auto">Datapoint:<br />
name: test2<br />
datatype: alphanumeric<br />
point identifier:<br />
value group: 0<br />
regex:(.*)</p>
<p dir="auto">Logging type: all data<br />
text rendering: plain;</p>
<p dir="auto">There must be something not handshaking to take my proverbial data and swallow it...<br />
edit! wait I tell a lie! I have data coming in! Now why the hell isn't the regex registering...</p>
]]></description><link>https://forum.mango-os.com/post/16575</link><guid isPermaLink="true">https://forum.mango-os.com/post/16575</guid><dc:creator><![CDATA[MattFox]]></dc:creator><pubDate>Tue, 19 Dec 2017 07:38:32 GMT</pubDate></item><item><title><![CDATA[Reply to How does the virtual serial port over IP work? on Mon, 18 Dec 2017 16:42:06 GMT]]></title><description><![CDATA[<p dir="auto">Hmm. You could share your configuration if you wanted. Are you using a catchall point? I find if you turn off the terminator, set the regex to ().* and have a point with an empty identifier, a point identifier index of 1, a value regex of .* index 0 you will get all data into that point.</p>
<p dir="auto">Have you given your virtual serial port a timeout? You could try setting this back to 0 if you wanted, and then you would be relying on the client to close the connection. Or you can increase your timeout.</p>
]]></description><link>https://forum.mango-os.com/post/16569</link><guid isPermaLink="true">https://forum.mango-os.com/post/16569</guid><dc:creator><![CDATA[phildunlap]]></dc:creator><pubDate>Mon, 18 Dec 2017 16:42:06 GMT</pubDate></item><item><title><![CDATA[Reply to How does the virtual serial port over IP work? on Sun, 17 Dec 2017 19:17:14 GMT]]></title><description><![CDATA[<p dir="auto">I have successfully got data firing to the mango unit, ha ha!<br />
One problem, data isn't being loaded into the datapoint. the test string option under the datapoint shows my regex is working. checked the error logs and all I appear to be having are datasource errors:</p>
<pre><code>ERROR 2017-12-18T03:15:49,518 (com.infiniteautomation.mango.io.serial.virtual.SerialServerSocketBridge$SerialServerSocketThread.run:224) - IOException buffer reading for Fox_SerialTest java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) ~[?:1.8.0_144] at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) ~[?:1.8.0_144] at java.net.SocketInputStream.read(SocketInputStream.java:171) ~[?:1.8.0_144] at java.net.SocketInputStream.read(SocketInputStream.java:141) ~[?:1.8.0_144] at com.infiniteautomation.mango.io.serial.virtual.SerialServerSocketBridgeInputStream.bufferRead(SerialServerSocketBridgeInputStream.java:38) ~[mango-3.2.2.jar:?] at com.infiniteautomation.mango.io.serial.virtual.SerialServerSocketBridge$SerialServerSocketThread.run(SerialServerSocketBridge.java:209) [mango-3.2.2.jar:?] 
</code></pre>
<p dir="auto">It keeps timing out! Any thoughts? I'm only sending 7 characters plus a carriage return as the terminator.  I know the data is coming due by turning the datasource off and using netcat to listen on the network port. Data is definitely reaching.<br />
So I'm confused...</p>
]]></description><link>https://forum.mango-os.com/post/16563</link><guid isPermaLink="true">https://forum.mango-os.com/post/16563</guid><dc:creator><![CDATA[MattFox]]></dc:creator><pubDate>Sun, 17 Dec 2017 19:17:14 GMT</pubDate></item><item><title><![CDATA[Reply to How does the virtual serial port over IP work? on Wed, 13 Dec 2017 20:21:44 GMT]]></title><description><![CDATA[<p dir="auto">Hi Phil, thanks for the quick reply. I'll do some more investigation - could possibly be the format of my data or something of the like. Will let you know of my findings - watch this space!</p>
]]></description><link>https://forum.mango-os.com/post/16527</link><guid isPermaLink="true">https://forum.mango-os.com/post/16527</guid><dc:creator><![CDATA[MattFox]]></dc:creator><pubDate>Wed, 13 Dec 2017 20:21:44 GMT</pubDate></item><item><title><![CDATA[Reply to How does the virtual serial port over IP work? on Wed, 13 Dec 2017 20:17:18 GMT]]></title><description><![CDATA[<p dir="auto">Hi Mr. Fox,</p>
<p dir="auto">I'm not sure I completely know what you're asking about.</p>
<p dir="auto">The TCP/IP data source can be used as a bridge for arbitrary TCP/IP conversations as the client.</p>
<p dir="auto">The Serial Data Source, coupled with a Virtual Serial Server Socket (configured on the system settings page in the virtual serial port section) is the most arbitrary incoming TCP/IP data source option.</p>
<p dir="auto">Neither of those has any specific adherence to a protocol and both can be made to work for all sorts of things.</p>
]]></description><link>https://forum.mango-os.com/post/16526</link><guid isPermaLink="true">https://forum.mango-os.com/post/16526</guid><dc:creator><![CDATA[phildunlap]]></dc:creator><pubDate>Wed, 13 Dec 2017 20:17:18 GMT</pubDate></item></channel></rss>