Skip to content

Conversation

@JonasVautherin
Copy link
Owner

@JonasVautherin JonasVautherin commented Aug 9, 2025

This moves to Ubuntu 24.04 and gazebo harmonic.

I tested it to work with MAVSDK, except for the video stream that I haven't managed to make work.

@dakejahl: is there a default airframe that comes with a camera? Seems like gz_x500 doesn't, right?

@JonasVautherin JonasVautherin force-pushed the move-to-gz11-harmonic branch from fd2058b to 443acd1 Compare August 9, 2025 11:07
@JonasVautherin JonasVautherin changed the title Move to gz11 harmonic Move to gazebo harmonic Aug 9, 2025
@JonasVautherin JonasVautherin marked this pull request as ready for review September 18, 2025 11:14

vehicle=iris
world=empty
vehicle=gz_x500
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dakejahl, @julianoes: does gz_x500 have a camera that would enable the video stream? If not, which airframe does have a camera? I used to do it with typhoon_h480, but it doesn't seem to give me a video stream with gazebo harmonic 🤔

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry I missed this. The x500_mono_cam is what you're looking for

make px4_sitl gz_x500_mono_cam

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry I missed this.

Don't be! It was a draft PR that I finally tested today, and tagged you with this question. So you actually answered really fast 😬.

Let me try gz_x500_mono_cam then, thanks a lot!

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well I missed it the first time you tagged me. I have failed you. I have failed my family. I have been a bad chatgpt.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes it works, on the host I can run

gst-launch-1.0 rtspsrc location=rtsp://127.0.0.1:8554/live ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink

and get the video 🙌. Thanks for the help!

gstreamer1.0-plugins-base \
gstreamer1.0-plugins-good \
gstreamer1.0-plugins-ugly \
iproute2 \
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you still need the ip route command for

echo "$(ip route | awk '/default/ { print $3 }')"

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch, not sure why I removed it!



RUN apt-get update && \
apt-get install -y bc \
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, for the speed factor. Maybe it explains why it didn't fail in my tests 😇. Adding it back!

${PX4_SOURCE_DIR}/Tools/px4events/jsonout.py
${PX4_SOURCE_DIR}/Tools/px4events/srcparser.py
${PX4_SOURCE_DIR}/Tools/px4events/srcscanner.py
+ modules__uxrce_dds_client
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, why is that? Should we try to fix that properly on the PX4 side (at least for the next release)?

Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was failing otherwise 🤷. I didn't investigate further 😇

Copy link
Owner Author

@JonasVautherin JonasVautherin Sep 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Without the patch, it fails to build with (still on latest main):

[ 16%] Built target ver_gen
gmake[2]: *** No rule to make target 'src/modules/uxrce_dds_client/dds_topics.h', needed by 'events/px4.json'.  Stop.
gmake[1]: *** [CMakeFiles/Makefile2:22205: src/lib/events/CMakeFiles/events_json.dir/all] Error 2
gmake: *** [Makefile:156: all] Error 2

Maybe I'm missing some magic that the Makefile does before calling CMake? I don't know.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Odd. How is this different in docker? 🤔

Copy link
Owner Author

@JonasVautherin JonasVautherin Sep 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am building with cmake, I think because I didn't manage to run the make wrapper just for building (it's running immediately). So I do this:

RUN cmake -DCONFIG=px4_sitl_default -B${FIRMWARE_DIR}/build -S${FIRMWARE_DIR} && \
    cmake --build ${FIRMWARE_DIR}/build

I could imagine that the Makefile does some more magic before calling CMake, including this module stuff?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a way to not make it run:
make px4_sitl

@JonasVautherin JonasVautherin merged commit cebbace into master Sep 19, 2025
1 of 2 checks passed
@JonasVautherin JonasVautherin deleted the move-to-gz11-harmonic branch September 19, 2025 12:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants