# Bad Elf Flex

The Bad Elf Flex is a professional-grade multi-frequency GNSS receiver designed for GIS data collection, asset mapping, and field survey. It tracks GPS, GLONASS, Galileo, and BeiDou on multiple frequencies and supports RTK corrections for centimeter-level accuracy. The Flex connects to your iOS or Android device via Bluetooth and is configured through the **Bad Elf GPS** app (called "Bad Elf GNSS" on some platforms). It features a rugged, weather-resistant housing and a built-in rechargeable battery.

## Requirements

* **Bad Elf Flex** GNSS receiver, fully charged
* **Bad Elf GPS app** (iOS) or **Bad Elf GNSS app** (Android) installed on your phone or tablet
* **Internet connection** on your phone (cellular data recommended for field use)
* **RTKdata.com account** with active RTK credentials (username and password from your RTK dashboard)
* **Survey pole or bipod** with a 5/8"-11 thread mount (optional but recommended)
* **Clear sky visibility** — avoid indoor testing

{% 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 %}

## Step-by-step setup

{% stepper %}
{% step %}

#### Power on and pair at OS level

The Bad Elf Flex requires Bluetooth pairing at the operating system level **before** opening the app. This is different from some receivers that pair through the app directly.

1. Press and hold the power button on the Bad Elf Flex until the LED turns on.
2. The Flex enters Bluetooth pairing mode automatically on first boot. On subsequent boots, it reconnects to the last paired device.
3. **On your phone, open Settings → Bluetooth** and pair with the device named **Bad Elf Flex \[serial number]**.
4. Wait for the pairing to complete and show "Connected" in your phone's Bluetooth settings.
5. **Only after OS-level pairing is confirmed**, open the **Bad Elf GPS** app. The Flex should appear as connected in the app's device list.

{% hint style="warning" %}
If you skip the OS-level Bluetooth pairing and try to connect through the app first, the Flex will not be detected. Always pair in your phone's Bluetooth settings first.
{% endhint %}
{% endstep %}

{% step %}

#### Navigate to NTRIP settings

1. In the Bad Elf GPS app, tap on your **connected Flex device**.
2. Tap **Settings** (gear icon).
3. Scroll to **Corrections** or **RTK Corrections** section.
4. Tap **NTRIP** to open the NTRIP client configuration.
   {% endstep %}

{% step %}

#### Enter RTKdata.com NTRIP settings

Fill in the fields. Select the tab for your region:

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

* **Host (domain):** `rtk.rtkdata.com`
* **Host (IP fallback):** `13.56.117.10`
* **Port:** `2101`
* **Username / Password:** From *RTK Credentials* in the internal dashboard (not website login)
* **Mountpoint (ALL CAPS):** `AUTO` (recommended) — or `AUTO_WGS84`, `AUTO_ITRF2020`, `AUTO_ITRF2014`
  {% endtab %}

{% tab title="Europe" %}

* **Host (domain):** `eu.rtkdata.com`
* **Host (IP fallback):** `3.73.41.96`
* **Port:** `2101`
* **Username / Password:** From *RTK Credentials* in the internal dashboard (not website login)
* **Mountpoint (ALL CAPS):** `AUTO` (recommended) — or `AUTO_WGS84`, `AUTO_ITRF2020`, `AUTO_ITRF2014`
  {% endtab %}

{% tab title="Australia" %}

* **Host (domain):** `aus.rtkdata.com`
* **Host (IP fallback):** `54.206.56.130`
* **Port:** `2101`
* **Username / Password:** From *RTK Credentials* in the internal dashboard (not website login)
* **Mountpoint (ALL CAPS):** `AUTO` (recommended) — or `AUTO_WGS84`, `AUTO_ITRF2020`, `AUTO_ITRF2014`
  {% endtab %}
  {% endtabs %}

Also configure:

* **Send GGA:** **Enabled**

Tap **Save** or **Done** to store the configuration.

{% hint style="warning" %}
Only these four mountpoints are valid. Always use **ALL CAPS**.
{% endhint %}
{% endstep %}

{% step %}

#### Connect to NTRIP

1. Return to the main device screen.
2. Toggle the **NTRIP connection** to **On** (or tap **Connect**).
3. The app displays correction stream status — look for "Receiving corrections" or similar confirmation.
   {% endstep %}

{% step %}

#### Verify RTK Fix

1. Check the solution status indicator in the app. It will show the progression: **Autonomous** → **DGPS/Float** → **RTK Fix**.
2. Once you see **RTK Fix**, the receiver is delivering centimeter-level positions.
   {% endstep %}
   {% endstepper %}

## What to expect

* **LED indicators:** Green = power on and tracking satellites. Blue blinking = Bluetooth connected. The app provides more detailed status than the LEDs.
* **Convergence time:** 30–60 seconds to Float, 60–120 seconds to Fix under open sky.
* **Accuracy at Fix:** 1–3 cm horizontal, 2–5 cm vertical.
* **Battery life:** Approximately 8–10 hours with Bluetooth and NTRIP corrections active.

## Vertical reference (heights)

{% hint style="info" %}
Heights from RTKdata.com are **ellipsoidal**, not orthometric (mean sea level). If your project requires orthometric (MSL) heights, apply a geoid transformation in your GIS software.
{% endhint %}

## Troubleshooting

| Problem                                 | Cause                               | Fix                                                                                                           |
| --------------------------------------- | ----------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| App does not see the Flex               | Bluetooth not paired at OS level    | Pair the Flex in your phone's **Bluetooth settings first**, then open the app. This is the most common issue. |
| "Connection refused" or timeout         | Wrong host or port                  | Verify the caster host spelling and that port is `2101`. Check for typos.                                     |
| "Authentication failed"                 | Incorrect credentials               | Use the credentials from your RTKdata.com RTK dashboard, not your website login email/password.               |
| Corrections received but stuck on Float | Poor sky conditions or GGA not sent | Make sure **Send GGA** is enabled. Move to open sky away from buildings.                                      |
| Mountpoint not found                    | Lowercase or wrong mountpoint name  | Type `AUTO` in all capital letters. Do not select from a list — type it manually.                             |
| App crashes on iOS after update         | App version incompatibility         | Update both iOS and the Bad Elf GPS app to the latest versions. Restart your phone.                           |

## Tips and tricks

* **Update firmware first.** Before heading to the field, check for firmware updates in the Bad Elf app. Newer firmware often improves RTK performance and connectivity stability.
* **Always pair at the OS level before opening the app.** This is the number one support issue with the Flex on both iOS and Android.
* **The Flex works with third-party apps too.** Apps like ArcGIS Field Maps, Collector, and other GIS tools can read the Flex's corrected position via Bluetooth GPS.
* **Use the app's NMEA log feature** to record raw NMEA sentences for quality assurance or post-processing review.
* **For best results, mount the Flex on a pole** at least 1 meter above ground to reduce multipath interference from the ground surface.
* **If you work in multiple regions**, create separate NTRIP profiles for each RTKdata server (EU, NA, AUS) and switch as needed.
* **Keep your phone within 5–10 meters** of the Flex to maintain a stable Bluetooth connection.
