Reach RS2 - Position Streaming - TCP server

I want to stream the position of an Emlid Reach RS2 to a Windows 10 PC using Reach’s built in functionality “Position Streaming” on Channel “TCP server”.

The Emlid Reach RS2 device has Firmware Version 31 installed.
Access to the device works well both via Emild Flow on iOS (App version 8.10) as well as via html-UI from web browser on a Windows 10 PC.
All devices are on the same network.
I know that that the device is streaming properly, as I can connect to it from the QGIS software.

I need to stream the position using C# / .NET or Python code to a simple text output i.e. System.Console or a Windows.Form.

How to set up and configure the TCP Client so that it receives the data stream from the RS2 device?

Can someone please point me to an example, a step-by-step instruction or a code snippet for a TCP client on a proof-of concept level?

Links to the documentation, reference, tutorials:

[Settings overview | Reach RS2/RS2+]

[Glossary | Reach RS2/RS2+]

[Glossary | Reach RS2/RS2+]

[Using QGIS as survey tool | Reach RS2/RS2+]

Thankful for any support.

Might also be able to stream data via Bluetooth to Windows PC? Maybe as a COM port if direct Bluetooth doesn’t work? Just another option in case you need to go wireless.

The basic steps:

C# / .NET objects for this are in the System.Net.Sockets Namespace

Create an instance of the TcpClient Class
System.Net.Sockets.TcpClient
https://learn.microsoft.com/en-us/dotnet/api/system.net.sockets.tcpclient

Then use the object’s TcpClient.GetStream Method
https://learn.microsoft.com/de-de/dotnet/api/system.net.sockets.tcpclient.getstream

That returns an instance of a NetworkStream Class which in turn provides Methods to Read
https://learn.microsoft.com/en-us/dotnet/api/system.net.sockets.networkstream

Before implementing in C#, I tested the connection with PuTTY the SSH and telnet client.
https://www.putty.org/

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.