Milestones
List view
Date is not determined yet. Repository will be updated with various features cherry-picked from Airvolute's internal development as well as from OEM branch. This can be considered as a release `v2.0`. Also docs/wiki of this repo will be enhanced.
Overdue by 2 year(s)•Due by May 31, 2024•1/2 issues closedThis will add functionality for OEM makers. Can be also used for advanced DCS users. ### Feature list: - `--setup_doodle_radio <doodle_radio_ip>` - doodle Radio setup, CLI argument - This automatically setups doodle radio module connected to the DroneCore board. It setups basic config such as frequency etc. - `--batch_counter <batch_counter>` CLI argument - this setups few things: - In general, when using this argument, it sets up counter to <batch_counter> and the value is increased after each successful flash. When not using this argument, `batch_counter` is taken from the counter file (`~/.dcs-deploy/flash/<config_id>/batch_counter`). The value depends on number of successful flashes between the last time when `--batch_counter` argument was used. - This sets up Mavlink `SYS_ID` ( batch_counter == SYS_ID) and also UAV's IP inside Doodle network. The pattern is: `10.223.0.SYS_ID` or `10.223.0.conter_value` - This is meant for OEM production of UAV's which requires unique IP's and SYS_ID's inside doodle network when producing batch of UAVs for one customer. - `--app_size` - this argument sets size for `APP` partition. This needs to be inputed manually, according to custom `rootfs` used while flashing (see next point) - `--rootfs` - path to `bz2` archive of customized rootfs -> process of creating (backing up) such filesystem is not part of this PR and will not be explained here. It should however be part of `dcs-deploy`, but I am planning to implement it in a future. - Various `first_boot` functionalities have been added, please see the diff, it's just minor things which are self-explanatory ### Technical details - In OEM setup, **images are created EACH FLASH**, because of batching functionality which requires slight alter of each `rootfs` (different ID's) - `full/minimal` specifier when using `--rootfs` option is useless, but should be there to not break up the script (might be solved in the future) - Doodle setup is done using submodule of https://github.com/airvolute/airvolute-doodle-setup - Mavlink SYS_ID is done by `deb` application built on Jetson, repo is here https://github.com/airvolute/mavlink-serial-sys-id-set - Currently, there can only be 253 UAVs inside one batch. Mavlink SYS_ID limitation. However Mavlink should be able to operate in subnets. This is marked for future work. - `nvpmodel` currently does not work, so there is a limitation where we set power model to the highest one, but not in dcs-deploy process, but we **need to create roots where /etc/nvpmodel.conf is defaulted to max power model**. - https://github.com/airvolute/mavlink-serial-sys-id-set is not tied (versioned) anyhow to this repo. It's just a built package, but the version is not saved anywhere. But there is a huge predisposition that this tool will not ever change. ### Example showing full potential of OEM branch ```bash python3 dcs_deploy.py flash xavier_nx 512_stribog 1.2 nvme full --setup_doodle_radio 10.223.200.66 --batch_counter 11 --app_size 40 --rootfs /home/edo/.dcs_deploy/rootfs_merged.tar.bz2 ``` You can try it out without `--rootfs` option if you do not know how to create it. We will add tutorial How to create rootfs backup (image) from your current rootfs with your apps/documents currently installed! _NOTE: 512_stribog is Airvolute internal config!_
Overdue by 2 year(s)•Due by April 15, 2024•1/1 issues closed