01 · Controls

Buttons

The DiscoX has four buttons across the top of the device — all operable with gloved hands.

1
Measure
menu: up
2
Measure
menu: down
3
Menu
menu: select
4
Power
on/off

In normal mode

  • Button 1 — take a measurement, or wake the laser if it's timed out.
  • Button 2 — short press: take a measurement. Hold 2s: toggle Disco mode.
  • Button 3 — open the settings menu.
  • Button 4 — power on/off.

In menu mode, Buttons 1/2/3 become scroll-up, scroll-down, and select. Button 4 still powers the device off.

02 · Field operation

Taking readings

Press Button 1 or Button 2 (short press) to take a reading. The device waits until the sensors have settled before accepting a shot — hold the device still during readings.

LED states

Red Stabilising — hold the device steady.
Green Stable — shot recorded and sent.
Purple Leg detected — three beeps confirm.

After a shot the display freezes on the recorded reading and the laser turns off. Press any measure button to re-enable the laser, then press again to take the next reading.

Leg detection

When three consecutive shots agree in bearing, clino, and distance (within configurable tolerances), the DiscoX recognises a complete survey leg. The LED pulses purple, the laser flashes briefly, and the buzzer beeps three times. The display stays frozen on the leg data until you press a measure button to continue.

Laser wake

If the laser has auto-timed-out, pressing any measure button re-enables it with a short beep before taking the shot.

03 · On-screen

Display

The 128×128 pixel OLED shows three values from your most recent stable shot:

  • Distance (top) — in metres, to two decimal places.
  • Azimuth (middle) — compass bearing, in degrees.
  • Inclination (bottom) — clino angle, in degrees.

The top-left shows BT when Bluetooth is connected, with a count of pending (unsent) readings beside it. The top-right shows a proportional battery bar — no guessing when you're underground.

04 · For the survey party

Disco mode

Hold Button 2 for 2 seconds to toggle disco/rave mode. The laser shuts off and the NeoPixel cycles through colours. Shake the device to kick into wild mode — faster cycling, full brightness.

Hold Button 2 again for 2 seconds to exit. The laser restarts and the device returns to normal operation.

05 · Connectivity

Bluetooth & memory

The DiscoX works with current versions of SexyTopo and TopoDroid via a long-range C++ implementation of the SAP6 BLE protocol. The device advertises continuously, so nearby phones and tablets will discover it automatically.

Once connected, the device flashes blue, a BT label appears in the top-left of the screen, and live readings are pushed directly to your survey app.

Note · BLE naming

Each DiscoX ships with a unique Bluetooth name in the format SAP6_[Nickname] — for example SAP6_Dragon. Change it via the settings file (see below), or request a specific name before assembly.

06 · Configuration

Settings

All common settings are accessible from the onboard menu — press Button 3 to open it.

Onboard menu

  • Enter Calibration — run Long or Short calibration, perform a Mag Field Check, or view last results.
  • Anomaly Detection — toggle warnings for nearby metallic objects (helmet lights, SRT kit, bolts).
  • Laser Timeout — 30s · 60s · 2m · 5m · 15m · 30m.
  • Auto Shutdown — 5 · 10 · 15 · 30 · 60 min · 2h.
  • Delete Saved Shots — wipe any pending readings stored in flash.
  • Update / Settings — firmware update and advanced config.
  • Play Snake — hidden bonus for when you're waiting at the surface.

Advanced: config.json

Go to Menu → Update / Settings → Edit Settings File. The DiscoX reboots into USB drive mode and appears as a drive called DISCOX. Open config.json, edit values, save, eject, then hold the power button to restart. Any setting you omit uses its default.

Measurement & stability

stability_tolerancedefault 0.4Degrees the sensors must converge within before a shot is accepted. Lower = stricter.
stability_buffer_lengthdefault 3Consecutive stable samples required before accepting a reading.
ema_alphadefault 0.3Exponential moving average smoothing. Lower = smoother but slower-reacting.
laser_distance_offsetdefault 0.162Device length in metres, subtracted from raw laser distance so readings are station-to-station.

