Hello! I want to use the IMU-data of my pixhawk4. I successfully set up a UXRCE-client/agent bridge over the telem1 port on the pixhawk. However, the publishing rate is approx. 100Hz and I want to increase it as much as possible. Setting the param IMU_INTEG_RATE to 400Hz and running uorb top sensor_combined in the MAVLink-shell, tells me that the uORB-topic is published at 400Hz. What is limiting the publishing rate onto ROS2 then? How can I increase this publishing rate?
Hi there, there are a few thing coming to my mind.:
-
have you checked your baud rate on that port? 100Hz is often where things start to bottleneck if the serial line is saturated. try bumping it up to 921600 or higher
-
take a look at the
dds_topics.yamlfile on the client side. Even ifsensor_combinedis screaming fast in uORB, the bridge won’t push it any faster than what’s defined in that config file. You might need to manually adjust the rate there and resync.
Also, what are you using for a companion computer? If the CPU is pinned, the XRCE agent might be struggling to keep up with the serialization.
Let me know if you’ve made any headway on those—good luck!