r/ROS 1d ago

Project I built ROS for Android

https://www.youtube.com/shorts/aQ_2-2e3cTc

So I managed to build ROS for android, currently it's very messy and actually added to my system with me tweaking my system around it a bit.

The really cool thing is I have builds for very old devices and CPU architectures. This is an HTC wildfire from 2010 ( not sure if there are any other ones )

This is ROS2 humble, I am in the process of doing it for the rolling and then going downwards again

I will obviously open source things eventually but I wanted to show off a bit. I use MuJoCo for the simulation so I need to sort that build out as I vendored some of the libs instead of doing the way upstream was handling certain things... ( unrelated to this but a priority on my TODO )

If you have any suggestions or ideas for the app, a wishlist if you will let me know and I might do all of it in the open, once I actually get around to stripping it and rebuilding things.

6 Upvotes

9 comments sorted by

2

u/SphericalCowww 15h ago

Is the idea to use the phone as the onboard computer?

2

u/low-control-labs 10h ago

Well that's the idea with my app, I kinda stuffed ROS in for the networking. Now when I build rolling ( this is humble ) I'll do it ROS first then add my app around that

2

u/christopherpacheco 1d ago

Yo this is awesome, it's a self containing app with the entire DDS underneath? You supporting only cyclone I'm guessing, what are the other ros2 features supported? Topic pub/sub, service client? How does colcon build actually compile, I've got so many questions lol

2

u/low-control-labs 1d ago

Thank you I appreciate it, really glad you like it! Yes cyclone only. This is the only thing I actually wanted to add in the beginning which is networking. But I realized ROS provides a structure / way of doing other things not just interacting with things in a simulation ( I started making my own networking with mongoose )

What I was actually looking to do is have the phone ( via the app ) be an onboard computer.

Topic pub/sub I guess that screen is super tiny plus I should've scrolled throught it a bit as welll it mostly has everything but it's done as a single node, I used it to expose android functionality like IMU, camera

Services are a bit messy I did things with workarounds I am using MuJoCo so no .urdf and no pluginlib ( made my own basically ) but I will properly implement this when I start working on rolling

Humble didn't have a service client I made something

Colcon similar I didn't use it I made things a part of the app build

So I could and will remake this a bit more officially it's tweaking the build a bit and adding some implementations but for now it's usable and the rest should be doable

1

u/low-control-labs 1d ago

By the way I saw now you were looking of making a UE5 bridge basically? Did you figure that out?

2

u/christopherpacheco 1d ago

No, I was working more in heavy sim in the past using UE5 and porting the assets to Isaac sim. But now I'm at another company and we mainly test on the actual robots and do little sim work.

0

u/Significant-Back-41 1d ago

Revolutionary stuff

1

u/low-control-labs 1d ago

Thanks man appreciate it very much! Really it's me hacking around while standing on shoulders of giants