100 Commits
Author SHA1 Message Date
e7e5531ce2 [guidance] attempt to clean guidance indi code (#3613)
Doxygen / build (push) Waiting to run
* [guidance] attempt to clean guidance indi code

- remove super dangerous RC_DEBUG flag
- use new filter *_types
- fix filters documentation (time constant -> omega)
- outer loop control separated as a WEAK function

* get rid of deprecated thrust dynamics

---------

Co-authored-by: Ewoud Smeur <e.j.j.smeur@tudelft.nl>
2026-08-08 21:59:14 +02:00
Gautier HattenbergerandGitHub f7db852730 [datalink] make dl buffer static (#3688)
Doxygen / build (push) Canceled after 0s
Clean datalink and extra_dl interface, fix some bugs.
Only tested in simulation so far.

see #2495
2026-07-29 15:48:09 +02:00
Gautier HattenbergerandGitHub 925f6427f7 [wgs84] compute the geoid/ellipsoid with the same model (#3680)
Doxygen / build (push) Canceled after 0s
* [wgs84] compute the geoid/ellipsoid with the same model

Use the same model by default (WGS84) in the flight plan generator and
the airborne code. Small differences can propagate and lead to different
NED altitude for the waypoints, especially when using WAYPOINTS_LLA_ALT
option with EKF2. A 'configure' allows to desactivate this option, which
is acceptable for a local flight.

* [ins] add option to force using flight plan reference
2026-07-22 14:35:52 +02:00
Gautier HattenbergerandGitHub f43dc86f51 [ci] add necessary packages to compile qt6 tools (#3679)
Docker update / build_docker_image (push) Canceled after 0s
Doxygen / build (push) Canceled after 0s
This is temporary solution for testing and developping tools before
integrating to paparazzi-dev package.
2026-07-18 23:34:55 +02:00
Gautier Hattenberger 4b62aea226 [doc] add v7.0, remove series 5
Doxygen / build (push) Has been cancelled
2026-07-12 14:37:15 +02:00
Gautier Hattenberger a1b47e4ca7 mark v7.1 unstable 2026-07-12 14:18:29 +02:00
Gautier Hattenberger 859ce70cab stable release v7.0 2026-07-12 14:03:43 +02:00
Gautier HattenbergerandGitHub 8c417cc9ea [indi] fix and improve support of fully_actuated control with INDI (#3673) 2026-07-12 12:00:08 +02:00
Gautier HattenbergerandGitHub c45dd05555 Update enac airframes (#3672)
* update anton airframe

* [supervision] fix startup config

otherwise the default conf and control_panel after install is the first
in alphabetic order, not the example conf.

* [tool] fix link to GCS editor

* [conf] update conf example to include a fixed-wing airframe

* [flight_plan] update ins_reset to correct macro

* [disco] remove define with wrong name

and most likely wrong value anyway

* [airframe] update and clean Enac conf
2026-07-10 21:58:35 +02:00
Gautier HattenbergerandGitHub fa97bcc52d [messages] fix the formating of values in a list (#3662)
Doxygen / build (push) Has been cancelled
2026-06-17 00:30:10 +02:00
Gautier HattenbergerandGitHub 2a2f003a63 [imu] configuration of body_to_sensor rotation with float eulers (#3658)
The rotation configured by default with bfp rmat is not easy to use.
This is allowing to define the rotation with euler angles in floating
point.
2026-06-17 00:29:24 +02:00
Gautier HattenbergerandGitHub c2fcb110b5 [indi] used proper quaternion 2nd order filtering (#3651)
Doxygen / build (push) Has been cancelled
The filtering of euler angles was not correct, even with the correction for yaw from #3624
2026-05-04 18:47:53 +02:00
Gautier HattenbergerandGitHub 5dc6e55924 [guidance] fix fully actuated indi guidance (#3650)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
The projection matrix was wrong (using ZYX instead of YXZ).
2026-04-22 18:47:31 +02:00
Gautier Hattenberger 1be5589a2d [pcre] autodetect pcre version using ldd on libivy.so
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
2026-04-21 17:22:21 +02:00
Gautier Hattenberger 5d31ccde87 [clean] removing old tools, some of them where using pcre lib 2026-04-21 17:22:21 +02:00
Gautier HattenbergerandGitHub 07b5404f4d [build] use lto=auto option to remove compilation warning (#3645)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Merging, so CI test are not failing any more
2026-04-18 10:25:52 +02:00
Gautier HattenbergerandGitHub 61bdcdf0c6 [build] remove example using gazebo (#3643)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
CI tests are currently not possible with our version of Gazebo.
See issue #3642
2026-04-17 00:26:16 +02:00
Gautier HattenbergerandGitHub 7e4d65d7fb [docker] install python imp module (#3641)
From zombie package, needed by our current version of mavlink.
It is a workaround that could be removed if we manage to update mavlink,
now based on importlib rather than imp (removed in python 3.12).
2026-04-15 22:52:42 +02:00
Gautier HattenbergerandGitHub eb6800f10d [docker] add correct gazebo version (#3640) 2026-04-15 20:14:47 +02:00
Gautier HattenbergerandGitHub e9cabf45f3 [docker] update ubuntu version to 24.04 (#3638) 2026-04-15 13:08:55 +02:00
Gautier HattenbergerandGitHub 879c971eb0 Digital cam pwm trigger (#3636)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
* [gps] send NMEA frames to external sensors
* [digital_cam] add pwm trigger module
2026-04-13 10:02:14 +02:00
Gautier HattenbergerandGitHub eaeee4879a [logger] fix include and add compilation test to logger utils (#3635)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
2026-04-12 18:33:16 +02:00
Gautier Hattenberger 84adc6f1e2 [link] only disable ACINFO with flag noac_info
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
2026-04-08 10:26:56 +02:00
Gautier Hattenberger 850ebab9f7 [state] fix conversion error for LLA_F 2026-04-08 10:26:56 +02:00
Gautier Hattenberger 41b5c7ef82 [log] add logger_utils module
Definitions and tools to abstract ChibiOS/Linux logging.
Use with control effectiveness logger and traffic_info (adding logging
support).

fix alt scaling in ACINFO_LLA message
2026-04-08 10:26:56 +02:00
Gautier Hattenberger 345ae58312 [traffic] register ACINFO message for position broadcasting 2026-04-08 10:26:56 +02:00
Gautier Hattenberger 2cb12e1cf4 [ucenter] easier configuration flag to disable NMEA with ucenter module 2026-04-08 10:26:56 +02:00
Gautier HattenbergerandGitHub a625c75e70 [fix] update EFF_MAT_STAB message error (#3633)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
abusing admin rules to fix master branch
2026-04-03 23:10:37 +02:00
Gautier HattenbergerandGitHub 68720b360d [ci] update OS type for semaphore to Ubuntu 24.04 (#3625) 2026-03-30 13:19:09 +02:00
Gautier Hattenberger de1b9f95a2 Protect env var reading and update packages first in install script
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
This is required for a fresh install with WSL2 on Windows
2026-03-22 19:40:37 +01:00
Gautier Hattenberger bbb6eda3c5 [gps] don't configure SBAS integrity flag with UBX ucenter
With this flag, only GPS with valid integrity data is used, which is
greatly limiting the number of satellites actually used, and a much
lower precision in the end.
2026-03-22 19:40:37 +01:00
Gautier Hattenberger 618355b9b7 [logger] adapt logger_control_effectiveness for linux based OS 2026-03-22 19:40:37 +01:00
Gautier Hattenberger 41572358f3 [bebop] send low level commands if INDI_COMMANDS is defined 2026-03-22 19:40:37 +01:00
Gautier HattenbergerandGitHub a5e551d336 [rtcm] fix ID for message 1097 when registering (#3620)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
RTCM corrections 1097 (Galileo) were not sent correctly.
Also fix some comments.
2026-03-20 10:57:57 +01:00
Gautier HattenbergerandGitHub 68ea2b661e [wls] return when a solution is found instead to reach max iter (#3617)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
This bug is intruduced by #3320. Without the return, wls only ends after
reaching max_iter. In simulation, only 1 iteration is needed to reach a
solution in flight, while max iter is set to 10.

https://github.com/paparazzi/paparazzi/pull/3320/changes#diff-fd1514a7b2a74afb97095b63a4d2d7986c427e9d939db0a36eb68620d9e351c1R273
2026-03-17 10:00:43 +01:00
Gautier HattenbergerandGitHub 979c01cd7c [stabilization] set commands from indi actuators array (#3606)
Make it possible to set the command vector from the stabilization INDI controller, when STABILIZATION_INDI_COMMANDS array is defined. The benefit is a simpler configuration of the control_laws section of the airframe file when using INDI.
Be careful that with this, a "correct" failsafe_value is needed for the commands, since it is the value applied in KILL mode. Some special keywords (e.g. MOTOR_STOP) are added to help avoiding mistakes.

Backward compatible if STABILIZATION_INDI_COMMANDS is not defined.

- add example airframe
- add special names for command failsafe values:
  - MOTOR_STOP = MIN_PPRZ = -9600
  - MAX_PPRZ = 9600
  - MOTOR_IDLE = 0
2026-02-19 10:46:12 +01:00
Gautier HattenbergerandGitHub 5aa3d5f368 [gps] support rtcm message 1097 (Galileo) and other fixes (#3589)
- update airborne parsing
- update and factorize ground tool rtcm2ivy
- change offset type to uint16 to avoid overflow and garbage sending
  (it should have never worked!!!!!)
- fix packet size checks
2026-02-11 08:55:00 +01:00
Gautier HattenbergerandGitHub 37a86bb389 [indi] rewrite indi stabilization and guidance for modularity (#3565)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
This PR allows to redefine the outer-loop for stabilization and
guidance, and to specify the guidance model for something else than a
quarotor (but still not an hybrid).
Two use case are proposed:
- replace the PD control of the outer-loop (still used by default) by
  and Hinfinity controller
- parametrize the guidance for an hexa-copter with tilted motors,
  allowing to produce side force for lateral motion control.
2026-02-02 18:41:03 +01:00
Gautier HattenbergerandGitHub 95ff2dd42b [parrot] add support for wpa_supplicant for bebop (#3572)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
- update script and binary
- add sound and cdc_acm options
- don't wait for join when using static IP
2026-01-14 22:52:25 +01:00
Gautier HattenbergerandGitHub c811f7528b [board] use macro for alternate function number on tawaki2 PWM (#3575) 2026-01-14 22:50:50 +01:00
Gautier HattenbergerandGitHub 3f12cdebe0 [parrot] fix timeout for blocking i2c in bebop and disco actuators (#3573)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
* fix timeout for blocking i2c in bebop and disco actuators
* use correct settings for imu with 500Hz periodic freq for bebop and disco
2025-12-25 21:27:14 +01:00
Gautier HattenbergerandGitHub 4560320201 [stab] scale integrator value with control frequency (#3571)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
- gains should not depend on frequency
- tune values accordingly for Ranger VTOL
2025-12-19 22:54:57 +01:00
Gautier HattenbergerandGitHub 4744ac556b [fix] correct imu gyro scale init (#3569) 2025-12-08 08:54:33 +01:00
Gautier HattenbergerandGitHub 5cda539646 [actuator] change configuration of actuators (#3548)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
* [actuator] change configuration of actuators

- add a configuration structure to the actuators array
- limit the use of macros
- add a shell command to get and set actuator value
- update config for all boards

* fix actuator faulhaber for NPS

* add missing file in actuators nps
2025-11-25 16:58:44 +01:00
Gautier HattenbergerandGitHub b2a1859cf6 [actuators] compute the real RPM from electrical RPM from DSHOT telemetry (#3564)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Configured with the number of poles (default 14, which is common for
most motors).
The update of RPM and other parameters is done in the actuators commit
function to have the fastest rate, instead of being done in the ESC
message send function.
2025-11-17 17:57:18 +01:00
Gautier HattenbergerandGitHub 240703844a [guided] add a tool to execute trajectories in guided mode (#3556)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Execute trajectories pre-computed in a file with
time, position, [speed], [accel]

Examples for indoor flight arena are provided.
2025-11-06 22:33:19 +01:00
Gautier HattenbergerandGitHub 4ac6279aa9 Fix compilation tests (#3550)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
* [fix] fix some bugs

small errors from compilation tests

* Attempt to fix the detection of failing tests

Side effect: the file issues.md is not produced anymore, but still available in stdout, so needs a manual copy if needed
2025-10-20 16:57:24 +02:00
Gautier HattenbergerandGitHub 900843c2c7 [tool] update effectiveness estimation script (#3537)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
- proper initial condition for linear filters
- add rate limit model
- possibility to use ranges to find best value for actuator dynamic
- allow to change any of the variables from command line
- update plot figures to group them with signal, fit result and fft
- add config files for full INDI with G2 matrix and Heewing Ranger T1 configuration
2025-10-06 16:41:25 +02:00
Gautier HattenbergerandGitHub 4f16ae0d56 [wayland] only use Qt/wayland if available (#3545)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
After #3528 and #3525, only try to use wayland if it is available.
This is preventing a lot of warnings if the fallback option is used.
2025-10-03 15:10:44 +02:00
Gautier HattenbergerandGitHub 41048101d0 [rover] improve support for ROVER firmware (#3530)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
- possibility to use basic PID with steering rover
- fix navigation
- add support for mission mode
- fix simulator (orientation was wrong, leading to opposite steering
  between sim and reality)
- add support of 2 wheels rover in simulation
- add and update config files
2025-09-30 08:54:06 +02:00
Gautier HattenbergerandGitHub 528f9a5ade [cam_gimbal] rewrite the pan/tilt control module (#3538)
- generic pan/tilt gimbal control with several builtin modes
- gimbal position and orientation configurable
- specialization possible for gimbals not matching the default scheme
  (with an example using the Caddx GM3 3 axis gimbal)
- remove all the old unused code using gimbal control
2025-09-17 16:55:30 +02:00
Gautier HattenbergerandGitHub 692de3f879 [traffic] support GPS_INT message for air-to-air traffic info (#3529)
- parse GPS_INT message
- don't update info on older messages based on gps tow
2025-09-01 14:54:18 +02:00
Gautier HattenbergerandGitHub 8900f6e47f [pprzlink] fix pprzlink proxy and add it as a tool (#3526)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
also update pprzlink
2025-08-28 22:33:50 +02:00
Gautier HattenbergerandGitHub 67f9388f85 [doc] fix uplink and dowlink class names (#3527)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
2025-08-28 15:14:34 +02:00
Gautier HattenbergerandGitHub eabbbe249c [natnet] use scipy rotation module instead of pyquaternion (#3492)
scipy is already part of the dependencies and can be installed from system packages which is not the case for pyquaternion only available with pip
2025-08-28 10:30:56 +02:00
Gautier HattenbergerandGitHub fb90ba29b1 [board] fix config of RTC for tawaki boards (#3506)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
The RTC should not be activated by default, it is done if needed by
modules that need it (e.g. sdlog).
Currently, it is not possible to start a tawaki without the logger
activated as RTC is activated but source not correctly selected.
2025-07-23 15:11:38 +02:00
Gautier HattenbergerandGitHub 27e59d9db5 [guided] support full ref update in guided mode (#3502)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
New message can set position, speed, acceleration and heading setpoint
for an accurate trajectory tracking.

Also fix the update of ref when h_ref is disabled.
2025-07-21 16:21:44 +02:00
Gautier HattenbergerandGitHub c4bd14098e Update control effectiveness script (#3501)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
* update control effectiveness script for new matrix format

* add a config file example for a quadcopter

- full indi
- no G2 vector
- new output format
2025-07-18 15:34:54 +02:00
Gautier Hattenberger 94cd1c1cf4 [fix] fix type error introduced by #3498
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
2025-07-10 21:11:02 +02:00
Gautier HattenbergerandGitHub 6497ecf431 [fix] don't use pointer cast to switch from Vect3 to Coor structures (#3498)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
It seems to be an undefined behavior and should be avoided.
2025-07-04 16:53:50 +02:00
Gautier HattenbergerandGitHub 378d7f02be [ins] cleaning of external pose INS (#3497)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
- refactor some code
- more configurable
- reduce the number of lines with values set to 0 (replaced by memset)
- fix state update (pointer cast this way is undefined behavior)
2025-07-04 11:26:52 +02:00
Gautier HattenbergerandGitHub b91239f7b5 [uart] use buffer write function for ChibiOS uart driver (#3491)
This way is about 10 times faster than using a for loop with single byte put function.
2025-06-27 11:39:03 +02:00
Gautier HattenbergerandGitHub c1203b04e8 [pprzlink] update pprzlink for the latest changes and corrections (#3489) 2025-06-26 09:02:21 +02:00
Gautier HattenbergerandGitHub 4b6c185516 [hybrid] add basic support for Heewing T1 Ranger VTOL (#3464)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
The Ranger T1 is a tilt-rotor hybrid plane. As a first basic approach,
two separated controls are used for hovering (INDI) and forward flight
(PID). The mixing is done by a dedicated module and the autopilot is
customized to support the specific modes.
A simple PID controller is added to the rotorcraft firmware as it is not
possible to directly reuse the one from fixedwing firmware.
In a future work, a full INDI version might be used, but this approach
can still serves as an example of customized autopilot.
A simulation model for JSBSim is also provided.
2025-06-24 15:02:36 +02:00
Gautier HattenbergerandGitHub 6370ff488b [calib] implement the calibration button for mag_viewer (#3472)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
2025-06-17 17:21:27 +02:00
Gautier HattenbergerandGitHub 65de23341e [build] fix compilation warnings and remove unused code (#3468)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Some code from base64 module in ocaml is deprecated but is only used by
the outdated tool broadcaster. Better remove them.
2025-06-12 11:21:23 +02:00
Gautier HattenbergerandGitHub e7273bda38 [mission] add an option to skip the first GOTO in mission PATH (#3463)
Issues due date / Add labels to issues (push) Has been cancelled
Doxygen / build (push) Has been cancelled
Going a GOTO can be problematic with hybrid aircraft when the flight
mode is different between a simple goto (hover) and a route (forward).
2025-06-04 22:42:30 +02:00
Gautier HattenbergerandGitHub 06a0542090 [nav] add an option for takeoff height (#3462)
Add a parameter to the takeoff function to specify the height at which the takeoff is considered finished.
A negative value tells that the default value (configurable from airframe file) should be used.
Update demo FP
2025-06-04 22:41:41 +02:00
Gautier HattenbergerandGitHub 12586a6811 [nav] navigation around poles for rotorcraft and hybrids (#3461)
Also support mission mode
2025-06-04 22:40:56 +02:00
Gautier HattenbergerandGitHub c18137ac49 [airspeed] fix auto offset for SDP3X driver (#3448)
Doxygen / build (push) Waiting to run
Docker update / build_docker_image (push) Has been cancelled
2025-04-04 16:52:21 +02:00
Gautier HattenbergerandGitHub 6f7342fdd8 [fix] utm coord was not initialized in landing module for FW (#3445)
Doxygen / build (push) Has been cancelled
Also
- kill throttle after landing
- add module takoff/land to demo mission flight plan
2025-04-01 18:39:10 +02:00
Gautier HattenbergerandGitHub 56a0f850e6 [ahrs] fix name of the setting handler to match the XML description (#3446) 2025-04-01 12:48:52 +02:00
Gautier HattenbergerandGitHub 294baad643 [ext] test for em module needed by dronecan (#3444)
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
* [ext] test for em module needed by dronecan

- add empy and setuptools to requirements
- fix dep order for dronecan makefile

* fix type
2025-03-26 10:18:24 +01:00
646a79795d [guided] rewrite guided mode example with a separated lib (#3442)
Doxygen / build (push) Has been cancelled
* [guided] rewrite guided mode example with a separated lib

* [Settings] Allows to set setting by name.

---------

Co-authored-by: Fabien-B <Fabien-B@github.com>
2025-03-21 16:51:41 +01:00
Gautier HattenbergerandGitHub 27860ffa49 [generator] add global node for selection of modes in gen_autopilot (#3436)
With this, the previous behavior of using macros in airframe file can be used to select the modes.
Update rotorcraft autopilot file accordingly.
2025-03-10 16:48:17 +01:00
Gautier HattenbergerandGitHub 1e50fb70ce [state] fix bug when checking if airspeed is valid (#3434)
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
Issues due date / Add labels to issues (push) Has been cancelled
It is currently clearing the flags instead of checking them.
Also remove the direct airspeed update from NPS, use ABI message only.
2025-02-21 01:13:25 +01:00
Gautier HattenbergerandGitHub 980e52eecf [autopilot] fix parsing of modules in generated AP files (#3432)
Doxygen / build (push) Waiting to run
2025-02-13 13:57:49 +01:00
Gautier HattenbergerandGitHub ca92171aec [autopilot] call the set_mode function at startup (#3425) 2025-02-03 11:07:18 +01:00
Gautier HattenbergerandGitHub c1fffe906a [build] check gnomecanvas package before compiling legacy GCS (#3422)
Doxygen / build (push) Has been cancelled
Docker update / build_docker_image (push) Has been cancelled
This module is not supported with the custon lablgtk2 for 24.04
2025-01-22 18:20:06 +01:00
Gautier HattenbergerandGitHub cdae9fa77b [makefile] don't build mavlink if required packages are missing (#3421)
This is a temporary measure to compile or not on ubuntu 24.04 until the
mavlink submodule is updated and integrate the required adaption to cope
with deprecated packages
2025-01-22 17:46:12 +01:00
Gautier HattenbergerandGitHub d2c88765a9 [ins] fix reset_ref for ins_alt and fixedwing nav (#3420) 2025-01-15 23:16:40 +01:00
Gautier HattenbergerandGitHub dfd8e93927 State interface input filter (#3409)
* [generator] generate unique ID and names table for modules
* [state] add accessors for the state origin
* [state] don't access directly to state origin, use getters
* [state] filter inputs with module ID
* [ahrs] convert AHRS modules to state input filter
- selection of ahrs with settings from each module
- init functions for each ahrs modules
- remove old chimu
* update unit test
* [ins] decoupled INS implementation
To allow multiple INS at the same time:
- remove weak functions from ins.c
- remove the INS_TYPE_H define
- use ABI message to trigger INS reset
* [state] protect for c++
2024-12-03 22:34:27 +01:00
Gautier HattenbergerandGitHub 32b0dc6944 Add new shell commands (sys_time and imu) (#3411)
* [shell] add imu shell command

read current config and values of IMUs from shell

* [shell] add a sys_time shell command

read current sys_time and registered timers
2024-11-27 15:30:39 +01:00
Gautier HattenbergerandGitHub ec2b5cb17b [module] fix tests of baro bmp280 module (#3414) 2024-11-27 15:24:09 +01:00
Gautier HattenbergerandGitHub 45abdefc86 [sonar] protect sonar reading by mutex for bebop (#3408)
Both ABI and telemetry messages are not thread-safe and should be
protected by mutex.
Simulation of sonar is handled by NPS.
2024-11-08 15:06:31 +01:00
Gautier HattenbergerandGitHub ade23ab09c [flight plan] add a max_speed attribute to fp instruction (#3387)
This is only for the rotorcraft firmware at the moment, and it is
replacing the explicit call to guidance_h_SetMaxSpeed to simplify the
flight plans.
2024-10-04 08:53:30 +02:00
Gautier HattenbergerandGitHub cea5c644e5 [flight plan] add on_enter and on_exit functions for nav block (#3385)
The functions passed to the attributes 'on_enter' and 'on_exit' will be
called once every time the flight plan state machine enters or leaves a
block, even if the block change is requested by the operator or if it is
caused by an exception.
It allows to properly activate and then disable services related to a
specific block.
Another good side effect is that the block and stage index are now
private and can't be modified by external modules. Old variables
nav_block and nav_stage can still be used as read-only.

Based on the work from:
Baptiste Pollien, Christophe Garion, Gautier Hattenberger, Pierre Roux, Xavier Thirioux.
A Verified UAV Flight Plan Generator. 2023 IEEE/ACM 11th International Conference on Formal Methods in Software Engineering (FormaliSE),
May 2023, Melbourne, Australia. pp.130-140, 10.1109/FormaliSE58978.2023.00021
2024-10-04 08:52:57 +02:00
Gautier HattenbergerandGitHub 51e43fb67d Collection of changes after IMAV2024 (#3370)
- update airframe and add competition flight plans
- fix flight plan DTD
- mag params for Bristol
- add a set_expo function (might be weak) for digital cam driver
- fix tag tracking for simulation, add getter functions
- add option to skip initial circle in nav survey
- fix jevois driver parsing
2024-09-28 14:54:49 +02:00
Gautier HattenbergerandFreek van Tienen 0a33f4be35 [tool] fix calibration tool output
XML is not correctly formated.
fix #3354
2024-09-15 23:43:36 +02:00
Gautier HattenbergerandGitHub ec1c1e7004 [imu] better default configuration for ICM42688 (#3339) 2024-07-24 10:48:43 +02:00
Gautier HattenbergerandGitHub 4359117d16 [tools] update parrot tools for python3 (#3326) 2024-07-03 11:14:52 +02:00
Gautier HattenbergerandGitHub ccfc57ef15 [stabilization] fix reporting of attitude setpoint in hybrid mode (#3309)
also add stab message to flight recorder
2024-06-17 14:25:09 +02:00
Gautier HattenbergerandGitHub 45c79f824a [autopilot] fix warning on mode changed after #3308 (#3317) 2024-06-16 15:27:37 +02:00
Gautier HattenbergerandGitHub 7adcd00fd7 [autopilot] send AP status at every changes (#3308)
- works for all firmwares implementing the autopilot_send_mode function
- avoid to wait the next telemetry message to have the notification
2024-06-15 11:29:50 +02:00
Gautier HattenbergerandGitHub 167b1768e5 Fix collection errors from ci (#3296)
* [chibios] remove unecessary option that makes a warning on H7

see ChibiOS forum: http://forum.chibios.org/viewtopic.php?t=5830

* [guidance] fix hybrid guidance

after merging #3248

* [natnet] remove call to function that doesn't exist

issue were only on verbose mode

* [conf] remove bebop_flip aiframe file

The FLIP mode is not supported anymore, better remove this example.
If flip is really needed, it should be implemented as a custom mode in
generated autopilot.
2024-06-11 14:26:53 +02:00
Gautier HattenbergerandGitHub 18fa11d99d [indi] fix thrust filtering after #3248 (#3297)
guidance indi thrust is broken when using specific force gain
2024-06-10 09:51:37 +02:00
Gautier HattenbergerandGitHub c158c856f3 [ocaml] use glib from gtk3 if gtk2 is not found (#3290)
Gtk3 doesn't support all features of gtk2 (or have a different interface), so if only gtk3 is found, GUI tools are not compiled, only CLI tools based only on glib.
If no gtk found, tools based on glib/gtk are not compiled.
Remove two old tools not used and not supported by gtk3.
2024-06-05 18:10:51 +02:00
Gautier HattenbergerandGitHub ce7fe4c23f [control] rework the stabilization for rotorcraft (#3248)
Introducing several changes to the control stask for the stabilization:
- new structures: stabilization, stab (att and/or rates) and thrust (vector)
- more functional approach: stabilization receives the stab and thrust
  setpoints from guidance and fill command vector at the end
- modes and sub-modes are redefined (split stab and guidance modes),
  some AP modes are removed (FLIP and MODULE)
- RC read functions are removed and replaced by ABI bindings, one for
  each part (AP, stab, guidance_h, guidance_v) with dedicated functions
- transition ratio (float in [0-1]) replace transition_percentage (int)
- the AP_MODULE mode is replaced by generated autopilot
- the ABI hack for guidance indi is not needed anymore
- AP generator supports a new 'store' attribute to use return values of
  functions
- cleaning of the stabilization API (for setter functions)
2024-05-21 17:01:38 +02:00
Gautier Hattenberger f41c32a4bf mark v7.0 unstable
since it is a major version, backward compatibility is not guaranteed

WARNING: this tag have been moved to integrate the v6.4 stable version
2024-05-21 16:06:30 +02:00
Gautier Hattenberger 232f532dc3 stable release v6.4 2024-05-21 15:45:39 +02:00