Saturday, July 4, 2026

Exploring the OpenNeato Dashboard — Part X4: First Boot, Manual Drive, and Live LIDAR Map

New here? This is Part X4 of the OpenNeato series. Parts X1–X3 covered why Neato robots lost their smart features, how to flash the ESP32 firmware, and how to wire the ESP32 into the D3’s debug port. This part is the payoff: exploring what the dashboard actually does.


What Just Happened

When the D3 powered on with the ESP32 wired in and the dashboard loaded at http://neato.local, the screen showed:

  • Status: Active
  • Battery: 99%
  • Mode: Docked


That’s the D3’s real internal state, read live from the robot’s serial interface and served to any browser on the local network. No Neato account. No internet connection. No Vorwerk servers. Just a robot talking to a $5 board talking to a webpage.

The top bar shows WiFi signal strength, current time, storage usage, and firmware version (0.14 at time of writing — still early beta, as noted throughout this series).


The Three Main Modes

The bottom navigation has three options: House, Spot, and Manual.

House — sends the robot on a full cleaning run, exactly as the original Neato app did. The robot navigates the entire accessible floor area using its onboard LIDAR, returning to the dock when done or when battery runs low.

Spot — starts a focused cleaning cycle in the immediate area around the robot, spiraling outward from the current position. Useful for quick cleanups without a full room scan.

Manual — opens a live control view with a virtual joystick and a real-time map rendered directly from the robot’s LIDAR sensor. This is the most interesting mode to explore first.


Manual Mode: Driving the Robot from a Phone

Tap Manual and the view changes to show a steering interface — a virtual joystick or directional controls, depending on screen size — alongside a live overhead map that updates as the robot moves.



The map is generated entirely from the D3’s onboard LIDAR sensor, which sweeps 360° continuously. As the robot turns and moves, the map fills in — walls appear as solid lines, open space stays empty. This is the same LIDAR data the original Neato firmware used to plan cleaning routes, now piped directly to the browser via the ESP32.

It’s worth spending a few minutes driving the robot around manually just to watch the map build in real time. The LIDAR range and accuracy on the D3 is genuinely impressive for hardware of its age.


The Dashboard Settings

The gear icon in the top right opens Settings, which has more options than expected for a v0.14 project:

Appearance — Light, Dark, or Auto theme. Sensible default.

Device — This is where the important configuration lives:

  • mDNS hostname — the name used to reach the dashboard (default: neato, giving http://neato.local)
  • WiFi power — defaults to 15 dBm, which reduces range slightly but improves stability when the ESP32 is powered from the robot’s 3.3V line rather than USB
  • TX / RX GPIO pins — the serial pin assignments. Default is TX=4, RX=3. If the dashboard showed “Connecting to robot…” after initial wiring, swapping these two values here (no re-wiring needed) is the fix.


Cleaning Schedule — a 7-day scheduler to set automatic cleaning times. Works the same as the original Neato app’s scheduling feature.

Auto restart — restarts the robot automatically once per day if it’s been idle. Useful for keeping the firmware fresh if any memory issues develop over long uptimes.

Notifications — integrates with ntfy.sh, a free open-source notification service. Enter a topic name, and the ESP32 will push alerts to your phone when cleaning starts, finishes, or encounters an error. Works without any cloud account — ntfy.sh can also be self-hosted if preferred.


What’s Working, What Isn’t (Beta Honesty)

As of firmware v0.14, the following work reliably:

✅ Dashboard with live status, battery, and mode
✅ House clean, Spot clean, Pause, Resume
✅ Auto-dock (Send to Base)
✅ Manual drive with live LIDAR map
✅ Cleaning schedule
✅ Push notifications via ntfy.sh

Still in development or not yet available:

🚧 Zone cleaning (clean specific rooms only)
🚧 No-go lines (virtual walls)
🚧 Cleaning history with full floor maps

The core features that made the D3 useful day-to-day are all back. The more advanced zone-based features are what the original Neato app added on top — and those are still being worked on by the project.


Next up: Part X5 — Running a full cleaning cycle, auto-dock, scheduling, and updating the firmware.