GithubHelp home page GithubHelp logo

Comments (6)

semuadmin avatar semuadmin commented on July 26, 2024

Hi @ArrEssJay I have been toying with the idea of adding functionality along these lines but can give no guarantees on timeframe at this point - PyGPSClient is maintained entirely by unpaid volunteers.

I'd need to clarify what sort of security protocols would need to be implemented as there would clearly be risks associated with opening unauthenticated TCP sockets at distance via socat or similar. I'll put it on the backlog. Other than that, I'm assuming the functionality required would not be a million miles from what has just been added for NTRIP client purposes in v1.1.9

If you could share the details of your server side socat configuration (via email if you prefer) that might save some time. Cheers.

from pygpsclient.

gdt avatar gdt commented on July 26, 2024

I also think this would be useful. Besides a regular computer interfacing to a receiver, there are devices like the Ardusimple F9P boards with the WiFi NTRIP master ESP32-based board, which provide a TCP socket that one can obtain data from. When using a cellphone for RTCM , the Ardusimple device is a hotspot client, and there are no other connected devices.

I see your point about security, but whether a TCP connection is a problem or isn't a problem depends on many things, and I don't think it makes sense to decline to implement a feature because someone might do something. After all, someone could configure the client to publish the data on the web, which would a location confidentiality violation. I'm saying this even though I am very much on the paranoid side.

from pygpsclient.

semuadmin avatar semuadmin commented on July 26, 2024

Agreed and on it. Just can't say when...

I actually use the Ardusimple F9P myself.

Priority at moment is trying to fix/work around tkinter issues on MacOS.

Watch this space. Appreciate the interest.

from pygpsclient.

ArrEssJay avatar ArrEssJay commented on July 26, 2024

from pygpsclient.

semuadmin avatar semuadmin commented on July 26, 2024

Slight mistake at my end. A typical way to do this is to use ser2net to act as a terminal server, and socat to create a virtual serial port. With ser2net, a Ublox receiver on a USB port could be mapped to TCP port 2000: $ ser2net -C "localhost,2000:raw:400:/dev/ttyACM0:115200 8DATABITS NONE 1STOPBIT" -d In U-Center, this receiver could be accessed at localhost:2000 Alternatively, we can use socat to map a virtual serial port to a TCP socket: $ socat pty,link=$HOME/dev/ttyV0,waitslave tcp:localhost:2000 Given that is possible, I don't think this needs to be considered a high priority issue.

Sure - ser2net / socat would be the standard way to do this on Posix platforms, but they're not the easiest tools to get to grips with if you're not a cli power user. Implementing a simple (unauthenticated) socket client along the lines of the Network Connection facility in u-center 21.9 is not particularly difficult - as I say, the requisite code is pretty much already there for the new NTRIP client - but it would obviously carry a 'use at your own risk' warning (implicit in the BSD-2 licence anyway) especially - as you say - if you take it outside your private LAN.

from pygpsclient.

ArrEssJay avatar ArrEssJay commented on July 26, 2024

Nice! Confirmed working.

from pygpsclient.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.