I want to connect multiple UAVs those have RFD900x onboard to use as telemetry link.
Is there a way to connect these UAVs using a single telemetry modem (RFD900x) on the GCS?
As long I changed the SYSID_THISMAV to a unique number for each aircraft, I have been able to do this with both QGC and MP, without changing the firmware on the radios.
I also considered installing the Multipoint firmware per this document:
An interesting article here:
Thank you for your reply.
But how did you separate the multiple data stream?
RFD900x is connected to the computer be seen as a serial device and a
serial device can only be opened one time.
How did you get this working with MAVProxy as connecting to a serial device multiple times?
Because this multiple data stream needs to be seperated from each other.
I did some experiment with MAVProxy and SITL using point to multipoint configuration of the modems.
First I started two SITLs using
arducopter -S -I0 --model copter --defaults /home/m/ardupilot/copter1.parm
arducopter -S -I1 --model copter --defaults /home/m/ardupilot/copter2.parm
Parameter files only holds the followings (individually):
Then i am connecting these SITLs using MAVProxy:
mavproxy.py --master tcp:127.0.0.1:5760 --out=/dev/ttyUSB1,57600
mavproxy.py --master tcp:127.0.0.1:5770 --out=/dev/ttyUSB2,57600
Where “/dev/ttyUSB1” is for SITL 1 and “/dev/ttyUSB2” is for SITL 2 individually.
And also the modem connected as “/dev/ttyUSB0” is P (center) of PtMP configuration.
And “/dev/ttyUSB1” and “/dev/ttyUSB2” are the MP (end nodes) of PtMP configuration.
Now i am running this command to open the center node:
mavproxy.py --master=/dev/ttyUSB0,57600 --out udp:127.0.0.1:14550
When i fire up above command i see some movement on the console of the individual MAVProxy terminals of the SITLs.
But when i want to seperate this communication via the following individual terminal commands:
mavproxy.py --master=127.0.0.1:14550 --target-system=1
mavproxy.py --master=127.0.0.1:14550 --target-system=2
Only the second one stays alive and other one breaks communication.
For example when i first do
mavproxy.py --master=127.0.0.1:14550 --target-system=1, then
mavproxy.py --master=127.0.0.1:14550 --target-system=2 on sepearate terminals, I am able to communicate with System 2 but not System 1.
But when i first do
mavproxy.py --master=127.0.0.1:14550 --target-system=2, then
mavproxy.py --master=127.0.0.1:14550 --target-system=1 on sepearate terminals, I am able to communicate with System 1 but not System 2.
How can i solve this issue?
@Mustafa_Gokce - The RFD900x connected to the ground station is capable of “listening” to several vehicles at the same time. The Ardupilot documentation suggests that you must have a separate radio for each connection, or use the multi-point firmware to accomplish multi-vehicle connections, but this doesn’t seem to be the case. I was able to track three vehicles with a RFD900X connected to my ground station, and a separate RFD900X in each vehicle.
Again, it is key that you change SYSID_THISMAV on each vehicle to a different number, but leave your ground station at the default. Both Mission Planner and QGroundControl were able to track all three vehicles in my test case. I am not suggesting it is the best or most efficient method, which Is why I included a link to the RFD manual which discusses the multi-point firmware and a link to an article where someone had used the multi-point firmware.
Hope this helps.
The modems support this operation but something is wrong in the MAVProxy (or i am missing something).