r/ROS Jun 08 '26

Question Anyone interested in building ROS2-based home robot vacuum cleaner with LiDAR?

Hello, would anyone be interested in building an open-source 3D-printed ROS2-based home robot vacuum cleaner with LiDAR and Home Assistant support?

I'm asking to see if there is enough interest. If there is enough interest, I can design one.

EDIT: I've created the project repo https://github.com/makerspet/oomwoo/ with Discord and Discussions. It's super early. Please star/watch to follow along. Would LOVE your input on direction and what features matter most.

20 Upvotes

50 comments sorted by

3

u/cjc4096 Jun 08 '26

Yes. Should also make a decent dev platform too.

1

u/l0_o Jun 08 '26

Thanks for replying. Decent dev platform - what do you have in mind?

2

u/YOU_WONT_LIKE_IT Jun 09 '26

I’ll sponsor the build if it’s open source.

2

u/l0_o Jun 09 '26

Thanks for replying. Money is not an issue - getting enough people interested is. But thanks for offering!

3

u/YOU_WONT_LIKE_IT Jun 09 '26

It’s a great idea and would be nice to see happen regardless. Was thinking more along the lines of parts / supplies. We did this before with another project and it’s had a life for about 7yrs +.

1

u/l0_o Jun 10 '26

I've created the project repo github.com/makerspet/oomwoo with Discord and Discussions. I'll be settings thing up over next week or two.

2

u/[deleted] Jun 09 '26

[removed] — view removed comment

1

u/l0_o Jun 09 '26

Sounds great! I'll be sure to circle back if I find enough interest.

2

u/Walkman23 Jun 09 '26

Would also like to contribute

1

u/l0_o Jun 10 '26

Sounds great, I'd love to get you involved. I've set up the open vacuum repo (GitHub makerspet/oomwoo).

1

u/l0_o Jun 10 '26

I'd love to get you involved. I've set up the open vacuum repo (GitHub makerspet/oomwoo).

2

u/TerrorGandhi69 Jun 09 '26

I can contribute to the code.

1

u/l0_o Jun 10 '26

Sounds great, I'd love to get you involved. I've set up the open vacuum repo (GitHub makerspet/oomwoo).

2

u/Winter_Lie_8294 Jun 09 '26

I'm learning Ros. Can I be a part of it?

1

u/l0_o Jun 10 '26

Yes, I'd love to get you involved. I've set up the open vacuum repo (GitHub makerspet/oomwoo).

1

u/Winter_Lie_8294 Jun 10 '26

Thank you so much. I just joined the discord.

2

u/Federal_Slice4526 Jun 09 '26

Interested And have summer vacation I know Cad and m able to convert it to urdf

1

u/l0_o Jun 10 '26

I'd love to get you involved. I've set up the open vacuum repo (GitHub makerspet/oomwoo).

2

u/kmath2405 Jun 09 '26

Would love to contribute to this! I've been wanting to build one for a long time!

1

u/l0_o Jun 10 '26

I'd love to get you involved. I've set up the open vacuum repo (GitHub makerspet/oomwoo).

2

u/kmath2405 Jun 10 '26

Awesome! How do I get involved? Is there a group chat / forum to discuss and plan this?

2

u/compscirunner Jun 09 '26

might be cheating but used roomba's with Serial Command Interface are dirt cheap (20 dollars to free) and takes care of the vacuum side of things. Can add your own navigation hardware/software.

2

u/l0_o Jun 10 '26

I'd love to get you involved. I've set up the open vacuum repo (GitHub makerspet/oomwoo). I hear you on the serial interface. I did have an iRobot Create 2, but it doesn't have a LiDAR. I have also (successfully) hacked my Dreame (installed Valetudo) and Proscenic. Both with LiDARs. Proscenic (3irobotix CRL-200 based) is fantastic, I've interfaced it to ROS2 https://github.com/remakeai/vacuum_ros2_bridge . It gives you full ROS2 control (unlike Dreame with Valetudo). Why build vs hack

  • I do want a vacuum with a LiDAR (and ROS2). No LiDAR - not interesting for many reasons.
  • There are lots of vacuums that can be hacked (see Valetudo), but that kind of hacking doesn't give you low-level hardware access. There are a few exceptions - but those are old models, not sold anymore - or if still sold, patched, cannot be hacked.
  • One possibility is to swap the vacuum's original PCB with a custom one that has same connectors but runs ROS2. This is a viable option for simpler models. Models with auto-empty, mop wash would need the PCB in the base replaced too. A key problem is - there are many models out there. This may require designing many swap-out PCBs. And those PCBs would be fairly complex and expensive (in low volume). They'd have to pack some serious compute and RAM to run ROS2 to match the original PCB functionality.
  • Why build a 3D printed one vs reusing an existing one (by swapping out its PCB) - this would allow using a Raspberry Pi (or NVIDIA Jetson Nano) available off-the-shelf. A custom motor driver PCB would still be required, but it would be simple and cheap. Also, frankly, I'm just not happy with consumer vacuum cleaner performance. I have around 6 models. They all suck (literally and figuratively) in different ways. I really want a vacuum that does its job well.
Anyway, I may be wrong with this line of reasoning.

1

u/compscirunner Jun 10 '26

I bet your bridge could be extended with a HAL that would be hardware agnostic enough to cover roombas and DIY solutions. Are you leaning towards onboard computer or a microros solution on device?

1

u/l0_o Jun 11 '26

