Trying out the Crazyswarm

Post here to get support
Post Reply
VFS
Beginner
Posts: 5
Joined: Mon Apr 01, 2019 1:07 pm

Trying out the Crazyswarm

Post by VFS » Tue Apr 02, 2019 9:24 am

Hello,

I just recently came across the crazy-swarm video in the following link: https://crazyswarm.readthedocs.io/en/latest/index.html
and was amazed on how this was achieved. I am particularly interested in performing indoor drone shows and was hoping to use this approach / system.

So I bought a set of 10 crazyflies 2.0's and with 4 crazyradio PA and decided to give it a try. I use 4 17W Prime Optitrack Cameras (5 x 3.5 x 3 volume) as my tracking system/area and I managed to fly 3-4 crazyflies following the steps provided by the documentation.

However, when I start to add more crazyflies, they become extremely unstable and start crashing.

My crazyflies.yaml is as follows:
I alternated every crazyflie in 3 different channels across 3 different radios on the same PC.
cf1 -> channel 110 -> address 01
cf2 -> channel 100 -> address 02
cf3 -> channel 90 -> address 03
etc...

My launch file uses motioncapture rather than libobjecttracker.

I'm using 3 reflective markers per drone (unique configuration set to false in motive software). However I do try to make them as distinct as possible and the system is tracking all 10 different rigid bodies.

I noticed that the RGB lights flicked from green to red from time to time, could this possibly be the issue? Otherwise what could be causing the crazyflies to become unstable when I try to fly more than 3-4 of them?

Another note, when I fly each crazyflie individually, they work fine, so I'm ruling out the fact that each drone have any defects.

Thanks, hoping for some help regarding this issue.



coreysnipes
Beginner
Posts: 16
Joined: Mon Jan 21, 2019 3:09 am
Location: Cleveland, OH, USA
Contact:

Re: Trying out the Crazyswarm

Post by coreysnipes » Tue Apr 02, 2019 1:15 pm

I'm still pretty new so others can provide better help, but it sounds like a radio signal bottleneck or interference issue somewhere. Do you have all radios set to 2M datarate? If you're still on the default 250K try setting the data rate higher. Also, when you have 3-4 running is that across different PA radios? (e.g., one per PA radio) Remove some variables by scaling up with a single PA radio first and see how many you can run from a single radio.

VFS
Beginner
Posts: 5
Joined: Mon Apr 01, 2019 1:07 pm

Re: Trying out the Crazyswarm

Post by VFS » Tue Apr 02, 2019 1:29 pm

coreysnipes wrote:
Tue Apr 02, 2019 1:15 pm
I'm still pretty new so others can provide better help, but it sounds like a radio signal bottleneck or interference issue somewhere. Do you have all radios set to 2M datarate? If you're still on the default 250K try setting the data rate higher. Also, when you have 3-4 running is that across different PA radios? (e.g., one per PA radio) Remove some variables by scaling up with a single PA radio first and see how many you can run from a single radio.
Thanks for the quick response coreysnipes.

Originally, I was running 3 on a single pa radio and it worked fine. As soon as I started adding cfs, it started becoming unstable and crashes occured. As a result, I switched to using 3 radio's because I thought there was too much going in a single channel. However, same results.

The original crazyflie documentation states that you can have up to 3 cfs on a single radio, however crazyswarms documentation says you can have up to 15 cfs?

I'm currently trying to run the radios on different PC's, each one controlling 3 drones. Ill let you know how that goes.

Still open to any other suggestions! Thanks.

coreysnipes
Beginner
Posts: 16
Joined: Mon Jan 21, 2019 3:09 am
Location: Cleveland, OH, USA
Contact:

Re: Trying out the Crazyswarm

Post by coreysnipes » Tue Apr 02, 2019 1:44 pm

Ah, gotcha. I have no easy answers so wait for the pros to chime in.

