Start multiple Mavlink on SITL with the same port

Now, I’m working on simulation project with 3 UAVs on the same environment.

I have already managed to receive messaged from one drone to another drone as shown here.
________________
| UAV#1 port 14550 | <--------------------------------- (UAV#2 port 14551)
|_______________ | <--------------------------------- (UAV#3 port 14552)

However, what I would like to do is to send the message from UAV#1 port 14550 to UAV#2 and UAV#3 like this
________________
| UAV#1 port 14550 | ----------------------------------> (UAV#2 port 14551)
|_______________ | ----------------------------------> (UAV#3 port 14552)

In this file /init.d-posix/rcS, I start mavlink by

mavlink start -x -u 14550 -r 4000000 -o 14551
mavlink start -x -u 14550 -r 4000000 -o 14552

When launching the script, I suddenly got the error that “port 14550 already occupied”.

I suppose that we cannot use the same port to send messages to nodes more than one

So, I would like to ask that is there any way to do this.

If anyone could give me some advice about how to do it, I would really appreciate. Thank you.

@ChunzPS Multi-vehicle is already supported and explained in https://dev.px4.io/master/en/simulation/multi_vehicle_simulation_gazebo.html

Does this still work?
Trying to access the multivehicle communication, but an error of 404 appears!

Hi,

The following are recommended usages:

mavlink start -x -u 14561 -o 14561 (for drone #1 set MAV_SYS_ID: 1 or others)

mavlink start -x -u 14562 -o 14562 (for drone #2 set MAV_SYS_ID: 2 or others)

mavlink start -x -u 14563 -o 14563 (for drone #3 set MAV_SYS_ID: 3 or others)

QGC can connect these drones under “Comm Links” setup.

Be due to 14550 has use for internal and QGC will connect to 14540 by default.