Hello,
I am trying to establish communication between a Jetson AGX Orin and an ESP32 using micro-ROS. Here’s the setup and the issue I’m facing:
Setup
Jetson AGX Orin: Running inside a container with ROS 2 Humble and micro-ROS built from source. I start the micro-ROS agent with the following command:
ros2 run micro_ros_agent micro_ros_agent serial --dev /dev/ttyCH341USB0
Logs from the agent:
[1740930411.679304] info | TermiosAgentLinux.cpp | init | running... | fd: 3
[1740930411.680026] info | Root.cpp | set_verbose_level | logger setup | verbose_level: 4
[1740930425.682396] info | Root.cpp | create_client | create | client_key: 0x7D248957, session_id: 0x81
[1740930425.682552] info | SessionManager.hpp | establish_session | session established | client_key: 0x7D248957, address: 0
ESP32: Running the micro-ros_publisher sample code from the micro_ros_arduino library as the firmware.
The agent initializes, creates a client, and establishes a session, but it doesn’t proceed beyond this point. No communication occurs with the ESP32.
I’ve tested the same ESP32 setup with a laptop running ROS 2 Humble and micro-ROS, and communication works perfectly fine there.
The Jetson AGX Orin is connected to the ESP32 via a USB-to-serial adapter (/dev/ttyCH341USB0).
Problem
Inside the Jetson container, after the “session established” log, there’s no further progress—no topics are published, and the ESP32 doesn’t seem to communicate with the agent. I suspect there might be an issue with the container setup, serial port configuration, or something specific to Jetson AGX Orin.
Request
If anyone has experience with micro-ROS on Jetson AGX Orin or has encountered a similar issue, I’d greatly appreciate any advice or suggestions.
Thank you in advance for your help!