* [nav] takeoff and land module
Functions for takeoff and landing (fixedwing and rotorcraft), can be
called from the flight plan or from the mission module.
Two flight plan examples are provided.
Various options are possible, see module description and header file.
* [sim] ins_sim module is only doing INS, not AHRS
add AHRS requirement for sim target, if needed provided by ahrs_sim
* [fix] fix dep solver to recursively check suggested module
the issue was that suggested modules can depend on modules that should
be found from the suggested list
also enforce that an autopilot should have at least an ins or a ahrs
* move dep to targets
Add two new items in module's dependency:
- recommends: a recommended module tells the sorting algo that if the module is found, it should be sorted accordingly. It is useful for optional dependencies, like shell or mission in some modules
- suggests: if a functionality is not provided by the user, a module can suggest a list of modules that can provide them. It is a convenient way to have "default" modules.
As a result the former autoload node is removed and replaced by suggested modules.
* fix guidance_v in flight plan and remove old settings
* nav radius, descend and climb
* [stab] make a attitute set quat function
* fix function name
* fix parsing of variables in proc, don't use = in fp
* fix nav heading in modules
* fix some more errors
* fix var name
This is a complete rework of the navigation for rotorcraft with the key features:
- all nav functions and interface in float
- nav function are registered (decoupling between nav API and implementation of standard pattern)
- submodes to specify if setpoint is a position (legacy), speed or accel (better integration of algorithms like GVF)
- guidance (H and V) is reorganized with default function to implement (run_pos, run_speed, run_accel)
- guidance control (the old default PID) is separated from the guidance logic
---------
Co-authored-by: Freek van Tienen <freek.v.tienen@gmail.com>
* [supervision] disable build and clean buttons during build/clean.
* [supervision] Move AC color at the left.
* [supervision] Add shortcuts and rename "flash" to "upload".
* [supervision] Fix telemetry select base path.
* [supervision] return key terminate program.
* [supervision] Add option to keep "build" programs after they finished.
* [plotter] implementing a realtime plotter in python
based on pyqtgraph
it should implement most of the functionalities of the legacy ocaml plotter
it is replacing the previous implementation in python
* Format code.
* Add requirements
* refactor plotter
---------
Co-authored-by: Fabien-B <fabien.bonneval@gmail.com>
* [USB Serial] Cleanup serial USB configuration.
* [USB Serial] Add 2nd serial.
* [USB Serial] Add udev symlinks.
* [ChibiOS Mass storage] Change USB stop sequence. (Seems to works better this way)
* [USB Serial] Fix thread blocked when port is not opened.
* [USB Serial] Adapt number of CDC to the number of endpoints.
STM32F7: 2 serial
STM32F4: 1 serial
* Mark telemetry_transparent_usb as deprecated.
Most of the pprz.xlib is used by the legacy GCS only, using in
particular the deprecated canvans.
This PR is isolating the relevant part to the GCS folder, so it will be
easier in the future to avoid the compilation of this part by default.
Conditional compilation of the old GCS: test if glade is installed
to build supervision, logplotter and the (legacy) GCS.
Fix upload failing if using PX4 bootloader on a Pixracer R14/15 Flightcontroller to upload the PPRZ AP main firmware. Tested with Fix Pixracer R14 and one R15