Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add PointPerfect support for non L-Band RTK products #497

Open
j-w-bullfrog opened this issue Jun 13, 2023 · 29 comments
Open

Add PointPerfect support for non L-Band RTK products #497

j-w-bullfrog opened this issue Jun 13, 2023 · 29 comments
Labels
New Feature New feature or request

Comments

@j-w-bullfrog
Copy link

j-w-bullfrog commented Jun 13, 2023

Subject of the issue

PointPerfect for RTK Express Plus Support

https://docs.sparkfun.com/SparkFun_RTK_Firmware/configure_pointperfect/

Your workbench

Dev 3.5 with express working as a ntrip server via rtk to go. Right now I can only use PP in u-center on my pc when testing. The chip does support l1 & l2 and I have been using both for months

@nseidle nseidle changed the title PointPerfect for RTK Express Plus Support Add PointPerfect support for non L-Band RTK products Jun 19, 2023
@nseidle
Copy link
Member

nseidle commented Jun 19, 2023

This overlaps a bit with issue #461 but yours is more succinct. I updated the issue title, please review and see if you agree.

Are you asking to obtain PointPerfect corrections over WiFi? It's possible. But we'll have to figure out how to charge the monthly fee. Or are you intending on using your own custom token?

@j-w-bullfrog
Copy link
Author

No, actually for L band products. I have my own developer keys for PP, but I have to use u-center to configure it. Using U-center with the GPS-16481 I do get the rtk led to light but I'm fighting getting convergence on both it and the express +. Steve Brown, from ublox has given me sone data to monitor on spartn to try to see why there is a convergence problem.

@nseidle
Copy link
Member

nseidle commented Jun 19, 2023

I am very confused. From your first post:

PointPerfect for RTK Express Plus Support

But then you say:

No, actually for L band products.

Can you describe what your ultimate goal is?

@j-w-bullfrog
Copy link
Author

j-w-bullfrog commented Jun 19, 2023

I have the express plus set up and receiving L band correction by setting the config in U-Center. They have a json file that works with u-center to get PP data into the module via SPARTN on UART1. The Facet has PP menus available; https://docs.sparkfun.com/SparkFun_RTK_Firmware/configure_pointperfect/ but only for facet. Those options are not available for express +.

All of my recent requests are to get (aka u-box debug data) the sparkfun to work as a initial evaluation project for ztr mowers. And be able to do it without my laptop attached via usb cable, but log the required data to the sd card.

@nseidle
Copy link
Member

nseidle commented Jun 19, 2023

I think you may be confused (or perhaps I am). The corrections you are receiving via u-center come from PointPerfect via IP (the internet) not via L-Band (over a satellite). Our L-Band products have an extra receiver built into them (the NEO-D9S) that receive the L-Band signal, and pass the encrypted data on to the ZED that then decrypts them. No connection to the internet needed but you have to pay for the L-Band subscription.

PointPerfect offers L-Band based corrections, or IP based corrections, or both for a monthly fee (different for each level).

I believe what you are asking for (and please, help me out here) is the ability to get an RTK Express connected to PointPerfect via IP (WiFi most likely) so that the ZED can get RTK without RTCM from a base station.

So, are you looking to get RTK corrections over L-Band or will you mower have a WiFi connection to the internet to obtain the correction via the internet?

We have a cellular enabled product on the roadmap (far future) as well for (mostly commercial) mowers that cannot rely on a house-hold WiFi connection being available.

@j-w-bullfrog
Copy link
Author

Actually we are planning on aftermarket autonomy on existing gas powered zero turn mowers. This came about because my biz partner has to mow the little 9 hole course he plays on in nowhere Kansas. We have also been talking about the need for remote diagnostics on the mower since we can't count on where or how the system is being used. We would like to avoid rtk base stations and getting the data to the mower. We are trying out PP to see if we can still cut with the reduced accuracy that comes with it compared to our ktk base I have setup. I'll ask Steve about if I'm getting the data vai L band, or wifi. They just started offering dev licences with 40 hrs free. Will post more when I find out.

@j-w-bullfrog
Copy link
Author

Here's the story. It is coming via wifi to the module when connected via u-center. However, u-center has a bug in it and it may say that its working when it isn't. So, if it fails to converge, or drops it, it's uncenter. Stop the mqtt client, that may fix it. If not close ucenter and restart. That said we are going to pursue PP via cellular (probably- depends how well it works) since that gives us correction, and remote system diagnostics. Close this or modify as you see fit.

@nseidle
Copy link
Member

nseidle commented Jun 20, 2023

Got it. I'm going to leave open since I think it would be a valuable feature to allow non RTK Facet L-Band users to get PointPerfect corrections over WiFi (which is cellular if you're using a cell phone to connect to the device).

