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
Working with multiple drones
-
- Bitcraze
- Posts: 630
- Joined: Tue Jun 30, 2015 7:47 am
Re: Working with multiple drones
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.
The channel/id is used for identification, see the scripts above.
-
- Beginner
- Posts: 11
- Joined: Tue Apr 21, 2020 11:36 am
Re: Working with multiple drones
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?
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
- 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