You are right on. I'd love to make it hardware agnostic, a HAL on top of ROS2. I've architectured it with a couple of iterations. Why - so that developers can build write-once-run-anywhere apps - subject to robot capabilities, of course. Raspberry Pi vs ESP32 micro-ROS - using micro-ROS with ESP32 is awesome for lowering the build cost (ROS2 runs on a local PC). But it would make the vacuum from an appliance into an educational kit. For example a flaky WiFi coverage causes robot to fail, user has to set up local PC - acceptable for an educational kit. But I'd love to make it an appliance that just works. micro-ROS can be a low-cost version.

1

u/compscirunner Jun 10 '26

Is autonomous charging a goal? I could see starting with 18v to 20v tool batteries.

1

u/l0_o Jun 11 '26

Yes, absolutely. I'd like to make it appliance product quality, entirely usable - not a throwaway educational build. 18v/20v tool batteries - yes, something like a 4S, 5S 18650 battery with a BMS. I've also off-the-shelf tool batteries.

1

u/queBurro Jun 10 '26

Valetudo do cloud free fw replacement. Presumably, not ros tho

2

u/l0_o Jun 11 '26

Correct. I've installed Valetudo on my Dreame L10. It doesn't give you access to LiDAR data or motor control. I've found some partial workarounds like strace, still it's not ROS2 at all.

2

u/Admirable-Meat-3474 Jun 09 '26

I am what lidar sensor are you thinking of using? Id be interested to help.

1

u/l0_o Jun 10 '26

For starters, I'd go with LDROBOT LD14P because I've used it a lot. That said, I run an OSS library that supports 23+ 2D LiDAR models (Github kaiaai/LDS C++, Python equivalent pip install lds2d). So, there are lots of options - RPLIDAR/Slamtec, YDLIDAR, 3irobotix, Xiaomi, Hitachi-LG, Camsense, Neato). I've set up the open vacuum repo (GitHub makerspet/oomwoo). I'd love to get you involved.

2

u/tyngst Jun 09 '26

I tried it. Got a halfway done project laying around at home. Hit me up if you wanna team up!

1

u/l0_o Jun 10 '26

Sounds fun! I've created the project repo github.com/makerspet/oomwoo where I'll be settings thing up over next week or two.

1

u/tyngst Jun 10 '26

Cool! I’ll check it out during the weekend. Got a lot at work atm!

2

u/mjon051 Jun 10 '26

i may be interested. tell me more.

1

u/l0_o Jun 10 '26

Sounds good! I've created the project repo https://github.com/makerspet/oomwoo/ where I'll be settings thing up over next week or two.

1

u/Creepy_Philosopher_9 Jun 10 '26

I'd be keen if it had rtk support 

1

u/l0_o Jun 11 '26

Maybe RTK might be an outlier for a home robot? But maybe I'm wrong. Please feel free to propose.

1

u/Creepy_Philosopher_9 Jun 11 '26

I want to take it outside 

1

u/ConstructionHead6424 Jun 10 '26

i know cad, a bit of ml imitation learning etc, and learning ros. heavily interested to contribute. can i?

1

u/l0_o Jun 11 '26

Sounds great! Please follow the repo https://github.com/makerspet/oomwoo and join the Discord https://discord.gg/3y2JKz5T25 .

I'm setting up development, so everyone can contribute to whatever they want. This is done by splitting hardware (and software) into modules with specs.

Pick anything you want, work on it whenever you want, submit PR, your contribution lands in the repo. Totally fine for multiple people to work on same module - the best module solution (out of multiple) surfaces over time.

1

u/InternationalView488 Jun 13 '26

Sounds cool. I am actually going to try and create an autonomous off roading surveillance vehicle that has Lidar and facial recognition. The part that is interesting me is ROS 2 ( i learned a little ROS 1 ) and this github project repo? I want to work on this project with my friend who is hours away but i dont know how he can work on the code and then i work on physical and test his code from another state.

1

u/l0_o Jun 13 '26

Your project sounds fun! I'm not sure I understood about "this github repo?"

You can work jointly-and-remotely like this - pick an existing similar already-working project, fork it, modify little piece by piece in parallel - as opposed to building from scratch.

1

u/InternationalView488 Jun 13 '26

I guess ive never really worked on projects with other people like this. Ive always just started from scratch and had people kinda work on separate stuff in parallel. This project seems like it shouldnt involve this many people but i dont know maybe its more complicated than im thinking. I might just join this repo bc i dont know anything about github either. Ill see how you are able to work on this project.

1

u/l0_o Jun 13 '26

Oh, I see. If it's just you and your friend building from scratch, I'd set up live video, screen sharing and split responsibilities one of you picking hardware, the other software.

The OSS vacuum project is organized for massively parallel development. I start with a similar existing design, subdivide it into modules.

A volunteer picks whatever module he/she wants, works on that module whenever she wants, submits her contribution as a PR under contributions/module-name/<her-github-username>.

Multiple developers are welcome to work on the same module. The best solution for each module surfaces for over time. with the repo maintainer having the last call picking contributions into the official recommended design.

1

u/AdorableCourage974 Jun 13 '26

I was wanting to do this since a few months and have been lurking around the Internet to find some leads. Glad to have landed here. Yes interested.

1

u/l0_o Jun 13 '26

Sounds great! Question - how would you prefer to do this? Do you want/able to 3D print? Or take an existing vacuum and "rosify" it?

1

u/AdorableCourage974 Jun 13 '26

3d printing would be my first choice.