> For the complete documentation index, see [llms.txt](https://docs.rtkdata.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rtkdata.com/integration-hub/gnss-rovers-and-receivers/stonex-s599-s590.md).

# Stonex S599 NTRIP & S590 RTK Setup Without a Modem

The Stonex S599 and S590 have no modem. Get RTKdata NTRIP through Cube-a Phone Network or the S599 Web UI on a hotspot, with the AUTO mountpoint and GGA.

{% hint style="warning" %}
The S599 and S590 have no modem and no SIM slot. Internet for RTKdata NTRIP corrections comes from the controller (Cube-a Phone Network) or, on the S599, from a Wi-Fi hotspot the receiver joins.
{% endhint %}

The **Stonex S599** and **S590** are compact GNSS receivers for GIS and RTK work. To set up Stonex S599 NTRIP or S590 NTRIP with RTKdata, give the Android controller internet, open **Stonex Cube-a**, go to **Device** > **Working Mode** > **Rover**, set **Communication Mode:** to **Phone Network**, and on the **Send diff. from controller** page enter the RTKdata host for your region (`rtk.rtkdata.com` in North America, `eu.rtkdata.com` in Europe, `aus.rtkdata.com` in Australia) in **IP:**, `2101` in **Port:** and your RTK credentials under **CORS Account**, then tap **GET ACCESS POINT** and select `AUTO`. On the S599 you can instead use the receiver's own NTRIP client in the Web UI at `192.168.10.1`: the S599 joins a phone hotspot and takes the same values in **Caster Address**, **Caster Port** and **Mountpoint**.

The Cube-a steps follow the Stonex Cube-a 7.0 User Manual, and the Web UI steps follow the Stonex S599 User Manual (February 2026). Current app version when this page was written: **Stonex Cube-a v7** 7.2.05 (Google Play, 31 July 2026). Labels can differ in other versions.

Cube-a needs a license code and is bound to the Android device it is installed on. Stonex states that "you cannot use the same purchase code to unlock a copy of the program that is installed on another device", so a copy on your own phone stays locked without its own license code.

These are the values you enter. Choose the server closest to your work area. All three servers share the same base station network; the difference is routing latency, see [NTRIP Server Settings](/get-started/network.md).

{% tabs %}
{% tab title="North America" %}

* **Host (domain)** in **IP:** (Cube-a) or **Caster Address** (S599 Web UI): `rtk.rtkdata.com`
* **Host (IP fallback):** `13.56.117.10`, only if the device does not accept the hostname or does not connect with it
* **Port** in **Port:** (Cube-a) or **Caster Port** (Web UI): `2101`
* **Username / Password** in **CORS Account** (Cube-a) or **User** and **Password** (Web UI): From *RTK Credentials* in your [account dashboard](https://rtkdata.com/my-account/rtk-credentials/), not your website login
* **Mountpoint (ALL CAPS)** in **Corrections** (Cube-a) or **Mountpoint** (Web UI): `AUTO` (recommended), or `AUTO_WGS84`, `AUTO_ITRF2020`, `AUTO_ITRF2014`
  {% endtab %}

{% tab title="Europe" %}

* **Host (domain)** in **IP:** (Cube-a) or **Caster Address** (S599 Web UI): `eu.rtkdata.com`
* **Host (IP fallback):** `3.73.41.96`, only if the device does not accept the hostname or does not connect with it
* **Port** in **Port:** (Cube-a) or **Caster Port** (Web UI): `2101`
* **Username / Password** in **CORS Account** (Cube-a) or **User** and **Password** (Web UI): From *RTK Credentials* in your [account dashboard](https://rtkdata.com/my-account/rtk-credentials/), not your website login
* **Mountpoint (ALL CAPS)** in **Corrections** (Cube-a) or **Mountpoint** (Web UI): `AUTO` (recommended), or `AUTO_WGS84`, `AUTO_ITRF2020`, `AUTO_ITRF2014`
  {% endtab %}

{% tab title="Australia" %}

* **Host (domain)** in **IP:** (Cube-a) or **Caster Address** (S599 Web UI): `aus.rtkdata.com`
* **Host (IP fallback):** `54.206.56.130`, only if the device does not accept the hostname or does not connect with it
* **Port** in **Port:** (Cube-a) or **Caster Port** (Web UI): `2101`
* **Username / Password** in **CORS Account** (Cube-a) or **User** and **Password** (Web UI): From *RTK Credentials* in your [account dashboard](https://rtkdata.com/my-account/rtk-credentials/), not your website login
* **Mountpoint (ALL CAPS)** in **Corrections** (Cube-a) or **Mountpoint** (Web UI): `AUTO` (recommended), or `AUTO_WGS84`, `AUTO_ITRF2020`, `AUTO_ITRF2014`
  {% endtab %}
  {% endtabs %}

| Field                                                                      | Value                                                                                                                 |
| -------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| **Communication Mode:** (Cube-a, **Rover mode settings** > **Datalink**)   | **Phone Network**                                                                                                     |
| **Connect Mode:** (Cube-a) / **Connect Mode** (S599 Web UI)                | **NTRIP**                                                                                                             |
| **Name:** (Cube-a, **CORS Settings**)                                      | Your own entry for RTKdata, for example `RTKdata EU`                                                                  |
| **IP:** (Cube-a) / **Caster Address** (Web UI)                             | `rtk.rtkdata.com`, `eu.rtkdata.com` or `aus.rtkdata.com`; IP fallback `13.56.117.10`, `3.73.41.96` or `54.206.56.130` |
| **Port:** (Cube-a) / **Caster Port** (Web UI)                              | `2101`                                                                                                                |
| **User:** and **Password** (Cube-a) / **User** and **Password** (Web UI)   | From *RTK Credentials*. The username starts with `rtk` and is not your website login.                                 |
| **Corrections** under **MountPoint:** (Cube-a) / **Mountpoint** (Web UI)   | `AUTO` (recommended), or `AUTO_ITRF2020`, `AUTO_ITRF2014`, `AUTO_WGS84`                                               |
| **Send GGA delay \[sec]:** (Cube-a) / **Upload GGA** (Web UI)              | `1` / **1 S**                                                                                                         |
| **Automatically connect to network:** (Cube-a) / **Auto Connect** (Web UI) | On / **YES**                                                                                                          |
| **Fake GGA coordinates** and **Forced GGA** (Cube-a)                       | Off                                                                                                                   |

* Use the hostname first. The Stonex S599 manual shows a hostname in **Caster Address**. In Cube-a the field is called **IP:** and the manual's screenshot shows an IP address: if Cube-a rejects the hostname or does not connect, enter the IP fallback for your region.
* Enter only the host, without `http://` and without `:2101`. The port has its own field.
* Mountpoint names are case sensitive. A local coordinate system name is not a mountpoint and leaves you without corrections.
* One set of credentials allows one connection at a time. A second rover running at the same time needs its own data stream, see [Account & Credentials](/get-started/account-and-credentials.md#using-one-subscription-with-several-devices).

## Requirements

* **Stonex S599 or S590**, charged, with open sky for the first fix
* **Android controller with a licensed Stonex Cube-a 7** and internet: a SIM with a data plan in the controller, or the controller connected to a hotspot. Cube-a runs only on Android.
* **S599 only, as an alternative:** a phone hotspot or Wi-Fi router whose name (SSID) and password contain only letters and digits, plus a separate phone, tablet or laptop with a browser to open the Web UI once
* **RTKdata account** with active RTK credentials (username starts with `rtk`)
* **Survey pole** for tilt compensation and AR stakeout

{% hint style="info" %}
Don't have an RTKdata.com account yet? 👉 [Start 30-day Free Trial](https://rtkdata.com/try-rtk-corrections-free-for-30-days/) or [View Pricing](https://rtkdata.com/pricing/)
{% endhint %}

## Do the Stonex S599 and S590 have a modem or SIM slot?

No. Neither the S599 nor the S590 has a modem or a SIM slot, so RTKdata NTRIP corrections reach them through the Android controller running Cube-a (**Phone Network**) or, on the S599, through a Wi-Fi hotspot the receiver joins. The Stonex Product Catalog 2026 lists the S599 with **GSM LTE: NO**, and the S590 brochure lists Bluetooth and Wi-Fi, but no mobile network, under communication.

The two routes compared:

| Route                                                                                        | S599 | S590                                                            | Where you enter RTKdata                                                                      |
| -------------------------------------------------------------------------------------------- | ---- | --------------------------------------------------------------- | -------------------------------------------------------------------------------------------- |
| Controller internet: SIM with data in the Android controller, or the controller on a hotspot | Yes  | Yes                                                             | Cube-a: **Device** > **Working Mode** > **Rover**, **Communication Mode:** **Phone Network** |
| Receiver joins a Wi-Fi hotspot and runs its own NTRIP client                                 | Yes  | Not covered: NTRIP fields in the S590 Web UI are not documented | S599 Web UI at `192.168.10.1`: **Working mode settings** > **Rover**                         |

{% hint style="danger" %}
Do not select **Internal Network** in Cube-a with a SIM in the receiver. In the Cube-a manual, that mode needs "a SIM card with internet connection available inside the receiver", and the S599 and S590 have none. Select **Phone Network** instead.
{% endhint %}

### GIS apps other than Cube-a

Stonex **Cube-connector** is a separate Android app. According to Stonex it "will substitute the internal device's GNSS readings with those from the Stonex GNSS receiver", so other Android GIS apps can use the receiver's position. Its screens are not described on this page. For the Android mock location setup that a GIS app such as QField relies on, see [QField](/integration-hub/ntrip-clients-and-field-software/qfield.md).

## Which Stonex guide fits your receiver?

This guide covers the Stonex S599 and S590; other Stonex receivers and scanners have their own RTKdata guides, because their apps and internet options differ.

| Stonex device                         | RTKdata guide                                                                                                | Where you set up NTRIP                                                                                 |
| ------------------------------------- | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ |
| S599, S590                            | This page                                                                                                    | Cube-a Phone Network, the S599 also in its Web UI; no modem, internet from the controller or a hotspot |
| S999, S880                            | [Stonex S999 / S880](/integration-hub/gnss-rovers-and-receivers/stonex-s999-s880.md)                         | Cube-a 7 or the receiver Web UI                                                                        |
| S1000, S950                           | [Stonex S1000 / S950](/integration-hub/gnss-rovers-and-receivers/stonex-s1000-s950.md)                       | Cube-a, the S950 also in its Web UI                                                                    |
| S980A, S900A                          | [Stonex S980A / S900A](/integration-hub/gnss-rovers-and-receivers/stonex-s980a-s900a.md)                     | Cube-a or the receiver Web UI                                                                          |
| S80G, S60G, S55G, S90G                | [Stonex S80G / S60G / S55G / S90G](/integration-hub/gnss-rovers-and-receivers/stonex-s80g-s60g-s55g-s90g.md) | Android controllers with RTK GNSS: Cube-a on the controller, Phone Network                             |
| X200GO, X120GO                        | [Stonex X200GO / X120GO](/integration-hub/lidar-scanners-and-mobile-mapping/stonex-x200go-x120go.md)         | SLAM laser scanners, set up in GOapp                                                                   |
| Stonex receivers without a guide here | [GNSS Rovers & Receivers](/integration-hub/gnss-rovers-and-receivers.md)                                     | Universal NTRIP parameters: host, port `2101`, `AUTO`, RTK credentials and GGA                         |

## How do you set up NTRIP on the S599 or S590 in Cube-a Phone Network?

In Cube-a, connect the receiver over Bluetooth, open **Device** > **Working Mode** > **Rover**, set **Communication Mode:** to **Phone Network** and tap the **Phone Network** button, then on **Send diff. from controller** enter the RTKdata host, port `2101` and your credentials, load the list with **GET ACCESS POINT**, select `AUTO`, set **Send GGA delay \[sec]:** to `1`, tap **Start** and finally **Apply**. The controller fetches the corrections over its own internet connection and passes them on to the receiver.

{% stepper %}
{% step %}

### Give the controller internet

1. Put a SIM with a data plan into the Android controller, or connect the controller to a hotspot. Stonex notes that this communication mode "is only for rover".
2. If the controller has to be connected to the S599 over Wi-Fi (AR stakeout), only the SIM in the controller works. See the AR section below.
   {% endstep %}

{% step %}

### Connect the receiver in Cube-a

1. Switch on the receiver. Some dealers deliver kits with Cube-a already connected to the receiver over Wi-Fi: check first whether Cube-a shows a connected receiver, and do not set up a second connection.
2. In Cube-a, tap **Device** > **Communication**.
3. In **Communication Settings**, set **Device Type:** to **Stonex GNSS** and **Communication Mode:** to **Bluetooth**.
4. Tap **Search** and find your receiver by its serial number in the **Bluetooth Name** column. In the Stonex manuals, S599 serial numbers begin with `S5994A` and S590 serial numbers with `S5904A`.
5. Select it and tap **Connect**. After a search you can also tap **QR** and scan the code on the bottom of the receiver.
   {% endstep %}

{% step %}

### Set the rover datalink to Phone Network

1. Tap **Device** > **Working Mode** > **Rover**. The **Rover mode settings** page opens.
2. Under **Datalink**, set **Communication Mode:** to **Phone Network**.
3. Tap the blue **Phone Network** button. The **Send diff. from controller** page opens.

{% hint style="warning" %}
Do not choose **Internal Network** with a SIM in the receiver. The S599 and S590 have no SIM slot, so that connection never comes up.
{% endhint %}
{% endstep %}

{% step %}

### Enter the RTKdata caster

1. Set **Connect Mode:** to **NTRIP**.
2. Under **CORS Settings**, add your own entry for RTKdata with the three-dot icon and select it in **Name:**, or fill in the fields directly. Do not take over a saved entry of another correction service: check **IP:** and **Port:** before you continue.
3. **IP:** the host for your region from the tabs above. If Cube-a does not accept the hostname or does not connect, enter the IP fallback.
4. **Port:** `2101`.
5. Under **CORS Account**, enter **User:** and **Password** from *RTK Credentials*.
   {% endstep %}

{% step %}

### Select AUTO and set GGA

1. Under **MountPoint:**, tap **GET ACCESS POINT** to load the mountpoint list, then select `AUTO` under **Corrections**. The list can show more entries than `AUTO`: select `AUTO`.
2. Set **Send GGA delay \[sec]:** to `1`. The screenshot in the Stonex manual shows `3`.
3. Leave **Automatically connect to network:** switched on.
4. Leave **Fake GGA coordinates** and **Forced GGA** switched off. Use **Record diff. corrections** only for troubleshooting.

{% hint style="info" %}
**AUTO needs your position.** The `AUTO` mountpoint selects the base station from the position the receiver sends as NMEA GGA. Without GGA the caster cannot assign a base station and no corrections arrive, see [NTRIP & GGA Essentials](/integration-hub/ntrip-clients-and-field-software/ntrip-and-gga-essentials.md). Go outside with open sky and wait until the receiver has a position of its own, at least **SINGLE**, before you tap **Start**. **Fake GGA coordinates** and **Forced GGA** send a fake position to the caster, which Stonex describes as "only for test", so keep both off.
{% endhint %}
{% endstep %}

{% step %}

### Start and apply

1. Tap **Start** on **Send diff. from controller** to start receiving corrections. **Receive:** shows the incoming data.
2. Tap **OK** to return to **Rover mode settings**.
3. Tap **Apply** to start the receiver in rover mode.
4. Optional: tap **Save to Configurations**. The setup is then available under **Saved configurations**. On a later day, open **Device** > **Working Mode** > **Saved configurations**, select the configuration and tap **OK** to launch it, then wait for **FIXED**.

Check the result as described in *How do you know corrections are really arriving?* below.
{% endstep %}
{% endstepper %}

## How do you set up Stonex S599 NTRIP in the Web UI on a hotspot?

On the S599, switch on a phone hotspot, open the Web UI at `192.168.10.1` from a second device, set **Working mode settings** > **Rover** > **Current Datalink :** to **Wi-Fi** with the SSID and password of that hotspot, and enter the RTKdata host in **Caster Address**, `2101` in **Caster Port**, `AUTO` in **Mountpoint**, **Upload GGA** **1 S** and your RTK credentials; after saving, the S599 joins the hotspot and connects to RTKdata without a controller. The S590 is not covered here, because Stonex does not document NTRIP fields in its Web UI.

{% hint style="danger" %}
**Before you save, make sure you have a way back over Bluetooth**, with a licensed Cube-a paired to the S599. After saving, the S599 switches off its own Wi-Fi hotspot and the Web UI is no longer at `192.168.10.1`: it is only reachable from inside the hotspot network, at the IP address that network gives the S599. If your hotspot or router does not show that address, use Cube-a over Bluetooth instead. Do not expect a success message, because the connection drops right away. To get the S599 hotspot back, connect Cube-a over Bluetooth and set **Device** > **WiFi Mode Settings** to **MASTER**.
{% endhint %}

Use one route per receiver. Dealers report that a rover configuration applied later in Cube-a replaces a setup made in the Web UI, and with **Phone Network** Cube-a sets the S599 datalink to Bluetooth (Stonex S599 manual). If you use the Web UI route, do not apply a working mode in Cube-a on top of it.

{% stepper %}
{% step %}

### Prepare the hotspot

1. Give the hotspot a name (SSID) and a password that contain only letters and digits. Stonex states: "SSID and password must contain only alphanumeric characters."
2. On an iPhone, the hotspot name is the name of the iPhone. If that name contains an apostrophe or a space, rename the iPhone. Turn on **Allow Others to Join**, and if the S599 does not connect, turn on **Maximize Compatibility** ([Apple Support: Personal Hotspot](https://support.apple.com/en-us/111785), [If Personal Hotspot is not working](https://support.apple.com/en-us/119837)).
3. Switch the hotspot on before you save the Web UI settings, and leave it on.
4. Open the Web UI from a second device, such as a tablet, a laptop or a second phone. This guide describes the setup with two devices; a setup with the hotspot phone alone is not documented for the S599.
   {% endstep %}

{% step %}

### Open the Web UI

1. On the second device you use for the setup, switch off mobile data.
2. Connect it to the S599 Wi-Fi hotspot. The hotspot name is the receiver's serial number. Ignore messages that this network has no internet.
3. Open `192.168.10.1` in a browser and log in with **User** and **Password**. The standard login printed in the Stonex S599 manual is `admin` / `password`; it may have been changed under **Management** > **Security**.
4. Do not let the browser save or autofill this login. Otherwise it can end up in the NTRIP fields.
   {% endstep %}

{% step %}

### Set the Wi-Fi datalink

1. In the dashboard, open **Working mode settings** and choose the **Rover** tab.
2. Set **Current Datalink :** to **Wi-Fi**.
3. Enter the **SSID** and **Password** of your hotspot.
   {% endstep %}

{% step %}

### Enter the RTKdata caster

* **Connect Mode**: **NTRIP**
* **Caster Address**: the host for your region from the tabs above. The Stonex manual shows a hostname in this field; use the IP fallback only if the connection fails.
* **Caster Port**: `2101`
* **Mountpoint**: type `AUTO` in capitals. **Get Mountpoint** needs an internet connection on the S599, which it does not have while you are connected to its own hotspot, so type the name.
* **Upload GGA**: **1 S**. Stonex: "the GGA upload must be set at 1 second at least".
* **User** and **Password**: from *RTK Credentials*. Check that the browser has not filled in the Web UI login here.
* **Auto Connect**: **YES**. With this option, "at start-up the S599 will use the last settings to connect automatically to the NTRIP caster".
  {% endstep %}

{% step %}

### Save the settings

1. Check the Bluetooth way back from the warning above.
2. Check that your hotspot is switched on.
3. Save the settings.
4. The S599 switches off its own hotspot and joins your hotspot. The browser loses the connection; this is expected.
   {% endstep %}

{% step %}

### Check the result

* On the S599, the communication LED flashes while corrections are received, and the satellite LED turns solid green at a fixed solution. The communication LED also flashes during raw data recording, so check the fix, see the next sections. If you read the solution in Cube-a, connect it over Bluetooth only to read the solution, without opening **Working Mode** or tapping **Apply**.
* From a device on the same hotspot network, the Web UI dashboard shows **Actual datalink setting** and **Position Status** under **Status**.
  {% endstep %}
  {% endstepper %}

## How do you keep NTRIP running when Cube-a uses the S599 Wi-Fi for AR stakeout?

For AR stakeout, Cube-a has to connect to the S599 over its 5G Wi-Fi hotspot, so the controller's Wi-Fi is taken; NTRIP through **Phone Network** then only works with a SIM in the controller and with mobile data allowed while the controller is connected to the S599 by Wi-Fi. A phone hotspot for the controller does not work in this mode.

1. In the S599 Web UI, open **Device Settings**, set **WIFI Frequency** to **5G** and save. Stonex: 5G "is necessary to be selected to use the camera functionality".
2. Connect the controller to the S599 Wi-Fi hotspot. In Cube-a, open **Device** > **Communication**, set **Device Type:** to **Stonex GNSS** and **Communication Mode:** to Wi-Fi (the S599 manual writes WIFI), and connect. If a Wi-Fi internet popup appears, tap it and choose **YES** to stay connected.
3. Put a SIM with mobile data into the controller.
4. Let Cube-a use mobile data while the receiver is connected by Wi-Fi: in Cube-a, open **Configure** > **System Settings** > **More settings** and switch on the network option for internet access over the mobile network while the GNSS device is connected by Wi-Fi. If that does not help, enable **Mobile data always active** in the Android developer options.
5. Set up **Phone Network** as in the Cube-a steps above and wait for **FIXED**.
6. For the AR view, hold the S599 with its control panel facing you, with tilt compensation active and a **FIXED** solution. Then open **Survey** > **Point Stakeout**, select the point, tap **Stake point** and then the **AR** button.

## How do you know corrections are really arriving?

Corrections are really arriving when Cube-a shows the solution **FIXED** and a small **Differential correction age**, which Stonex says is generally less than 5 seconds; with Phone Network, **Receive:** on **Send diff. from controller** shows the incoming data. **DGNSS** alone does not prove that NTRIP works, because according to Stonex it can also come from SBAS satellites.

| Cube-a solution | Meaning (Stonex Cube-a manual)                                                           | What to do                                                                    |
| --------------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| **NO FIX**      | No position: Cube-a is not connected to the receiver, or the receiver sees no satellites | Check the connection in **Device** > **Communication** and go outside         |
| **SINGLE**      | No differential corrections from a base                                                  | Check controller internet, credentials, `AUTO` and **Send GGA delay \[sec]:** |
| **DGNSS**       | Corrections from SBAS satellites, or from the base without a better solution             | Not proof of NTRIP: check **Receive:** and the correction age                 |
| **FLOAT**       | Corrections from the base arrive, RTK not solved yet                                     | Stay under open sky and wait                                                  |
| **FIXED**       | RTK fix                                                                                  | Measure                                                                       |

LEDs on the S599 (Stonex S599 manual):

| LED                     | State                      | Meaning                                                          |
| ----------------------- | -------------------------- | ---------------------------------------------------------------- |
| Satellite indicator     | Green, solid               | Fixed solution                                                   |
| Satellite indicator     | Green, flashing            | Position calculated without a fixed solution                     |
| Satellite indicator     | Red, flashing              | Position not calculated                                          |
| Satellite indicator     | Green and red, alternating | GNSS board abnormal                                              |
| Communication indicator | Blue                       | A device is connected via Bluetooth or Wi-Fi                     |
| Communication indicator | Green                      | No device connected                                              |
| Communication indicator | Flashing                   | Corrections being received or transmitted, or raw data recording |

On the S590, the green data-link indicator flashes when differential data is being transmitted (Stonex S590 presentation). On both models, the LEDs are only a hint: **FIXED** and the **Differential correction age** in Cube-a are what count.

Without Cube-a, for example after the S599 Web UI setup, the fix indication on the receiver is the satellite indicator in solid green, which the Stonex S599 manual lists as a fixed solution. From a device on the same hotspot network, the Web UI dashboard also shows **Position Status** under **Status**.

{% hint style="info" %}
**Notify when base coordinates change:** With `AUTO`, the caster can switch to a closer base station as you move, see [NTRIP Server Settings](/get-started/network.md). If **Notify when base coordinates change:** is switched on under **CORS Settings**, Cube-a then shows a warning. After a station change this message is expected and is not an error.
{% endhint %}

### Correction format

The Stonex S599 manual states that in rover mode the S599 "automatically recognizes the RTK corrections format between: RTCM 3.2, RTCM 3.0". The S590 brochure lists RTCM 3.x. RTKdata's `AUTO` mountpoints send RTCM 3.2 with MSM4 messages (1074, 1084, 1094, 1114, 1124, 1134) and message 1005.

## How do you turn on tilt compensation on the S599 or S590?

Tilt compensation needs a **FIXED** solution: turn on **Pole Tilt Correction** in Cube-a under **Configure** > **System Settings** > **Sensor Options**, then follow the initialization prompts in Survey mode.

On the S599 (Stonex S599 manual):

1. Open **Configure** > **System Settings** > **Sensor Options** and select **Pole Tilt Correction** (Cube-a notes **Requires a FIXED solution**). Set **Max tilt angle (°):**, switch on **Show tilt angle on screen** and **Show sensor calibration hints (animations) on screen**, and tap **OK**.
2. With **FIXED**, go to Survey mode. At the first prompt, draw a circle on the ground with the pole tip. At the second prompt, move the receiver back and forth for a few seconds in one direction, rotate it by 90 degrees and repeat the movement in the same direction. If the prompt stays, move to a spot with lower RMS values and repeat both steps.
3. Calibrate when needed: open the **Calibrate** page and choose **Calibrate Sensor**. With **FIXED**, set the pole to 1.8 m and the same measured height in Cube-a, wait for **Ready to Calibrate** and tap **Start**. Move the receiver slowly back and forth for about 10 seconds along each of four directions at right angles, keeping the pole tip on the same point and tilting at least 45 but not more than 60 degrees, until the completion message appears.

On the S590, Stonex documents no model-specific procedure. The generic Cube-a steps apply: enable tilt in **Sensor Options**, and for **Calibrate Sensor** have a **FIXED** solution and the correct antenna height, wait for **Ready to Calibrate**, tap **Start** and move the receiver back and forth in four directions 90 degrees apart as Cube-a guides you.

## Which coordinate system should you use with AUTO in Cube-a?

Choose the Cube-a project coordinate system that matches the datum `AUTO` delivers in your region, and do not add RTCM 1021 to 1027 parameters or an **ITRF Conversion** on top.

### Coordinate system and heights with AUTO

* `AUTO` delivers your region's datum, chosen from the GGA position: for example NAD83(2011) epoch 2010.0 in the USA, NAD83(CSRS)v7 epoch 2010.0 in Canada, ETRS89 (realization ETRF2000) epoch 2010.0 in Europe and GDA2020 epoch 2020.0 in Australia. For regions not listed, `AUTO` falls back to WGS84(G2139) at the mid-year epoch.
* `AUTO_ITRF2020` and `AUTO_ITRF2014` deliver ITRF2020 and ITRF2014 at the current epoch, and `AUTO_WGS84` delivers WGS84(G2139) in the middle of the current year. The datum for every region is listed in [Coordinate Systems & Datums](/get-started/coordinate-systems-and-datums.md).
* Heights are ellipsoidal. Apply a geoid for orthometric heights, see [Understanding Heights](/get-started/understanding-heights.md).
* A consistent offset of 50 cm to 1 m against local survey control usually means a datum mismatch, see [Why Your Coordinates May Be Offset](/get-started/coordinate-systems-and-datums.md#why-your-coordinates-may-be-offset).

### Settings in the Cube-a project

1. Open **Configure** > **Coordinate System** and, under **Existing Use/Change** > **Default Systems**, select the system that matches the `AUTO` datum for your region.
2. When you create a project, do not select **RTCM1021-1027** in the **Coordinate system parameters type** drop-down. Stonex offers it "if the CORS you use sends them out", and the RTKdata `AUTO` mountpoints send 1005 and MSM4 messages, not 1021 to 1027.
3. Do not switch on **ITRF Conversion** in addition. Stonex notes that "this conversion is applied to all points in the current project".
4. Set the geoid under **Configure** > **Coordinate System** > **Geoid files**.
5. S599 only: satellite corrections in the Web UI (**SBAS**, **B2B PPP**, **GALILEO HAS** under **Satellites Correction**) take over when no RTK correction has arrived for the RTK timeout. Stonex warns that "different source of corrections could use different reference frame", so check for **FIXED** before you store a point.

## Troubleshooting

| Problem                                                                            | Cause                                                                                                            | Fix                                                                                                                                                                                                                                                                          |
| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| No SIM slot found, or Cube-a **Internal Network** never connects                   | The S599 and S590 have no modem and no SIM slot                                                                  | Use **Phone Network** in Cube-a, or on the S599 the Web UI route with a hotspot                                                                                                                                                                                              |
| Cube-a on your own phone cannot be unlocked                                        | The Cube-a license is bound to the device it was bought for                                                      | Connect the licensed controller to your phone's hotspot, or on the S599 use the Web UI route                                                                                                                                                                                 |
| Only an iPhone is available                                                        | Cube-a runs only on Android                                                                                      | S599: the Web UI route needs the iPhone hotspot plus a second device with a browser, such as a tablet or laptop. A setup with one iPhone as both hotspot and browser is not documented. S590: this guide has no route without an Android controller with Cube-a              |
| No corrections while Cube-a is connected to the S599 over Wi-Fi                    | Android keeps using the S599 Wi-Fi, which has no internet, instead of mobile data                                | Put a SIM with data into the controller, switch on the network option under **Configure** > **System Settings** > **More settings**, or enable **Mobile data always active** in the Android developer options. A phone hotspot for the controller does not work in this mode |
| The tablet drops the S599 Wi-Fi and joins another known Wi-Fi                      | Some Android tablets switch to a Wi-Fi with better internet on their own (reported for Samsung Galaxy tablets)   | Turn off the automatic switch to better Wi-Fi networks in the tablet's Wi-Fi settings                                                                                                                                                                                        |
| Cube-a is already connected over Wi-Fi when you start                              | Some dealers deliver kits with Cube-a set up and connected to the receiver                                       | Check the existing connection first instead of setting it up twice. Dealer order for switching on: receiver, then controller, then Cube-a                                                                                                                                    |
| The Web UI NTRIP setup stops working after using Cube-a                            | Two configuration routes mixed                                                                                   | Pick one route per receiver. With the Web UI route, do not apply a working mode in Cube-a                                                                                                                                                                                    |
| The S599 does not join the hotspot                                                 | SSID or password contain other characters than letters and digits, for example an iPhone name with an apostrophe | Rename the hotspot or iPhone and use a password of letters and digits. On an iPhone, turn on **Allow Others to Join** and, if needed, **Maximize Compatibility**, and stay on the hotspot screen until the receiver connects                                                 |
| S599 hotspot gone and `192.168.10.1` does not load after saving                    | Wi-Fi client mode switches off the S599 hotspot                                                                  | This is expected. Connect Cube-a over Bluetooth and set **Device** > **WiFi Mode Settings** to **MASTER**, or, if your hotspot or router shows the IP address it assigned to the S599, open the Web UI at that address from a device on the same network                     |
| No success message after saving in the Web UI                                      | The connection drops as soon as the S599 leaves its own hotspot                                                  | This is expected. Check the LEDs, or connect Cube-a over Bluetooth only to read the solution, without opening **Working Mode** or tapping **Apply**                                                                                                                          |
| Caster login fails although you entered your credentials in the Web UI             | The browser filled the Web UI login into **User** and **Password**                                               | Turn off password saving and autofill for the Web UI and check both fields before saving                                                                                                                                                                                     |
| `192.168.10.1` does not load                                                       | The phone routes through mobile data or leaves the S599 Wi-Fi, which has no internet                             | Switch off mobile data, stay on the S599 Wi-Fi, ignore the no-internet message and reload                                                                                                                                                                                    |
| Communication LED flashes, but no fix                                              | The LED also flashes during raw data recording                                                                   | Check **FIXED** and **Differential correction age** in Cube-a                                                                                                                                                                                                                |
| Data arrives, but the solution never reaches **FIXED** after picking from the list | Another mountpoint than `AUTO` selected                                                                          | The list can show more entries than `AUTO`: select `AUTO`                                                                                                                                                                                                                    |
| Login fails or the mountpoint is not found                                         | Website login used, or mountpoint in lowercase                                                                   | Use the username (starts with `rtk`) and password from *RTK Credentials* and `AUTO` in capitals                                                                                                                                                                              |
| No or unsuitable corrections                                                       | **Fake GGA coordinates** or **Forced GGA** switched on, or a long GGA interval                                   | Switch both off and set **Send GGA delay \[sec]:** to `1`                                                                                                                                                                                                                    |
| The project gets no transformation parameters                                      | **RTCM1021-1027** selected as **Coordinate system parameters type**                                              | Select a system under **Default Systems** that matches the `AUTO` datum                                                                                                                                                                                                      |
| S599 positions jump after an NTRIP dropout                                         | Satellite corrections took over after the RTK timeout, possibly in another reference frame                       | Watch the solution and store points only with **FIXED**. Switch satellite corrections on only when you want them                                                                                                                                                             |
| The S599 beeps and tracks no satellites                                            | Receiver registration expired                                                                                    | Check the expiration date in the Web UI dashboard or in Cube-a under **Device** > **Register** with the receiver connected; Cube-a warns when a temporary license expires in less than 30 days. Ask your dealer for a new code. Check loan and demo units before the job     |
| Tilt compensation does not start or measures inaccurately                          | Initialization without **FIXED**, or calibration with a wrong pole height                                        | Get **FIXED** first. For the calibration, use a 1.8 m pole height and the same measured height in Cube-a                                                                                                                                                                     |
| Cube-a unstable on Android 15 or later, or labels differ from this page            | Older Cube-a version                                                                                             | Update Cube-a from Google Play. Version 7.2.05 lists "Compatibility fixes for Android 15 and later"                                                                                                                                                                          |
| A GIS app shows the phone's own position                                           | Cube-connector is not set as the mock location app, or it was closed                                             | Select Cube-connector as the mock location app in the Android developer options and keep it running, see [QField](/integration-hub/ntrip-clients-and-field-software/qfield.md)                                                                                               |
| The S599 Web UI steps do not match the S590                                        | The S590 Web UI is different and its NTRIP fields are not documented                                             | Use Cube-a **Phone Network** for the S590                                                                                                                                                                                                                                    |
| Corrections stop when a second device connects                                     | Two devices on one set of credentials                                                                            | One data stream allows one connection. See [Account & Credentials](/get-started/account-and-credentials.md#using-one-subscription-with-several-devices)                                                                                                                      |
| Heights tens of metres off                                                         | Ellipsoidal heights, no geoid applied                                                                            | Set a geoid under **Geoid files**, see [Understanding Heights](/get-started/understanding-heights.md)                                                                                                                                                                        |

For connection problems that are not specific to Stonex receivers, see [Common Connection Issues](/support/common-connection-issues.md).

## Frequently asked questions

### Can the Stonex S599 connect to NTRIP without a controller?

Yes. The S599 has its own NTRIP client in the Web UI: set **Current Datalink :** to **Wi-Fi** with the SSID and password of a hotspot, enter the RTKdata host, port `2101`, `AUTO`, **Upload GGA** **1 S** and your credentials, and set **Auto Connect** to **YES**. For the setup you need the hotspot switched on and a second device with a browser, and later a licensed Cube-a over Bluetooth to switch the S599 hotspot back on. The S590 is not covered by this route.

### Why did the S599 Wi-Fi hotspot disappear after I saved the NTRIP settings?

Because Wi-Fi client mode switches it off. Stonex states that "using this functionality will disable the S599 Wi-Fi hotspot and the IP address of the WebUI will change". The Web UI is then only reachable from the hotspot network at the IP address it assigned to the S599, if your hotspot or router shows that address. To get the S599 hotspot back, connect Cube-a over Bluetooth and set **Device** > **WiFi Mode Settings** to **MASTER**.

### Why does Internal Network not work on the S599 or S590?

Because **Internal Network** with a SIM needs a SIM card inside the receiver, and the S599 and S590 have no modem and no SIM slot. The Cube-a manual describes this mode as "necessary to insert a SIM card with internet connection available inside the receiver". Select **Phone Network** instead, so that the controller provides the internet connection.

### Does the S590 have an NTRIP client in its web interface?

Not documented. The S590 brochure lists a Web UI, but no Stonex document or screenshot we found shows NTRIP fields in it, so this guide does not describe it. Set up the S590 with Cube-a **Phone Network**.

### Does the blinking S599 communication LED mean corrections are arriving?

Not necessarily. The communication LED flashes when corrections are received or transmitted, but also during raw data recording. Check the solution **FIXED** and the **Differential correction age** in Cube-a; a solid green satellite LED also indicates a fixed solution. If you set up the S599 in the Web UI, connect Cube-a over Bluetooth only to read the solution, without opening **Working Mode** or tapping **Apply**.

## Quick reference

1. No modem, no SIM slot: internet comes from the controller (SIM with data or hotspot) or, on the S599 only, from a hotspot the receiver joins.
2. Cube-a: **Device** > **Communication** (**Stonex GNSS**, **Bluetooth**, **Search**, **Connect**), then **Device** > **Working Mode** > **Rover**, **Communication Mode:** **Phone Network** and the blue **Phone Network** button.
3. **Send diff. from controller**: **Connect Mode:** **NTRIP**, own entry under **CORS Settings**, **IP:** `rtk.rtkdata.com`, `eu.rtkdata.com` or `aus.rtkdata.com` (IP fallback `13.56.117.10`, `3.73.41.96` or `54.206.56.130`), **Port:** `2101`, **CORS Account** from *RTK Credentials*.
4. **GET ACCESS POINT**, select `AUTO` under **Corrections**, **Send GGA delay \[sec]:** `1`, **Automatically connect to network:** on, **Fake GGA coordinates** and **Forced GGA** off, then **Start**, **OK**, **Apply**.
5. S599 Web UI at `192.168.10.1`, opened from a second device while your hotspot is on: **Working mode settings** > **Rover** > **Current Datalink :** **Wi-Fi**, **SSID** and **Password** (letters and digits only), **Connect Mode** **NTRIP**, **Caster Address**, **Caster Port** `2101`, **Mountpoint** `AUTO`, **Upload GGA** **1 S**, **User** and **Password**, **Auto Connect** **YES**, save. The S599 hotspot then disappears; get it back with Cube-a over Bluetooth, **Device** > **WiFi Mode Settings** > **MASTER**.
6. Check **FIXED** and **Differential correction age** in Cube-a, not the LEDs alone.

## Related Guides

* [NTRIP Server Settings](/get-started/network.md): the regional hosts, IP fallbacks, port and mountpoints in one reference
* [NTRIP & GGA Essentials](/integration-hub/ntrip-clients-and-field-software/ntrip-and-gga-essentials.md): why the caster needs your position before it sends corrections
* [Coordinate Systems & Datums](/get-started/coordinate-systems-and-datums.md): which datum `AUTO` and its variants deliver in each region
* [Understanding Heights](/get-started/understanding-heights.md): ellipsoidal and orthometric heights, and how to apply a geoid
* [Account & Credentials](/get-started/account-and-credentials.md): where to find your RTK credentials and how many devices can connect at once
* [Common Connection Issues](/support/common-connection-issues.md): what to check when corrections do not arrive or the fix stays on Float
* [QField](/integration-hub/ntrip-clients-and-field-software/qfield.md): GIS data collection on Android with an external receiver and mock location
* [Stonex S999 / S880](/integration-hub/gnss-rovers-and-receivers/stonex-s999-s880.md): RTKdata setup for the S999 and S880 in Cube-a 7 and the Web UI
* [Stonex S1000 / S950](/integration-hub/gnss-rovers-and-receivers/stonex-s1000-s950.md): Cube-a NTRIP for the S1000 and S950, and the S950 Web UI
* [Stonex S980A / S900A](/integration-hub/gnss-rovers-and-receivers/stonex-s980a-s900a.md): RTKdata setup for the S980A and S900A in Cube-a and the Web UI
* [Stonex X200GO / X120GO](/integration-hub/lidar-scanners-and-mobile-mapping/stonex-x200go-x120go.md): RTKdata setup for the Stonex SLAM laser scanners in GOapp
* [GNSS Rovers & Receivers](/integration-hub/gnss-rovers-and-receivers.md): all receiver guides and the universal NTRIP parameters


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.rtkdata.com/integration-hub/gnss-rovers-and-receivers/stonex-s599-s590.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
