Slow initialization on subsequent run #265
-
Hi, is anyone else facing a problem with slow initialization for a subsequent run? When I first initialize, the setting and getting parameters, memories, TOC, etc from the Crazyflies is quite fast, maybe 1-2 seconds or less for each Crazyflie. However if I have to do this for a subsequent run, it can take more than 30 seconds for each Crazyflie. Sometimes this is fixed by unplugging and replugging the Crazyradio. An alternative that worked so far was to reboot the computer. I am running Ubuntu 20.04 with 20 Crazyflies if it helps. |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 6 replies
-
I have not seen this myself, but we currently operate much smaller teams. Do you know if this also occurs when you fly 5 Crazyflies or so, or only for the 20? Do you use a single radio, only? |
Beta Was this translation helpful? Give feedback.
-
Thanks for getting back. We use 4 radios and assign 5 Crazyflies to each radio. We have seen it happen with 10 Crazyflies and 2 radios as well. I do not remember the case with 5 Crazyflies, will have to check. |
Beta Was this translation helpful? Give feedback.
-
If I use |
Beta Was this translation helpful? Give feedback.
-
@whoenig I have a question regarding the backends. So from my understanding, there are 2 backends: cpp and Cflib, which are built on C++ and python respectively. cpp utilise broadcast and cflib is unicast. Therefore, what's the advantages of using cpp, other than speed. And also in which cases, do we decide which backend to use? |
Beta Was this translation helpful? Give feedback.
In Crazyswarm2 it's impossible to disable it. cflib has it also enabled, but is a bit slower, which seems to reduce the likelyhood of it occurring. Crazyswarm1 didn't rely on safelink (which created a whole set of other problems, like missing logging output).
You could try to artificially slow down the communication (https://github.com/bitcraze/crazyflie-link-cpp/blob/master/src/CrazyradioThread.cpp#L131). Other than that, we would probably need a good way to reproduce the issue.