@j-w-bullfrog
Copy link
Author

Actually U-Blox is talking sara 5 or cat 1 for our application since we want to be bale to do remote diagnostics and PP.

@j-w-bullfrog
Copy link
Author

Any idea when this may be coming out?

@nseidle
Copy link
Member

nseidle commented Sep 28, 2023

We are out of RAM on this particular line of products, which limits adding this feature at this time. But we plan to add this type of connectivity to upcoming products.

@j-w-bullfrog
Copy link
Author

Bummer, and I know trading features on and off on the fly to get useable ram would be a nightmare. BTW, GNSS Master is failing to bring in PP data for some reason unknown to U-blox, or me. Its functions perfect with rtk2go

@demurs73582
Copy link

The issue seems to be bluetooth related, according to u-blox support. And that seems reasonable.

The non-Lband Facet can get and process PointPerfect SPARTN traffic into an RTK-FIX this way:

  • Boot the Facet and connect to the ZED-F9P with u-center
  • In u-center, set the RAM, BBR, and Flash settings for CFG-USBINPROT-SPARTN  to 1
  • disconnect from u-center and the PC and connect to Android phone with a USB cable WITHOUT rebooting the Facet
  • start GNSS Master and connect its receiver function to the Facet using a USB cable
  • use the GNSS Master's correction input function to start a PointPerfect SPARTN feed to the Facet over the USB cable
  • enjoy getting RTK-FIX readings with the PointPerfect SPARTN feed - usually down to 1.4cm with a fair sky view

Then: mutter expletives under your breath when you have repeat these steps after a Facet boot overwrites CFG-USBINPROT-SPARTN settings in the ZED-F9P.

Getting the PointPerfect feed over bluetooth is preferred, but if it really is an unsolveable RAM problem (apparent related to handling bluetooth traffic), then the USB solution is better than nothing.

How about changing the Facet setup routine to enable setting and keeping the CFG-USBINPROT-SPARTN setting?

If not, maybe a tip on how fix the source code to prevent the overwrite? Don't really look forward to trying to build the firmware, though.

As a pure hobbyist using GNSS around my own property, my budget was exhausted by the Facet and some surveying accessories. Getting an L-band or upcoming product is not feasible. And the closest RTK2GO feed is over 90 miles, which is useful but rarely gets the Facet into a RTK-FIX or an accuracy less than 6cm.

Other than that, I love my facet.

@j-w-bullfrog
Copy link
Author

j-w-bullfrog commented Oct 13, 2023

Yep, its stable. logging data no to the sd card. As I write this the correction input from PP dropped. Getting under 30 mm with light rain. The new dynamic mode types that come out with the Zed 9R required a fix to not overwrite those 'unknown modes"

BTW, rule of thumb is that rtk loss of accuracy from a fixed antenna is 1 mm per kM,; so 90miles is a stretch. BTW, don't hate me, rtk base is about 10 ft away

@tonycanike
Copy link
Contributor

tonycanike commented Oct 13, 2023

If not, maybe a tip on how fix the source code to prevent the overwrite? Don't really look forward to trying to build the firmware, though.

There have been a few instances where I wanted the Facet to reboot without the f/w reconfiguring the F9P.

You might consider creating a new issue to request a new feature for a f/w setting to not configure the F9P on a reboot.

There probably are complications I haven't thought of, but it all can be hashed out under that new request.

@j-w-bullfrog
Copy link
Author

j-w-bullfrog commented Oct 13, 2023

I've logged data and it seems that the gnss app drops the correction input to PP about every 1800 seconds (aka 1/2 hr). I don't see anything in my phone that would time it out, the app still running, etc. Wondering if it's a 'feature' of my pp developer account. I have sent an email to support @ ublox about this 30 minute bit.

@demurs73582
Copy link

Hi nseidle,

Even if RAM constraints prevent doing an elegant solution that delivers PointPerfect SPARTN data to the Facet over bluetooth, the ability to get the feed over USB would still be a big addition to the product.

I suggest adding an item to the configuration utility that will enable a choice to have the firmware set UBLOX_CFG_USBINPROT_SPARTN to 1.

Based on tonycanike's suggestion, I'll submit a new ticket.

@demurs73582
Copy link

I've logged data and it seems that the gnss app drops the correction input to PP about every 1800 seconds (aka 1/2 hr). I don't see anything in my phone that would time it out, the app still running, etc. Wondering if it's a 'feature' of my pp developer account. I have sent an email to support @ ublox about this 30 minute bit.

j-w-bullfrog, I can confirm that GNSS Master drops the PointPerfect connection after a while. I have the cheapest paid u-blox plan so I suspect it's the GNSS Master app. But this is a small issue for me -- I'll just keep restarting it periodically.

