Running rover using pymavlink on Blue-os Beta - multiple output ports

Hi, I am trying to run a basic script to move my rov forward. However it is not working.

The documentation mentions in the comments the following -

the default connection is available
#  at ip and the port 14550
# Note: The connection is done with 'udpin' and not 'udpout'.
#  You can check in http: that the communication made for 14550
#  uses a 'udpbcast' (client) and not 'udpin' (server).
#  If you want to use QGroundControl in parallel with your python script,
#  it's possible to add a new output port in http: as a new line.
#  E.g: --out udpbcast:

However i am unable to access http: How else can i check which mavproxies are available. How do i run qgc and pymavlink at the same time.

from multiprocessing import Process
import time
from pymavlink import mavutil

master = mavutil.mavlink_connection('udpin:')

def forward():
    master.mav.manual_control_send(master.target_system, 500, 0, 0, 0, 0)

def docking_start(): 
    p = Process(target=forward)


I just saw this under pirate mode should the values for these parameters be? Also after extensive research could the problem be that i have specified udpin: when it should be in my code? I also don’t need to create an endpoint for the default 14550 baudrate right?

Hi @cerealkiller2527,

Which BlueOS version are you running?

You should have a GCS Client Link endpoint to UDP port 14550 available automatically, which is what QGC generally connects to. Note that network connections require specifying a port - “baudrate” is for connecting to serial devices.

If you want to add an additional similar endpoint for connecting to with Pymavlink then the best option is creating an additional UDP Client, with a different port to the ones already in use, e.g.

Your code should then be able to connect via 'udpin:' :slight_smile:

Both of those options should work - specifies “use this computer’s IP address”, and is the IP address that our network configuration instructions get you to set :slight_smile:

Thank you much eliot im using the latest version of the blue os beta which i think is 1.01. The reason why i thought the port in the code was wrong was because when i type HTTP:// it doesn’t open the blue os page and gives me an error but when i type companion.local it opens up the page.

No worries :slight_smile:

That’s unrelated for two reasons:

  1. The BlueOS web interface is hosted on the onboard computer, which has the IP - see the Interface Access docs
    • is the topside computer IP, which is why you can use it from the topside computer to connect to a UDP client endpoint that’s directed to the topside computer
  2. The BlueOS web interface has no /network page, so that will give an error even if the IP is correct

Ohh i see thanks a lot

1 Like