VOXL2 starling bootable images
-
Hi @Moderator is it possible to make a bootable and installable OS image of the voxl2 from one drone and than deploy it to another drone. Like in a raspberry pi I can essentially take the backup image of the entire system and than flash it to another sd card. I have 3 more starling drones which need the same voxl services modifications as I have in my base starling drone, instead of doing it one by one and than testing the functionality only to find out that it doesn't work is a bit tedious
-
@Darshit-Desai Not at this point, no. We recommend customizing the offboard installer which will perform a similar task
-
@Moderator Can you help me with the resources of how to use an offboard installer?
-
- download the SDK installer from developer.modalai.com
- un-tar the file and inspect the contents
- replace packages with your own
-
@Moderator So if I replace the deb files which I generated for my base drone and keep it here it will install that right?
For example:
I nuked topics from voxl_mpa_to_ros which weren't being used
I modified the tflite server to accept varying lengths of label filesAlso for some reason I have to install ros-melodic-base packages everytime I upgrade the sdk in this case, is there a way to generate deb binary for that too
-
@Darshit-Desai You can generate a .deb file for any apt-installable package by doing the following onboard:
sudo apt download $PACKAGE_NAME
Keep in mind that this won't automatically download/install any other dependencies that would automatically get installed if you were to run a normal
apt install
command so you may need toapt download
those packages as well and install them beforehand. -
@tom I will try that out but it doesn't seem feasible as there are 10s of ros packages which I use for my application and each of them would have 100s of deps. I did it manually for now on the 4 drones, but in future there should be a feature to essentially duplicate a ubuntu image into a sd card somehow and use it to flash other voxls or some other method of making it into your own sdk update. Drones like starlings are increasingly used in our experiments for swarm robotics and if not me than someone else would face the same issue if he tries to replicate the same build to 4+ drones as swarms usually work on the factor of scalability and usually 10+ drones are tested
-
@Darshit-Desai Might be better to create a Docker image with all of the things you need installed.
-
@Eric-Katzfey as far as I know docker image in the voxl2 ecosystem is used for installing stuff like a different version of Ros or opencv or some other dependency. In my case I modified a lot of back end services and the .conf files, that along with some of the Ros dependencies make the process of cloning a drone atleast 1.5 hr long. Making a docker image for ros dependencies and installing it would shave off only half off that time the other half I would still need to reconfigure voxl2 sdk as my other drone. For 4-5 drones it's fine, but for more 5 it's not