WiFi AP Mode
The ground station creates a WiFi hotspot on boot. Join it from your laptop or phone, open a browser, and you have video and telemetry. No software to install, no radio drivers, no internet required.How it works
The onboard WiFi radio hosts the access point on 2.4 GHz. The dedicated video-link radio stays on the drone-facing receive job. These two radios do not interfere with each other.Connecting from a laptop
1
Join the WiFi network
Look for
ADOS-GS-XXXX in your WiFi list. The XXXX suffix is derived from the ground station’s device ID. The passphrase is generated for that unit on first boot. See The AP passphrase below for where to read it.2
Open the browser
Navigate to
http://192.168.4.1:4000 for Mission Control, or http://setup.ados.local/ for the setup webapp. If Mission Control is not installed on the ground node, the setup webapp is the default landing page.3
Start flying
Video and telemetry appear automatically. If a gamepad is connected to your laptop, Mission Control picks it up via the Web Gamepad API. Press any button on the gamepad to register it.
Connecting from a phone
The flow is the same. Join the WiFi, open a browser (Chrome on Android, Safari on iOS), and navigate tohttp://192.168.4.1:4000 or http://setup.ados.local/.
For Android users, the ADOS Android app provides a better experience with auto-discovery and native video decoding. See Android Client for details.
Android may show a “No internet” warning when you join the AP. This is expected. The ground station is a local network, not an internet gateway. Tap “Use without internet” or “Stay connected” to proceed.
Network details
Endpoints available over WiFi
Once connected to the AP, your browser can reach:Multiple clients
Up to 3-4 devices can stream video simultaneously over the 2.4 GHz AP before throughput starts to degrade. Each client gets its own WebRTC session from MediaMTX. Telemetry over WebSocket is lightweight and supports many more clients. Only one client at a time has pilot-in-command authority (the ability to send stick inputs to the drone). The first client with an active gamepad claims PIC. Other clients can request it through Mission Control.The AP passphrase
The access point is WPA2-PSK. There is no open mode and no passphrase printed in advance, because the agent generates one for that unit on first boot. Two units flashed from the same image get different passphrases. The generated value is 12 characters drawn fromABCDEFGHJKMNPQRSTUVWXYZ23456789. The alphabet leaves out 0, O, 1, I, and L so that a passphrase read off a small display and typed into a phone does not fail on a character you cannot tell apart. It is stored at /etc/ados/ap-passphrase, readable only by root.
Where to read it
The command is the one to reach for when something else has to consume the value. It resolves the file through the agent’s platform paths rather than hardcoding the Linux location, and it only reads: on a unit whose access point has never started it reports that there is no passphrase instead of generating one hostapd never loaded. The file is mode 0600, so run it as root.
The passphrase is deliberately not returned by the REST API and is not shown in the browser dashboard. Those surfaces answer anything that can already reach the ground station, which is the population the access point exists to admit on purpose.
If a passphrase is set in config
network.hotspot.password takes precedence over the generated value. That is there so a fleet can deliberately run one shared credential, but it means every unit built from a config that carries the same value shares one passphrase. Check that key before you roll an image out to more than one box.
To change the passphrase, use the ground-station network settings or PUT /api/v1/ground-station/network/ap. No ados command writes it; ados network ap-passphrase only reads.
A factory reset deletes
/etc/ados/ap-passphrase and clears a configured passphrase, so the unit generates a fresh one on the next boot. Anyone who wrote down the old one loses access, which is the point.WiFi AP configuration
You can change the AP settings from three places:- OLED menu: Navigate to Network > WiFi AP
- Setup webapp: Open the Network page
- Mission Control: Open the ground-station panel > Network tab
- SSID name
- Passphrase
- Band (2.4 GHz only on Pi 4B, 2.4 or 5 GHz on boards with dual-band onboard radio)
- Channel auto-selection or manual pick
- Enable / disable toggle
5 GHz AP on some boards
On production boards with dual-band onboard WiFi (separate from the RTL8812EU), you can run the AP on 5 GHz for higher throughput. This requires the WFB-ng radio to use a different 5 GHz channel. The agent handles channel deconfliction automatically. The Pi 4B onboard WiFi supports 5 GHz but the driver is less reliable in AP mode at 5 GHz. Stick to 2.4 GHz on the Pi 4B.HTTPS and mixed content
If you load Mission Control fromhttps://command.altnautica.com (the hosted version), your browser blocks HTTP connections to the local ground station. This is a browser security policy, not an ADOS limitation.
Two workarounds:
- Use the local build. Open
http://192.168.4.1:4000instead. All traffic stays HTTP on the local network. - Run Mission Control on your laptop. Clone the repo, run
npm run dev, and openhttp://localhost:4000. Dev mode uses HTTP.
Power
WiFi AP mode is usually powered from a wall adapter on the bench or a USB-C power bank in the field. Avoid relying on laptop back-power when multiple WiFi clients are streaming video. Power and Runtime has field runtime estimates.What is next
- USB Tether for a wired alternative
- Power and Runtime for field power sizing
- HDMI Kiosk to fly with no laptop at all
- Setup and Pairing for the first-time walkthrough