As I understand it, the number of CF per PA radio is small for the wireless TWR positioning systems because of the volume of radio traffic required to establish position. Wireless TDoA positioning is less chatty, so you can have more CF per radio. Motion capture and Lighthouse systems are similar (less bandwidth required, more CF per radio). So that may account for the difference in numbers you're seeing across documentation sources.

Good luck. I think the indoor shows are really interesting.

arnaud
Bitcraze
Posts: 2043
Joined: Tue Feb 06, 2007 12:36 pm

Re: Trying out the Crazyswarm

Post by arnaud » Wed Apr 03, 2019 9:32 am

I think part of the problem might be that you are setting a different channel for each Crazyflie: one of the functionality that makes Crazyswarm very efficient and capable to control ~15 Crazyflie per radio is the use of broadcast packet to send the position of multiple Crazyflie at the same time. This only works if all Crazyflie connected to each radio have the same channel. The setup should have one channel per radio, but still one unique address per Crazyflie.

The Crazyflie python lib does not have this level of optimization and this is why we usually recommend ~3 Crazyflie per radio.

VFS
Beginner
Posts: 5
Joined: Mon Apr 01, 2019 1:07 pm

Re: Trying out the Crazyswarm

Post by VFS » Wed Apr 03, 2019 11:47 am

coreysnipes wrote:
Tue Apr 02, 2019 1:44 pm
Ah, gotcha. I have no easy answers so wait for the pros to chime in.

As I understand it, the number of CF per PA radio is small for the wireless TWR positioning systems because of the volume of radio traffic required to establish position. Wireless TDoA positioning is less chatty, so you can have more CF per radio. Motion capture and Lighthouse systems are similar (less bandwidth required, more CF per radio). So that may account for the difference in numbers you're seeing across documentation sources.

Good luck. I think the indoor shows are really interesting.
Thanks for the insight coreysnipes!

VFS
Beginner
Posts: 5
Joined: Mon Apr 01, 2019 1:07 pm

Re: Trying out the Crazyswarm

Post by VFS » Wed Apr 03, 2019 11:56 am

arnaud wrote:
Wed Apr 03, 2019 9:32 am
I think part of the problem might be that you are setting a different channel for each Crazyflie: one of the functionality that makes Crazyswarm very efficient and capable to control ~15 Crazyflie per radio is the use of broadcast packet to send the position of multiple Crazyflie at the same time. This only works if all Crazyflie connected to each radio have the same channel. The setup should have one channel per radio, but still one unique address per Crazyflie.

The Crazyflie python lib does not have this level of optimization and this is why we usually recommend ~3 Crazyflie per radio.
Thanks for the response Arnaud.

I see, that explains it. I did revert back to my original setup, flying multiple drones in one crazyradio pa each with a unique address, and I still get similar results.

Could it be that some marker arrangements at different orientations look identical between different drones?

whoenig
Expert
Posts: 310
Joined: Mon Oct 27, 2014 2:55 am

Re: Trying out the Crazyswarm

Post by whoenig » Wed Apr 03, 2019 3:41 pm

Perhaps we can continue the discussion here: https://github.com/USC-ACTLab/crazyswarm/issues/146? I will respond there today with some ideas.

VFS
Beginner
Posts: 5
Joined: Mon Apr 01, 2019 1:07 pm

Re: Trying out the Crazyswarm

Post by VFS » Wed Apr 03, 2019 4:49 pm

whoenig wrote:
Wed Apr 03, 2019 3:41 pm
Perhaps we can continue the discussion here: https://github.com/USC-ACTLab/crazyswarm/issues/146? I will respond there today with some ideas.
Thanks for the response. Yes we can continue the discussion here. Looking forward to your ideas!

So far I have managed to fly 5, all in one radio. I have distinguished my drones more uniquely by adding more IR markers. I tried using two different PCs but had similar results.

Currently I'm just hovering each drone 0.5m high one after each other and letting them stay there for a few seconds, and landing. I noticed that some drones get disturbed while other drones take off and land. Could this be turbulence? I have them 0.5-7 meters apart.

Post Reply