Files
argo/SUB Control
PitresAli 8ccd7689f7 Build Argo V2 control mappings and telemetry dashboard
Add configurable Xbox motion and action bindings, frame-aware six-axis MAVLink controls, sensor logging, camera viewing and recording, and a faster startup path. Synchronize both app copies and document companion hardware setup and verification limits.
2026-10-22 20:22:05 +02:00
..
2026-08-28 17:40:43 +02:00
2026-08-28 17:40:43 +02:00
2026-08-28 17:40:43 +02:00
2026-08-28 17:40:43 +02:00
2026-08-26 11:44:14 +02:00
V2
2026-08-27 18:24:22 +02:00

Argo V2 · SUB Control

A Windows control station for ArduSub ROVs over serial or network MAVLink.

V2 adds programmable Xbox inputs, six-axis motion, a camera dashboard, sensor readings and data logging. See the V2 guide for controls, supported frames, Raspberry Pi/fibre architecture, camera setup and hardware verification limits.

SUB Control V2 interface in Demo mode

Quick start

Install Python 3.11+ with the Python launcher, then run:

./run.ps1

The script creates a virtual environment and installs dependencies automatically. On first launch, it also adds a SUB Control desktop shortcut. Select a COM port and Connect, or choose Demo Mode to try it without hardware. Connection settings are under •••. Click Data link for an extended connection test, or Console to open the right-side RX/TX panel. Filter routine traffic, pause the view, or expand a message for full details.

UI design rule

Keep UI changes minimal and consistent with the existing app. Do not add explanatory text. Use labels of at most two words, prefer flat rows over nested containers, and keep controls from overlapping.

Controls

  • Joystick: forward/back and turning. Vertical slider: rise/dive.
  • Keyboard: W/S forward/back, A/D or Q/E turn, R/F rise/dive.
  • Physical controller: choose Joystick, then Mapping while disarmed. The trigger preset uses RT/LT for forward/back, B/A for rise/dive, and left stick X for turning. Six axes adds strafe, pitch and roll for compatible frames/firmware.
  • Hold engage for 0.6 seconds to request arming; tap disengage to request disarming. The app waits for vehicle confirmation.
  • Movement controls ease back to neutral when released.
  • In Joystick mode the graphics show the conditioned control demand and are read-only. Center sticks after switching modes, reconnecting, or returning focus. Controller buttons do not arm the vehicle.

Includes a 0–100% input limit, motor setup, live battery current/consumption when available, an STL viewer, WebRTC/HTTP camera viewing and WebM recording. Sensor CSV and session logs are in logs/; desktop videos are in runtime/recordings/.

Safety

Verify motor direction, ESC settings, and vehicle failsafes before use. Remove propellers for initial bench tests and keep a physical power cutoff available. A lost connection cannot guarantee the motors stop.