Modify a dumb pool robot to make it smart

Hi all,

For some weeks I was looking for ways to make my Roomba smarter, and found some ways to modify a robot lawn mower to make it smarter (with gps navigation for example).

These modifications have been widely documented but are fairly complex to implement because of the variety of the obstacles the device could came across in gardens or living rooms, and the complexity of the device itself.

I don’t think it has been studied for dumb but expensive pool robots such as old maytronics dolphins, although the modification seems easier, due to the simplicity of the mechanics (3 motors : one for each side wheel, and one for the pump) and the associated electronics.

I already read on Arduino community boards that some guys replaced the electronic card with an Arduino with a temporisation between the motors to make it go forward then turn every x seconds only by switching on and off the wheels motors :

Modern robots can be asked to operate different cleaning patterns on the bottom of the pool, before being sunk in the water, with a smartphone app, then the connexion with the smartphone is cut as wifi or bluetooth cannot go through water. It seems to me that it is quite simple to doing so with a home assistant addon/card giving orders via wifi to an esp32 (with esphome) before being sunk, with this esp activating the motors with the pre-recorded pattern.

Robots that are oriented with a smartphone app while sunk are linked to the smartphone by the charriot, but it seems complex to implement on a dumb robot.

Another thing that seems reachable is to add a radar or accelerometers to the Arduino so that the robot can setup an elementary cartography of the pool, or positioning itself in the pool in accordance with a map drawn on the home assistant addon (pools geometry is often really simple). This way it can avoid walls before hitting them and optimize cleaning time. I saw a guy on the Arduino community board using this device for an autonomous boat in his swimming pool :

These are some random ideas, the cost of this modification seems low, but I am perfectly unable to go further alone in this project since my esp knowledge is near zero.

Is someone willing to explore this way ?