Closed CannonFodder511 closed 8 months ago
As far as I see
/ros_ws: MicroXRCEAgent serial --dev /dev/ttyUSB0 -b 115200 -v6 [1709157626.383849] info | TermiosAgentLinux.cpp | init | running... | fd: 3 [1709157626.385726] info | Root.cpp | set_verbose_level | logger setup | verbose_level: 6
Is a successful Micro XRCE-DDS Agent instance that is not stuck, so your Agent is built correctly and running correctly, if your client is not connecting to it maybe you need to check the behavior of your Micro XRCE-DDS Client.
Closing as not an issue.
Issue template
Steps to reproduce the issue
The image is built from the following Dockerfile `FROM ubuntu:22.04 SHELL ["/bin/bash", "-c"] ENV DEBIAN_FRONTEND=noninteractive
install ROS2
RUN apt update && apt install locales -y RUN locale-gen en_US en_US.UTF-8 RUN update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 RUN apt install software-properties-common -y RUN add-apt-repository universe RUN apt update && apt install curl gnupg2 lsb-release -y RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg RUN echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(source /etc/os-release && echo $UBUNTU_CODENAME) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null RUN apt update && apt upgrade -y && DEBIAN_FRONTEND=noninteractive apt install ros-humble-desktop -y && DEBIAN_FRONTEND=noninteractive apt install ros-dev-tools -y
RUN apt-get update && apt-get install -y --no-install-recommends git python3-pip RUN pip3 install empy pyros-genmsg setuptools
install MicroDDS Agent
WORKDIR / RUN git clone https://github.com/eProsima/Micro-XRCE-DDS-Agent.git WORKDIR /Micro-XRCE-DDS-Agent RUN mkdir build WORKDIR /Micro-XRCE-DDS-Agent/build RUN cmake .. RUN make RUN make install RUN ldconfig /usr/local/lib/ RUN apt update && apt upgrade
install PX4 dependancies
WORKDIR / RUN mkdir -p /ros_ws/src WORKDIR /ros_ws/src RUN git clone https://github.com/PX4/px4_ros_com.git --recursive RUN git clone https://github.com/PX4/px4_msgs.git --recursive RUN pip3 install kconfiglib
build dependencies
WORKDIR /ros_ws RUN echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc RUN source /opt/ros/humble/setup.bash RUN rosdep init RUN rosdep update RUN rosdep install -i --from-path src --rosdistro humble -y RUN source /opt/ros/humble/setup.bash && colcon build --symlink-install --packages-select px4_msgs RUN source /opt/ros/humble/setup.bash && colcon build --symlink-install --packages-select px4_ros_com`
Ubuntu 22.04 LTS is installed on the pi and docker.io is installed. This follows the guide here: https://docs.px4.io/main/en/companion_computer/pixhawk_rpi.html
Expected behavior
MicroXRCEAgent should connect to the client running on the Pixhawk 4
Actual behavior
MicroXRCEAgent offers the following output:
/ros_ws: MicroXRCEAgent serial --dev /dev/ttyUSB0 -b 115200 -v6 [1709157626.383849] info | TermiosAgentLinux.cpp | init | running... | fd: 3 [1709157626.385726] info | Root.cpp | set_verbose_level | logger setup | verbose_level: 6
Additional information
I have a script that runs a loopback test and confirms that the serial ports work and are accessable from in the docker container. On my USBtoTTL adaptor there is a light that indicates when data is being sent. This flashes even when there is no leads connected to the Tx pin. The light doesn't flash when the MicroXRCEAgent is runnning.