Introduce .
This function allows users to collect NMEA/RTCM/RAW data of RTK receivers via Bluetooth Classic / Bluetooth Low Energy (BLE ) while ESPrtk is running.
This function is similar to Bluetooth to Serial., but only one-way transmission from ESPrtk. ( Only send data from RTK receivers to Bluetooth device ).
There are no exceptions to the type of NMEA/RTCM/RAW data, all of which are received and sent.

It also supports sending real-time IMU data to Bluetooth device.
New feature :
Besides, the Bluetooth device can also act as a HOST and send control commands to ESPrtk in the same way as using on the RX / TX UART_0 port.
(HOST can send command PING, GPIO control command, check ESPrtk current system error, send restart command or control ESPrtk switch to UART / WEB Configure mode, ..... ESPrtk will respond ACK data / NACK back to HOST over Bluetooth connection).
BLE Viewer on NTRIP Rover - MQTT Rover - Radio RTK Rover.
Send NMEA-RTCM-RAW/.. Data (from RX-UART-RTK) to Bluetooth Client
After restarting (power on or Reset), ESPrtk works as usual (receives RTCM from Base and stream out to TX-B (TX_UART1 or TX_UART2)), and collects all NMEA data from RX-A port (RX_UART1 or RX_UART2) and sends it to Bluetooth Client device.

BLE Viewer on NTRIP Base - MQTT Base - Radio RTK Base.
Send NMEA-RTCM-RAW/.. Data (from RX-UART-RTK) to Bluetooth Client
After restarting (power on or Reset), ESPrtk works as usual (receives RTCM/RAW from RX_UART-RTK (RX_UART1 or RX_UART2) and send to Server), and collects all RTCM/RAW data from RX_UART-RTK and sends it to Bluetooth Client device.

To use it.
Now, just open your app , open Bluetooth and connect to ESPrtk to get data from GPS module.During the operation, if Bluetooth Client disconnects the connection, ESPrtk will not report an error and the Bluetooth Client will be able to reconnect.
Sometimes reconnection needs patience and wait to connect successfully.
Bluetooth Classic and Bluetooth Low Energy
Bluetooth Classic: Basic bluetooth mode supported by most devices.
Bluetooth Low Energy: Bluetooth mode is recommended to use, it is stable, energy-saving, high enough for RTK applications.
Configure

GNSS Surveyor – Android application.
Here is the full Introduction for “GNSS Surveyor ” on google play store :
Compatibility:-
* Compatible with Android OS 4.0.3 and newer.
* Designed and developed to work with Bluetooth 2.x.
Features:-
* Display location information and quality of the position data in real-time with sub-meter/ centimeter accuracy.
* View all or Hide all constellations individually on skyplot and distinct colour for different constellations for better identification.
* Constellation information for GPS, GLONASS, GALILEO, BEIDOU, QZSS, SBAS.
* Send commands to external GNSS GPS device and view the output data on Terminal.
* Log all received NMEA Messages and Binary Data on Terminal window.
* Easy to use one touch previously configured commands to communicate directly with GNSS Bluetooth device.
* Record and transfer the raw data file allowing post-processing of information for surveying and forestry, utilities, agriculture, environmental and other natural resource industry professionals.
* Built-in NTRIP client to access RTK or DGNSS correction from any RTK Network.
* Direct IP feature for RTK corrections data.
* Configurable audible and visual alerts.
* Multi language support.
* Multi measurement units support.
* Convert DMS to DD or vice versa.
Technical Support:-
For technical support, questions, feedback or bug reporting, please contact us support@globalgnss.com
Bluetooth GPS – Android application.
Here is the full Introduction for “Bluetooth GPS ” on google play store :
Connect to an external bluetooth NMEA compatible GPS device. Mock provider allows other apps to work with the device.
** FOR Android 6.0 (Marshmallow ), it changes the way it handles the mock provider permissions. Please go to the developer option, click “Select mock location app” and select this app as provider.
!!! Please read… YOU NEED AN EXTERNAL BLUETOOTH GPS HARDWARE DEVICE TO GET IT WORKS !!!
The app requires GGA, GSA, GSV and RMC (or ZDA+VTG) to works properly.
If you leave comments, whether works or not, you are welcome to state also which hardware devices combination you are using. This may help debugging and also serve as a reference for other users.
### I always receive questions about how to use this app to connect their Notebook or PC, Mac, or tethering another Android …etc. I have to clarify that the purpose of this app is to connect the Android device with an external Bluetooth GPS device, in order to “replace” the android’s internal GPS locations.
If you dont understand what the purpose of the app, please don’t dl.
Please install at your own risk.
### Please understand that the app frontend is just a frontend, mainly for controlling and configuration purpose, and providing some handy info. so don’t expect it has many functions, shows every details and in any desired format…etc.
**** Please first enable Allow Mock Locations in Setting ****
* can’t guarantee all device+apps work, pls email me details==========
Now you can start/stop the service from other apps by sending the service or broadcast Intent :
Start – googoo.android.btgps.action.SERVICE_START
Stop – googoo.android.btgps.action.SERVICE_STOP
Toggle – googoo.android.btgps.action.SERIVCE_TOGGLE* Note: You should first make sure you setup all the preferences and you can start the service correctly through the GUI frontend.
* try the workarounds (in preference) if failed to connect (eg, service discovery fail, connection refused)
Please report error or send me logcat if you got FC or any problems, with screen cap of any error messages, nmea log.
There are thousands combinations of [android version x mobile hardware x bluetooth gps hardware ]. Sorry that it is impossible to provide support on a particular hardware model. Even a GPS-A works with Mobile-A, but GPS-A may not work with Mobile-B, but Mobile-B works with GPS-B. However, after upgraded the android version, this combination does not work anymore, but the other combination works again. I always got such reports. I don’t have any those hardwares, and even for some of them, I never heard before and cannot google any information about them. Hope you understand.
some android 4.2.x may have problem with the bluetooth stack.
eg.
https://code.google.com/p/android/issues/detail?id=39688
https://code.google.com/p/android/issues/detail?id=42520Use it on IOS Mobile Device.
Bluetooth GPS Status Tool
Use it on Computer Device.
Just a Bluetooth module with the ability to convert to Serial is able to perform data collection and display on the computer like a normal GPS module.