Progress:
Ok. This project will take a while... A lot of stuff coming together on this one.
I found out that the Roomba I've had for some years has a serial port and an open interface.
It's basically a iRobot Create 2, but this one can also clean my floor:
https://edu.irobot.com/what-we-offer/create-robot
The Roomba is a 632 (600 series) without any scheduling or mapping capabilities... for now.
The interface allows me to not only send basic commands, but also to get full sensor readings. On everything from motors, bump and cliff sensors etc.
As always, the plan is pretty simple. Add microcontroller, some soldering, some typing, done!
For starters, I want to be able to let Home Assistant send a CLEAN command via MQTT on a schedule. [DONE]
In the long run I want to add a IMU (MPU6050) and integrate this with the sensordata (odometry) from the Roomba to get mapping data. Tracks like you get with a handheld GPS. [DONE]
Then maybe do some loop-closing geodesy magic and take full control of the driving and cleaning.
I'm not using anything proprietary though. Just the OPEN API which iRobot has mostly/fully documented and encourages tinkering. One of the reasons why I went for an iRobot device in the first place.
It's a shame you can't document and share your progress any further. I'm sure never to buy anything from Shark in your support :)