Commit Graph

16130 Commits

Author SHA1 Message Date
Gautier Hattenberger 1a03da28ca [nav] implement nav_circle for hybrids
The flight speed is adapted to the circle radius according to the
maximum bank angle allowed.
The oval implemented in base rotorcraft nav is also compatible with the
hybrid primitives registered in nav.
2023-03-30 15:00:58 +02:00
Freek van Tienen d27ef116f4 [uavcan] Add support for the EQUIPMENT_ACTUATOR_ARRAYCOMMAND message (#3016) 2023-03-29 22:57:56 +02:00
Fabien-B aaa5368ea5 Allow to use extra_dl in simulation. 2023-03-29 14:42:18 +02:00
Dennis-Wijngaarden 366d451e7f [fix] guidance_indi_hybrid, bounding the vertical speed was inverted (#3019) 2023-03-29 09:36:47 +02:00
Gautier Hattenberger b855de512e Merge pull request #3015 from paparazzi/fix-chibios
[chibios] Small fixes
2023-03-28 09:42:43 +02:00
Gautier Hattenberger eba266a6b6 [fix] apply correctly horizontal and vertical setpoints (#3018)
horizontal and vertical can have setpoints of different types (pos, speed or accel) independently
2023-03-27 23:44:00 +02:00
Freek van Tienen f0a8ed3050 [mcu_periph] Disable USB serial debug endpoint when not in use 2023-03-24 11:10:11 +01:00
Freek van Tienen 5b7fd90c77 [modules] Fix SD logger errors 2023-03-24 11:10:06 +01:00
Freek van Tienen 009469f18a [tools] Update PX4 uploader to wait for autopilot 2023-03-24 10:57:44 +01:00
Freek van Tienen ba71081d9e [chibios] Disable GDB symbols by default 2023-03-24 10:56:49 +01:00
Fabien-B de8fb8b8fa [supervision] Add programs status. (#3014)
* [supervision] Add programs status.

* [supervision] turn program line red on error.
2023-03-23 21:18:38 +01:00
Gautier Hattenberger 767333a02c [fix] update generated rotorcraft autopilot for new guidance (#3012) 2023-03-17 21:44:20 +01:00
Gautier Hattenberger 1d7b6dff57 [nav] takeoff and land module (#3010)
* [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
2023-03-16 21:45:21 +01:00
Gautier Hattenberger 02df6da2d7 Update README for new Semaphore badge 2023-03-13 22:19:23 +01:00
Ewoud Smeur 9c6c45ee9f Nederdrone trim and INDI startup PD control (#2960) 2023-03-13 21:44:09 +01:00
Gautier Hattenberger 4ba0f96458 Setup semaphore 2.0 (#3011) 2023-03-13 09:27:34 +01:00
Gautier Hattenberger 0844f72932 [guidance] fix missing dependency for guidance_hybrid 2023-03-09 08:53:54 +01:00
Gautier Hattenberger 03238c1639 [fix] fix dep solver to recursively check suggested module (#3009)
* [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
2023-03-08 12:42:31 +01:00
Gautier Hattenberger 62646d68de Modules recommends and suggests (#3005)
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.
2023-03-07 17:14:15 +01:00
Freek van Tienen 7a3440fc3f [boards] Fix cube orange default GPS uart (#3007) 2023-03-07 14:14:36 +01:00
Gautier Hattenberger 04ad9f6097 Fix small errors (#3006)
* [gvf] fix mode name

* [stab] fix typo and factorize files in stab modules
2023-03-07 14:13:49 +01:00
Gautier Hattenberger 7f620c0449 [board] basic support of matek h743 slim (#3001)
only flashing with DFU for now
default orientation for MPU6000 imu
fix small bugs
2023-03-06 18:03:00 +01:00
Gautier Hattenberger b152b927b3 Fix nav rework (#3004)
* 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
2023-03-06 10:45:44 +01:00
Gautier Hattenberger 28ef30ed80 Nav rotorcraft rework (#2964)
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>
2023-03-02 22:15:23 +01:00
Fabien-B e42330c58d Supervision improvements (#3002)
* [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.
2023-02-28 18:49:42 +01:00
OpenUAS 4ef8b85690 PPM input, GPS input and Telem etc. all working now (#3000) 2023-02-28 18:38:32 +01:00
Ewoud Smeur b73086a6e1 fix state update equation (#3003) 2023-02-25 14:02:59 +01:00
Gautier Hattenberger 6169709da6 [plotter] implementing a realtime plotter in python (#2997)
* [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>
2023-02-24 00:20:05 +01:00
Fabien-B 3badcfa367 [supervision] Fix session save programs. (#2999)
Arguments like "-ac a b" was previously parsed as "-ac b".
2023-02-20 22:43:44 +01:00
Fabien-B 2bb87eb026 [Log] flush log buffer on USB storage. (#2996) 2023-02-16 15:16:29 +01:00
Fabien-B 63983bd6f6 Log message, and forward it to link. (#2995)
* Log message, and forward it to link.

* Update pprzlink.
2023-02-16 14:39:20 +01:00
Fabien-B 5e2c9e488a Usb add serial (#2966)
* [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.
2023-02-15 22:04:53 +01:00
Christophe De Wagter a75f011050 [install] Ease installation with a GUI (#2991)
* [install] Ease installation with a GUI that automatically adapts to the OS

---------

Co-authored-by: Fabien-B <fabien.bonneval@gmal.com>
2023-02-15 14:32:01 +01:00
Christophe De Wagter da8a00f2e7 [INS_EXT_POSE] Kalman Filter based on external attitude measurements (#2993) 2023-02-15 09:57:06 +01:00
Gautier Hattenberger 86fd9005cb remove old code panic button 2023-02-14 10:07:45 +01:00
Gautier Hattenberger 8dafb7840a [ocaml] fix warnings in ubuntu 22.04 2023-02-14 10:07:45 +01:00
Gautier Hattenberger cf150db155 [ocaml] move the GCS-only related code out of xpprz lib
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.
2023-02-14 10:07:45 +01:00
Christophe De Wagter cd546696ef [c++17] Increase the C++ standard to 2017 (#2992) 2023-02-13 13:31:54 +01:00
Christophe De Wagter 0e604606b2 [ubuntu18.04] Update documentation + legacy: solves #2987 (#2990)
Fix for newer ubuntus
2023-02-13 13:22:11 +01:00
Fabien-B 4aedbf1590 Update targets only. (#2983) 2023-02-11 17:55:41 +01:00
Gautier Hattenberger 5cad3f1390 Merge pull request #2986 from paparazzi/ubuntu22_fixes
Ubuntu22 fixes
2023-02-11 17:52:57 +01:00
Christophe De Wagter 970c31707a Silent compile warnings 2023-02-11 14:49:31 +01:00
Christophe De Wagter 3002893a01 [ubuntu22] Silent warnings and fix compile errors 2023-02-11 00:03:11 +01:00
Christophe De Wagter c614a5c6be Wider range of orange, so it avoids rather too much than too little to start with. 2023-02-11 00:03:11 +01:00
OpenUAS 5b4ac81c68 Fix Pixracer upload using PX4 bootloader (#2985)
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
2023-02-09 10:51:42 +01:00
Christophe De Wagter 97e12c6c14 [conf] Fix natnet3 flags (#2984) 2023-02-08 11:20:31 +01:00
Gautier Hattenberger 27b4571f5e [supervision] rename clean target to avoid removing files 2023-02-08 08:51:13 +01:00
Fabien-B de258cf6bd [supervision] Do not crash if qtwebkit is not installed. (#2982)
* [supervision] Do not crash if qtwebkit is not installed.

* Fix test

* fix return type.

* Better conf error propagation.
2023-02-07 17:47:22 +01:00
Fabien-B 8833bb4fc5 [supervision] Adds documentation tab. (#2972)
* [supervision] Adds documentation tab.

* [generator] add a target option to dump modules by target with load type

* [supervision] doc: handle modules type.

* [supervision] modules doc: add filter.

* [supervision] Use internet doc by default.

* [supervision] Move the header out of the configuration tab.

* [supervision] Add target label.

* [supervision] Gracefully handle Ctrl-C.

* [supervision] Add new session to combobox.

* Update sw/supervision/python/doc_panel.py

---------

Co-authored-by: Gautier Hattenberger <gautier.hattenberger@enac.fr>
2023-02-07 15:51:55 +01:00
Gautier Hattenberger 902f9adf65 Update requirements.txt 2023-02-07 15:38:15 +01:00