barbeau / gpstest

The #1 open-source Android GNSS/GPS test program
Apache License 2.0
1.77k stars 363 forks source link

Forward GNSS data direct via network to an IP/TCP/UDP endpoint #482

Open mbehn1976 opened 3 years ago

mbehn1976 commented 3 years ago

I was wondering if there is any plan to add a feature to send the data (RAW and/or NMEA) direct via network to an IP/TCP/UDP endpoint as well, e.g. in addition or alternative to local logging. I would for example like to remotely record the data with the U-Center from U-Blox, but locally use GPS-Test.

barbeau commented 3 years ago

@mbehn1976 Thanks for the feedback! It's not something I currently have planned but it might not be too difficult to implement given the current structure of the app, and contributions for features like this are always welcome.

Do you have more detailed connection information and specs for how exactly the message and connection would need to be formatted/setup for this to work? Is U-Center freely available to test with?

mbehn1976 commented 3 years ago

Hi Sean, the U-Center is freely available from https://www.u-blox.com/en/product/u-center - I have it running on Windows and Wine under Linux. U-Blox is a major GNSS chipset manufacturer out of Switzerland. The software allows for receiving remote GNSS traffic via Network - quite straight forward - tested it with the NEO6M U-blox on a ESP32 redirecting from local serial port to the remote IP. U-Center supports the NMEA 0183 and U-Blox own format (see attached info from current manual https://www.u-blox.com/sites/default/files/u-center_Userguide_%28UBX-13005250%29.pdf ). There may be also other software out there which may support other formats. U-Center-4 U-Center-2

barbeau commented 3 years ago

Relevant u-center documentation:

Java TCP library that works on Android - https://github.com/EsotericSoftware/kryonet

gdt commented 3 years ago

This could be a good idea, but I think sending GPS to remote is something that needs to work in the backgrond, wtih the screen off (although GPS would still be on).

mbehn1976 commented 2 years ago

Would still be a desired function to compare different devices at one location.

monkeyfork commented 1 year ago

i've searched extensively for this feature (gps and sensor data forward to udp endpoint on local network). For me this would be for kind of wearable iot devices based on microcontrollers most raspberry pi variants or esp32s. For wearable scenario i use android phone to get internet and wifi-capable micros for all else. makes sense to use android device to get gps but damn! is it hard to do in android without tons of experience. i'm just learning kotlin now and it seems to be excruciatingly hard to find simple gps or udp-server full examples to learn by. expect coffee as soon as i figure how to do it.

barbeau commented 1 year ago

@monkeyfork you might want to check out this article I wrote, which has links to two complete simpler GPS examples on GitHub: https://link.medium.com/SHAkzWXFuvb

The Kotlin flow technique discussed in this article is implemented in GPSTest.

monkeyfork commented 1 year ago

Thanks Sean, checking now. Android Studio is still quite a mysterious beast to me. For iot stuff i've been using C forever, android studio and kotlin is quite a hurdle to jump. thx, doug jones

On Sun, Dec 4, 2022 at 4:07 PM Sean Barbeau @.***> wrote:

@monkeyfork https://github.com/monkeyfork you might want to check out this article I wrote, which has links to two complete simpler GPS examples on GitHub: https://link.medium.com/SHAkzWXFuvb

The Kotlin flow technique discussed in this article is implemented in GPSTest.

— Reply to this email directly, view it on GitHub https://github.com/barbeau/gpstest/issues/482#issuecomment-1336517447, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADDHHSXFFQ67ON5ZSLWY4E3WLUBYXANCNFSM4XHSBMNA . You are receiving this because you were mentioned.Message ID: @.***>

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. Please comment here if it is still valid so that we can reprioritize. Thank you!

stale[bot] commented 10 months ago

This issue has been automatically marked as stale because it has not had recent activity. Please comment here if it is still valid so that we can reprioritize. Thank you!

barbeau commented 10 months ago

Not stale

ejrobinson commented 8 months ago

I'd love to see this implemented, if you can forward the full RAW data over TCP/UDB you can hook it into RTKLIB or similar, even running on the same device, which opens up loads of possibilities for RTK on Android devices.

mbehn1976 commented 1 month ago

Indeed this is what I also would like to try.