Leg detection

leg_angle_tolerancedefault 1.7Max difference in degrees between three consecutive shots' bearing/clino to count as the same leg.
leg_distance_tolerancedefault 0.05Max difference in metres between three distance readings for leg detection.
laser_wibbledefault trueBlink the laser on/off in quick succession when a leg is detected.

Anomaly detection

anomaly_detectiondefault falseEnable warnings when nearby metallic objects may be distorting the magnetic field.
mag_tolerancedefault 10.0Magnetometer field-strength tolerance in degrees from expected local field.
grav_tolerancedefault 10.0Accelerometer magnitude tolerance in degrees.
dip_tolerancedefault 10.0Magnetic dip-angle tolerance in degrees.

Calibration

cal_mag_consistencydefault 0.5Angular consistency window in degrees for the magnetometer during calibration.
cal_grav_consistencydefault 0.4Angular consistency window in degrees for the accelerometer during calibration.
cal_buffer_lengthdefault 5Samples in the calibration consistency window.
cal_settle_msdefault 250Milliseconds the device must remain stable before a cal point is accepted.
cal_ema_alphadefault 0.3EMA smoothing used during calibration.
cal_timeout_msdefault 3000Max ms to wait for stability before a cal point is force-accepted.

Timers & display

auto_shutdown_timeoutdefault 1800Seconds of inactivity before automatic power-off (1800 = 30 min).
laser_timeoutdefault 120Seconds of inactivity before the laser turns off to save power.
screen_brightnessdefault 255OLED contrast level, 0–255.

Bluetooth

ble_namedefault "SAP6_Unicorn"Bluetooth device name advertised to survey apps. Max 20 characters.

Firmware update

Go to Menu → Update / Settings → Update Firmware. The device enters the UF2 bootloader and appears as a removable drive. Drag and drop the new .uf2 file onto it — the DiscoX reboots when flashing is complete.

07 · Keeping readings honest

Calibration

Calibrate whenever you survey in a new area or if readings seem off. Run a Mag Field Check before each trip to quickly verify accuracy at your survey site.

To start: press Button 3Enter Calibration → choose a type.

80 readings

Long calibration

The most accurate option. Runs in two phases automatically.

Phase 1 — Ellipsoid (56): aim in a wide variety of directions. Spread points evenly across the sphere — like touching every zone of a globe's surface. A coverage bar shows progress.

Phase 2 — Alignment (24): 3 sets of 8 readings. Each set aims at one fixed point; barrel-roll ~45° between shots. Pick 3 fixed points roughly 90° apart. Three beeps = next direction.

B1 record · B3 undo
B1+B2 save · B2 hold discard
24 readings

Short calibration

Faster option for quick field recalibration.

Take 3 sets of 8 readings. For each set, barrel-roll the laser around a single fixed point, rotating ~45° between shots. The 3 points should be roughly 90° apart — e.g. ahead, right, vertically up.

The same 24 readings fit both ellipsoid and alignment, so this is quicker but less thorough than the long version.

B1 record · B3 undo
B1+B2 save · B2 hold discard
Field check

Mag field check

Verifies calibration accuracy without re-running a full cal.

Shoot a fixed target, walk to it, shoot back. Repeat for 3+ pairs in different directions. The device records each pair's bearing error and calculates an overall correction amplitude.

A consistently high amplitude means it's time for a full long calibration.

B1 take shot
B2 finish (after 2+ pairs)

Quality metrics

After calibration the screen shows three quality scores. Lower is better in all cases. View them any time via Menu → Enter Calibration → View Last Cal.

  • Mag — magnetometer ellipsoid fit uniformity.
  • Grav — accelerometer ellipsoid fit uniformity.
  • Acc — final accuracy in degrees (the most important number).
EXCELLENT < 0.25°
ACCEPTABLE < 0.5°
Tip

For best results, calibrate in the same magnetic environment as your survey — i.e. away from bolts, helmet lights, and SRT kit. Anomaly detection will warn you if your calibration is being contaminated.