Skip to content

About

Mac app to start, pause, and dock a Roomba 694 on the local network.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Roomba 694 Wi‑Fi Controller

macOS Python GUI to control a Roomba 694 over local Wi‑Fi (same home network).

Important: Wi‑Fi on this model cannot do joystick / WASD driving. The app sends the commands the robot supports locally: start, stop, pause, resume, dock.

Setup

cd /Users/mikey/Documents/PERSONAL/ROOMBA
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python app.py

First-time credentials

  1. Put the Roomba on its Home Base (dock).
  2. Run the app → Discover (or type the robot’s IP from your router).
  3. Get password:
    • Hold HOME on the robot until you hear tones
    • Release — Wi‑Fi LED should flash
    • Click Get password within about one minute
  4. Connect

IP, BLID, and password are saved in config.json (gitignored).

Controls

Key / button Smart action
W / Clean Start, or resume if paused
S / Stop Stop (no-op if already stopped)
R Resume (only when paused)
Space / Go home Pause/stop first, then dock (more reliable)
P / Pause Pause while cleaning
Esc Quit

The app auto-reconnects if Wi‑Fi drops, times out hung discover/connect, and ignores spammy key repeats.

Automations

Keep the app open and connected. Settings save to config.json.

Option Behavior
Clean every day at HH:MM Starts/resumes cleaning at that local time
Start clean when battery reaches N% While docked/charging, starts once charge hits the threshold (default 50%)
Go home when battery falls to N% While cleaning, docks at the low threshold (default 15%)

Each rule fires once until it resets (new day / battery hysteresis).

Mission view / mapping

Roomba 694 does not publish pose or maps over Wi‑Fi (confirmed: no pose field, capabilities are only OTA/eco). A room coverage heatmap is not possible on this model.

The right panel therefore shows:

  • Mission activity — battery timeline + phase strip + lifetime stats while connected
  • If you later use a pose-capable robot (900/i/j), the same panel switches to a live path + coverage heatmap automatically.

Requirements

  • Roomba and Mac on the same Wi‑Fi / LAN
  • Firmware 2.x local MQTT API (typical for Wi‑Fi 600-series)
  • Only one local app connection at a time — the official iRobot app may fall back to cloud while this is connected

About

Mac app to start, pause, and dock a Roomba 694 on the local network.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages