Page 1 of 1

Working with multiple drones

Posted: Thu May 14, 2020 2:07 pm
by Kaiser1401
Hi,

I am trying to implement a swarm, therefore i have some practical questions regarding deploying and instance independent firmware:

1) Is there a way to simultaneously update multiple drones? (nrf and firmware), (via radio? via cable/pins?)
2) I need some automatic enumeration / ID. In the firmware, can i ask for a device unique ID? Or has anyone done automatic enumeration using the radio (e.g. first powered on gets 0, second 1, ....)?

-Klaus

Re: Working with multiple drones

Posted: Fri May 15, 2020 8:31 am
by kristoffer
There is currently no way to flash multiple crazyflies in parallel but sequential flashing can be automated. See cload_all_nrf.sh and cload_all_stm.sh for inspiration https://github.com/bitcraze/crazyflie-l ... m_test_rig

The channel/id is used for identification, see the scripts above.

Re: Working with multiple drones

Posted: Tue May 26, 2020 1:01 pm
by Kaiser1401
Hi kristoffer,

this should help a bit with (1), thanks.
- Is there also a way I can set the crazyfly into bootloader mode with a command (python? local headers on the drone?)?
- Can I enumerate the addresses automatically (via python/firmware)? Do the drones have other internal IDs I can access for this maybe?

Re: Working with multiple drones

Posted: Tue May 26, 2020 2:02 pm
by kimberly
  • If you are using the scripts that kristoffer showed in his reply, you do not have to put them in bootloader mode by hand. They go into bootloader mode automatically (-w = 'warmboot').
  • Currently I think it is handier to just do this through the cfclient in the address-set functionality for each crazyflie. This will be stored on an onewire memory and does not have to be changed with each restart. If you want to access that ID, this example this code from my previous research can access the address' last digit in the nrf firmware