Original Roomba Rover
The original roomba rover was the very first roomba rover available on https://rover.otter.land. This roomba had the entire server stack, with the exception of a reverse proxy, physically located on the roomba itself. This system was optimized for only one roomba to be controlled over the network. Later, a new system, dubbed the Multi Roomba Rover system, would be devised to allow for multiple roombas without needing to run a full separate server and website for each individual roomba rover, and reducing component cost per rover.
Construction
The Original Roomba Rover was based on a 600 series Roomba platform. It used a Raspberry Pi 3 for hosting the website, processing video, audio, and control I/O. An Arduino was used for communication between the Raspberry Pi and the Roomba, through the roomba's debug port. The camera was a PS3 Eye camera, and the device had an entire small screen display mounted on top.
Design caveats
This whole design did have some drawbacks which were later addressed with the introduction of the Multi-Roomba-Rover system.
wi-fi issues
The pi 3's built in wi-fi wasn't very good, so it would cut out randomly, primarily due to interference (like driving too close to the furnace), causing the entire site to be inaccessible briefly, and users would see the reverse proxy site-down message. This issue was addressed in later roombas with better USB wifi adapters and a separate server for the client-facing website, allowing for smoother handling of network interruptions.