@j-w-bullfrog
Copy link
Author

Thanks for letting me know. Support at U-Blox is pokin at this too.

@cj8scrambler
Copy link

We are out of RAM on this particular line of products, which limits adding this feature at this time. But we plan to add this type of connectivity to upcoming products.

Adding support for the PointPerfect protocol (which I believe is a mix of MQTT & SPARTN) to the RTK firmware would certainly grow the RAM requirements. However U-Blox now provide SPARTN data over NTRIP. Would RAM limitations still prevent adding support for SPARTN to the existing NTRIP implementation? Personally I'm most interested in adding support for SPARTN NTRIP over Bluetooth using SW Maps.

@demurs73582
Copy link

Although currently I am getting good results using a PointPerfect feed through GNSS Master via USB cable to my Facet, I would certainly like to be able to use PointPerfect data to just SW Maps using NTRIP via bluetooth. How about this proposal, SparkFun?

@gdt
Copy link
Contributor

gdt commented Jul 1, 2024

@demurs73582 Are you able to configure SW Maps to obtain the data over NTRIP and then send it via Bluetooth SPP or BLE? That seems to be the hard part.

@demurs73582
Copy link

No bluetooth with current setup, which uses an Android phone with cellular internet connection and non-L-band Facet running RTK Surveyor version 3.10:

  • start GNSS Master and connect its receiver function to the Facet using a USB-OTG adapter and USB cable (NOT bluetooth) - this sets the Facet as the Android's GNSS receiver
  • use the GNSS Master's correction input function to feed PointPerfect SPARTN data to the Facet over the USB cable - must have cellular internet connection on the Android
  • start and use SW Maps as the survey app

This works well, but it would also be nice to skip the GNSS Master app and just use SW Maps getting PointPerfect data via NTRIP over bluetooth.

@gdt
Copy link
Contributor

gdt commented Jul 2, 2024

I don't think you are understanding my question. Are you able to configure SW maps to get the data? And if so are you able to configure SW maps to send it over bluetooth? If you can't do that, you need to file an enhancement request with SW maps, not here.

@cj8scrambler
Copy link

@demurs73582 Are you able to configure SW Maps to obtain the data over NTRIP and then send it via Bluetooth SPP or BLE? That seems to be the hard part.

Yes SW Maps is able to connect to U-Blox NTRIP server (portal.thingstream.io) and pull data. The problem is that they are serving SPARTN data over NTRIP (not RTCM). The ZED-F9P support SPARTN correction data and it works when routed via the serial port, but that requires a OTG cable from the phone to the Facet. If Facet firmware could route the data via BT like it does for RTCM, that would be much more convenient.

@cj8scrambler
Copy link

To clarify, NTRIP data is a relatively new offering from U-blox which is different than their original PointPerfect protocol.

@nseidle
Copy link
Member

nseidle commented Jul 2, 2024

To make PointPerfect work on a ZED:

  • The ZED needs to have keys loaded. How these are obtained is complicated.
  • ZED will need to have firmware HPG v1.30 or higher to support receiving SPARTN
  • ZED will need to have SPARTN enabled on UART1

None of this is impossible, except for the nagging RAM issue. We have PointPerfect working on RTK Everywhere (external PSRAM is available) but it is unlikely we will be able to make it work on this codebase without handicapping other features.

@nseidle
Copy link
Member

nseidle commented Jul 2, 2024

As @cj8scrambler points out, once PointPerfect supports RTCM over NTRIP, this issue goes away.

@demurs73582
Copy link

nseidle said > unlikely we will be able to make it work on this codebase

The non-L-band Facet works fine with a PointPerfect SPARTN data feed over MQTT as long as you use a USB OTG adapter and USB cable.

As noted earlier, the equipment:

Basic Facet running v3.10 Surveyor code (thanks for fixing the SPARTN reset on reboots!)
Android phone running paid version of GNSS Master
USB OTG adapter in phone
USB cable from OTG adapter to Facet

The process:

Phone on, plug in OTG adapter, then connect adapter to Facet
Power up Facet
Phone asks which app to use for the USB connection, choose GNSS Master
In GNSS Master, connect to the GNSS function in the Facet as the receiver
In GNSS Master, load the JSON file with the PointPerfect credentials for the correction input

At this point, the Facet starts processing SPARTN data and gets RTK-Fix pretty quickly with a decent sky view.
I then use SW Maps for the actual field work.

Would I prefer a bluetooth connection solution? Yes. But on my budget for the limit use I have for GNSS, the existing solution is fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
New Feature New feature or request
Projects
None yet
Development

No branches or pull requests

6 participants