UDP channel get busy when using pymavlink

Hi there,

I’m trying to use this pymavlink example to set attitude of my rov,

https://www.ardusub.com/developers/pymavlink.html#set-target-depthattitude

But the communication is lost until the code is finished (for ex., when desired yaw is reached), and I got the feeling that udp port is getting busy when I’m pushing control commands.

I’m using navigator+RPI4 with blueos, and this system is directly connected to my pc for development purposes. So, I do not think that there is a hardware issue.

How can I solve it? I think there is a way because, GCS does not encounter with this issue even though it is handling real time joystick commands with mavlink.

Thanks for your answer in advance.

Hi @elchinaslanli,

A few questions to clarify what you’re trying to do:

  1. What software versions are you using?
    • BlueOS, ArduSub, pymavlink, (QGroundControl)
  2. Are you running pymavlink code while QGroundControl is also open and connected?
    • if so, have you set up a separate MAVLink endpoint for pymavlink to connect to, and
    • have you disabled joystick inputs in QGroundControl while you’re trying to use pymavlink for control?
      • if not, the joystick may conflict with and override your pymavlink command - it depends on what you’re trying to control
  3. What code are you actually running?
    • the code example that you’ve linked to has several 1 second sleep calls, during which the example is just waiting, and the vehicle is not receiving any additional inputs (just executing on the previous ones)
1 Like

Hi Eliot,

Firstly, thanks very much for your very detailed answers and effort.

  • I am trying to develop a new and completely basic rov gui for our system depending on our needs.
    I decided to use mavlink for fetching telemetry data and also for sending the commands to robot ( now manually with joystick, in future autonomously).

I’m running blueos+navigator as Hardware-in-Loop for development purposes. That`s why I am using mission planner and sometimes QGCS to check results of commands on simulation.

I was trying the absolutely same code.

Yes, I was trying to push the commands on the same GCS client on blueos. After implementing your instructions, mavlink connection is not clogged anymore, and problem is solved.

Thank you!

1 Like