I’ve spent over a hundred hours connecting robots with LTE - Ask Me Anything

Hi,
I’m trying to remotely control a bot using ROS and ESP32.

The bot will have ESP32 camera onboard and will transmit the video stream via Wi-Fi.
Is it possible to receive this video stream via ROS, which will be running on my laptop?

Thanks in advance.

Hi @Ajaykumaar_S! Ever heard of micro-ROS? In a nutshell, it is a library allowing you to bring a ROS 2 node into microcontrollers. Specifically, we already have a port to the ESP32 that supports WiFi. Moreover, as micro-ROS comes natively interoperable with the ROS 2 ecosystem, you can leverage any of the different ready-to-use solutions that allow bridging ROS 2 with ROS in order to put your micro-ROS node into communication with your ROS operated bot. To this end, see e.g. how to do so with SOSS, for which a detailed tutorial can be found here. If wanting to know more, don’t hesitate to contact us!

1 Like

Hi @FraFin
Great suggestion! I’ll check it out.
Thank you :smiley:

1 Like

I’ve been looking at micro-ros for the past few days, and frankly its driving me crazy. :-). I’m trying to interface with a 6-axis arm run that was run through an arduino. I’m upgrading some old projects to ROS2 and I stumbled upon micro-ros. Found I’ll have to upgrade my uC, fine I’ve got some ESP32 sitting around. Learn all about DDS, Learn the new build systems for ROS2 / MicroROS… Find out there’s like ZIP out there for off-the-shelf stepper motion control in ESP32/FreeRTOS ecosystem.

Honestly, Its looking like i’ll probably select another approach like MQTT to a vanilla ESP32 sketch.

Hi @billieblaze,

It seems an interesting case. I am the coordinator of the Micro-ROS project together with @FraFin.

Please contact us, and we can have a chat about your case.

Hey Jaime,
Thanks for reaching out! This is basically what I’m trying to convert at the moment: https://github.com/jesseweisberg/moveo_ros/blob/master/moveo_moveit/moveo_moveit_arduino/moveo_moveit_arduino.ino

I’d love to hear any thoughts you have on this. There’s really not a lot to it, just take moveit messages and update steppers.

Hi @billieblaze, and welcome to the community! The problem with MQTT is that, in order to integrate your project with the ROS 2 environment, you’d have to generate a dedicated bridge from scratch. Interoperability with ROS 2 is a feature with which micro-ROS comes natively instead, with no effort on the user’s side. As a matter of fact, we believe that migrating your example application to our user’s API should be super-easy. You can take a look to our micro-ROS component for the ESP-IDF to grasp an idea on how to use it.
Good luck and come back to us if you need further guidance!

Thank you, @FraFin! I will definitely check that out, just sitting down to play with it for the weekend. I’ve spent the last week getting my idea to work if only to understand the ESP32 + libraries and the stepper motor configuration.

It is working, but I see what you’re saying, I’ll still have to run a run a node to translate somewhere. I’ve got a small kubernetes homelab that i’m planning to run some of the compute on and it could easily be a pod there but it would certainly be much better to subscribe to the raw topics!

Hello, me and my team are trying to control a ROVER from long distances using ROS.
However we have been with some issues about the radio transmitter/receiver because we don´t know witch one to use.
The idea is to control the robot and receive is camera video so we can see what is is looking at, there are 3 cameras that we want to see simultaneously.

Hope someone can help!
Thanks

Offhand, you might be able to get away with CBRS and avoid expensive connectivity bills. I haven’t been able to get good rate plans from the carriers for my image acquisition devices, they typically want up to $10 a GB, when I need it to be pennies to be feasible for my use case. If you have good line of sight you might be able to get long distances with fixed wireless.

Is there an example of microROS TDOA example that I can use , using ESP32. Thank you.

Hi @FraFin , I am trying to Flash the ESP32 with Camera with microROS, where can I find a ESP32 Camera example that I can use, the one like int32_publisher program.
Thank you.

1 Like

for control the stepper motor with esp32 you can use new robolaunch Cloudy robot because that use 2 stepper motors for drive robot,

Hi Alex,

Happy to find this thread.

Can I ask whether you could do precise time sync over 4G/5G LTE ?
We currently use GNSS as time source for precision time sync. I am reading IEEE conference papers that people now could get precision time sync through 5G network with some modification of their network card fw.

Please share your thoughts.

Thanks,
Tony

@Tony_Jia this thread has been inactive for over a year. You may want to reach out to the author directly.