Greetings community,
The next version of QField will feature in-app NTRIP support, one of the most requested functionality we have on our to-do list 
We’d like for the community to give development builds a try with as many RTK devices as possible, and as many NTRIP providers as possible.
If you are a community member that can help out on that front, please go install development APKs here (QField NTRIP implementation by nirvn · Pull Request #7435 · opengisch/QField · GitHub), do some testing, and report successes and failures in this thread. The more details on the GNSS device and NTRIP provider, the better.
This is one of those “ask not what QField can do for you – ask what you can do for QField” moment
thanks in advance for the help.
Looking good and working well here. I’ll test more when I am further from home
Mobile device is Fairphone 6 running e/OS
GNSS – ArduSimple simpleRTK2Blite, ublox F9P
NTRIP – rtk2go.com corrections from my own base station
@fruit-github , fantastic, thanks for the feedback!
WOW!
We will give it a try! Thanks a million!
Hi, really really nice to hear, that QField now has an build in NTRIP-client.
I tested the prerelease 4.0.2 of QField for QGIS - Unstable from the Google Playstore.
I could connect to my Ardusimple simpleRTK2B (via BLE) and use RTK correction data from the Luxemburgish stream.spslux.lu service without any issues!
So it works fine on Android and I hope that this feature will be also part of the next release for iOS, since this was the main problem in the past, since QField could only be connected trough TCP/UDP until now.
Great work.
@geom , yes, I can confirm BLE will make its way into iOS with QField 4.2.0. Getting Bluetooth connectivity on iOS was pretty much the principal motivation for BLE 
Hi everyone,
I’m trying to connect an Emlid Reach RX2 to QField 4.2 on iPadOS using the new **Bluetooth BT + BLE (NMEA)**connection option.
The RX2 appears to expose two Bluetooth entries on iOS:
-
One entry with the iOS info icon. I renamed this one to “Antenna”. This seems to be the antenna/configuration connection used by Emlid Flow.
-
A second entry without the iOS info icon. I renamed this one to “Stream”. This entry only appears after connecting to the RX2 with Emlid Flow first. This also seems to be required for iOS/Core Location to receive the accurate RX2 position.
QField does list the renamed “Stream” device, so it looks like QField can see the correct Bluetooth entry. However, when I try to connect to it, QField fails with:
Positioning device error: BluetoothLowEnergyReceiver: required Target service not found on device
What I observed:
-
If I use the iOS internal location provider in QField, I only get the accurate position when the RX2 “Stream” Bluetooth entry is connected in iOS.
-
However, QField still reports around 5 m accuracy when using the internal/iOS location provider, even though Emlid Flow reports RTK FIX.
-
Because of that, I cannot reliably use QField’s “enforce accuracy” feature.
-
When trying to connect directly via Bluetooth BT + BLE (NMEA), QField sees “Stream” but fails with the error above.
-
The RX2 seems to use a special iOS Bluetooth/MFi/External Accessory stream for NMEA, not necessarily a BLE GATT NMEA service.
My question is:
Does QField 4.2 on iOS support only BLE GNSS receivers exposing a specific BLE NMEA service, or should it also work with Emlid Reach RX/RX2 devices using the iOS Bluetooth/MFi NMEA stream?
If the Emlid RX2 is currently not supported directly, is there anything I can test or provide to help debug this?
Thanks a lot!
We got to test the NTRIP client with the Happy Mini Q and it works great!
That said, getting the most out of it still requires the companion app. Things like pole height for IMU need custom commands sent to the antenna, and I totally get why that’s not something QField would want to bake in, since those commands would differ per manufacturer.
Using QField’s built-in NTRIP client with the external app just for config doesn’t work either, since there’s only one Bluetooth channel to go around.
So my proposal would be a plugin mechanism for sending custom commands to the connected antenna and reading responses. That would allow for antenna-specific companion plugins and make the whole workflow a lot smoother, eliminating the need to leave QField for antenna setup and would even allow things like a battery status indicator right in the QField UI.