Commit Graph

813 Commits

Author SHA1 Message Date
Julian Oes 04ea4f9b3a uavcan: add OpenDroneID ArmStatus, operator ID
In order to have operator ID be sent by QGC, we need to forward
ArmStatus from the remote ID module (here on DroneCAN) to MAVLink.
2024-09-02 16:20:10 +12:00
Jaeyoung Lim e008ca24f1 Remove euler angles from attitude setpoint (#23482)
* Remove euler angles from attitude setpoint message

* Remove usage of euler angles in attitude setpoint messages

This commit removes the usage of euler angles in the vehicle_attitude_setpoint messages

* Fix standard vtol
2024-08-12 16:42:51 +02:00
Matthias Grob fdfe43471e mavlink_receiver: limit access through instances with gimbal mode
This adds explicit handling for the few things we want to allow through a MAVLink instance dedicated to a gimbal/(camera) payload as per the MAVLink gimbal mode configuration.
2024-08-09 10:13:44 -04:00
Matthias Grob 6cf0bf5e19 Support MAVLink extension MANUAL_CONTROL.aux
Note that in uORB we don't currently know if the aux fields are
specifically valid or not so we can also not set the corresponding
bits in the field.
2024-08-09 10:49:38 +02:00
Silvan Fuhrer 33701aa3d5 BatteryStatus: remove voltage_filtered_a
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2024-07-03 16:41:49 +02:00
Silvan Fuhrer c2ae6a7e24 BatteryStatus: remove current_filtered_a
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2024-07-03 16:41:49 +02:00
zhangteng0526 e03e0261a1 Fix buffer overflow in mavlink_receive.cpp 2024-07-03 08:11:32 +02:00
Matthias Grob 68769ea0ec mavlink: use reference instead of pointer to access the MAVLink instance from protocol classes 2024-06-05 16:13:52 +02:00
Matthias Grob 9a7a977625 mavlink_receiver: put all message handling in the same function 2024-06-05 16:13:52 +02:00
asimopunov f95a2021cd adsb: warnings fixes & remove UTM_GLOBAL_POSITION (#21663)
- warn about full traffic conflict buffer at 1/60hz.
- add conflict expiry for buffer.
- use only events for buffer full warning. mavlink_log_critical no longer needed.
- use icao address for conflict warnings id, stop using uas_id. UTM_GLOBAL_POSITION assumed deprecated.
- stop spamming when buffer is full
- fix warning wording if buffer is full.
- remove UTM_GLOBAL_POSITION

Fixes failing unit test:
* [adsbTest] Reduce conflict timestamps - not enough time has passed in ci
- failed ci output - (passes locally with make tests TESTFILTER=AdsbConflict)
- Timestamp: 6000000000
- Time now: 457720038
- Time since timestamp: 0
- Old Conflict warning expired: 0
- --------------------
- adsb_conflict._traffic_state 0
- ../../src/lib/adsb/AdsbConflictTest.cpp:244: Failure
- Value of: adsb_conflict._traffic_state == TRAFFIC_STATE::REMIND_CONFLICT
-   Actual: false
- Expected: true
2024-04-22 10:14:39 +02:00
Eric Katzfey d8fabd11d0 Send mavlink manual control buttons field in manual control input topic (#22988)
Pass along button states from manual control mavlink message in new buttons field in manual control input topic
2024-04-09 12:35:42 -07:00
Kjersti Brynestad 91e3ec5884 mavlink: Handle NAMED_VALUE_INT 2023-12-12 20:50:46 -05:00
Matthias Grob d03030e881 mavlink_receiver: ifdef guard for velocity limits
Since this message is defined in development.xml and
not yet common.xml and some targets use
common.xml and the builds then failed.
2023-12-08 21:17:59 +01:00
Matthias Grob ca6db94e39 Velocity limit: remove duplicate message and if(true) 2023-12-08 21:17:59 +01:00
Marcin 4cf43a68a3 FlightTask: add subscription to VELOCITY_LIMITS msg 2023-12-08 21:17:59 +01:00
murata f29c5742be mavlink: Capitalize the first letter of Landing 2023-11-12 15:33:51 +01:00
alessandro 428e7d7754 mavlink: remove double assignment of battery field 2023-11-03 11:49:25 -04:00
bresch 23b31cc5fd manual_yaw: compensate for yaw estimate convergence
When the yaw estimate is converging, the controller makes the drone yaw
in order to follow the current setpoint. This is unintuitive for the
pilot and it is preferable if the drone continues to fly towards the
same physical direction.
2023-08-30 09:56:19 +02:00
Ludovic Vanasse 3a166247c1 Add condition for Iridium mode to not send params change after a time
In the mavlink_receiver code, after a while it will try to resend some
parameter update through the MAVLink instance. But for Iridium links
those are not a good idea. So this adds a condition that prevent the
sending if the MAVLink instance is in Iridium mode.

Related to issue #21496
2023-08-16 11:28:36 -04:00
Sergei Grichine f000238987 SensorGps.msg: switch to double precision for lat/lon/alt
To match https://github.com/PX4/PX4-GPSDrivers/pull/132 - adding high precision RTK lat/lon/alt components
2023-07-13 07:50:09 +02:00
alexklimaj dc99a875c3 Mavlink receiver unadvertise all
uorb multi pubs in destructor
2023-05-23 18:40:06 -06:00
Matthias Grob 7b6f45079b ManualControl: use input validity flag to check for RC calibration 2023-05-23 17:24:17 +02:00
Silvan Fuhrer 1218d9b2fc mavlink_mission: remove support for DO_SET_CAMERA_ZOOM
Camera controls should not happen through the flight controller, and
the control allocation has no means of controlling the camera zoom.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-03-16 11:55:45 +01:00
Silvan Fuhrer 27658354da MavlinkReceiver: remove support for SET_ACTUATOR_CONTROL_TARGET
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-03-16 11:55:45 +01:00
AlexKlimaj e375e02974 Add GPS spoofing state 2023-03-14 20:28:32 -04:00
Daniel Agar f520d4b3be Update submodule mavlink to latest Sat Jan 7 12:38:21 UTC 2023
- mavlink in PX4/Firmware (8bc88ed526044a864427a4b65135c3baffabb2ef): https://github.com/mavlink/mavlink/commit/0c7792edfeee7cf08e531cb4ce5b4f01854e5724
    - mavlink current upstream: https://github.com/mavlink/mavlink/commit/74dee05f0cd121ae27e021d011a04b161c9d0440
    - Changes: https://github.com/mavlink/mavlink/compare/0c7792edfeee7cf08e531cb4ce5b4f01854e5724...74dee05f0cd121ae27e021d011a04b161c9d0440

74dee05f 2023-01-04 Beat Küng - component_metadata: add translation schema (#1934)
0267c4cf 2023-01-04 Bob Long - common.xml: add fuel_pressure ext. to EFI_STATUS (#1938)
c64818e8 2023-01-04 Mathieu Mirmont - common.xml: fix typos in AIS_TYPE enumerate (#1939)
2306bf79 2023-01-04 Hamish Willee - Update pymavlink (#1940)
0077129b 2022-10-06 Peter Hall - Development: update airspeed message
fbf84c64 2022-10-05 Peter Hall - gitignore: add /.vscode
817c44d8 2022-12-15 Mathieu Mirmont - Add the MAV_TYPE_VTOL_TILTWING aircraft type (#1933)

Co-authored-by: PX4 BuildBot <bot@px4.io>
2023-01-07 10:55:05 -05:00
Matthias Grob 331cb21dee manual_control_setpoint: change stick axes naming
In review it was requested to have a different name for
manual_control_setpoint.z because of the adjusted range.

I started to investigate what naming is most intuitive and found
that most people recognize the stick axes as roll, pitch, yaw, throttle.
It comes at no surprise because other autopilots
and APIs seem to share this convention.

While changing the code I realized that even within the code base
the axes are usually assigned to a variable with that name or
have comments next to the assignment clarifying the axes
using these names.
2022-11-28 19:25:55 +01:00
Matthias Grob 83246c84cf Switch manual_control_setpoint.z scaling from [0,1] to [-1,1]
To be consistent with all other axes of stick input and avoid future
rescaling confusion.

Note: for the MAVLink message 69 MANUAL_CONTROL it's using the full range
according to the message specs now [-1000,1000].
2022-11-28 19:25:55 +01:00
Matthias Grob 5579e319ff mavlink_receiver: refactor forgotten manual_control_setpoint naming 2022-11-28 19:25:55 +01:00
Michael Schaeuble d7fde289de Use gimbal attitude for the camera feedback when available
The CameraFeedback module used only the vehicle attitude for the camera orientation so far. With this change, the gimbal_device_attitude_status is used to compute the global camera orientation when a gimbal is used.
2022-11-14 09:26:14 -05:00
Matthias Grob 5ca28dd6dc Use isAllFinite() in all places that check finiteness on entire vectors or matrices 2022-10-19 19:09:20 +02:00
Thomas Debrunner 0af87ec745 mavlink: initial OPEN_DRONE_ID_BASIC_ID/OPEN_DRONE_ID_LOCATION support 2022-10-04 14:40:59 -04:00
chris1seto 77fdce9f3c drivers/rc/crsf_rc: update standalone driver for CRSF and direct support for lq/rssi (#20084)
Co-authored-by: Chris Seto <chris1seto@gmail.com>
2022-09-23 19:19:25 -04:00
Daniel Agar 13f9eabd70 delete unused actuator_controls_3 2022-09-09 09:14:09 -04:00
Beat Küng fcadc69e52 mavlink_receiver: set timestamp to gps_inject_data_topic 2022-08-25 22:02:15 -04:00
Daniel Agar dfdfbbfa9c msg/vehicle_odometry.msg: simplify covariance handling and update all usage (#19966)
- replace float32[21] URT covariances with smaller dedicated position/velocity/orientation variances (the crossterms are unused, awkward, and relatively costly)
 - these are easier to casually inspect and more representative of what's actually being used currently and reduces the size of vehicle_odometry_s quite a bit
 - ekf2: add new helper to get roll/pitch/yaw covariances
 - mavlink: receiver ODOMETRY handle more frame types for both pose (MAV_FRAME_LOCAL_NED, MAV_FRAME_LOCAL_ENU, MAV_FRAME_LOCAL_FRD, MAV_FRAME_LOCAL_FLU) and velocity (MAV_FRAME_LOCAL_NED, MAV_FRAME_LOCAL_ENU, MAV_FRAME_LOCAL_FRD, MAV_FRAME_LOCAL_FLU, MAV_FRAME_BODY_FRD)
 - mavlink: delete unused ATT_POS_MOCAP stream (this is just a passthrough)

Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2022-08-04 12:55:21 -04:00
Hamish Willee 30e2490d5b Docs are now in user guide and main (#19977)
* Fix links to docs in source to point to docs on main not master

* More docs and scripts that need to point to main
2022-08-01 11:39:39 +10:00
alexklimaj f9b8ca1326 Support two RTCM links with the same corrections
Add selected_rtcm_instance to sensor_gps message to track loss of rtcm links

Publish _rate_rtcm_injection
2022-07-15 08:20:27 +02:00
Junwoo Hwang 32ae00fd44 Move Vehicle Command Result Enum defs to Vehicle Command Ack (#19729)
- As it is always only used for the vehicle command ack message
- It was a duplicate, hence making it error prone for maintainment
- The uORB message comments were updated to make the relationship with
the MAVLink message / enum definitions clear
2022-07-07 16:15:11 +02:00
Daniel Agar d5839e2dd5 optical flow sensor pipeline overhaul
- all sources of optical flow publish sensor_optical_flow
 - sensor_optical_flow is aggregated by the sensors module, aligned with integrated gyro, and published as vehicle_optical_flow

Co-authored-by: alexklimaj <alex@arkelectron.com>
2022-06-20 20:56:56 -04:00
Beat Küng b9475d6ebe mavlink_shell: set target system and component id
These got added in https://github.com/mavlink/mavlink/pull/1725 and need
to be set for correct routing.
2022-06-17 09:29:43 -04:00
Nicolas MARTIN a0cb7f6258 HITL: undefined time_remaining_s should be NAN 2022-05-20 09:38:43 -04:00
Matthias Grob 200124f094 mavlink_receiver: check entire Vectors for NAN
Note: Behavioral change Inf also results in the flag being true.
2022-05-12 17:19:48 +02:00
Matthias Grob 8ca28f3796 Separate message for trajectory setpoint 2022-05-12 17:19:48 +02:00
Daniel Agar f390f52058 drivers/differential_pressure: remove lib/drivers/airspeed dependency and cleanup
- split ms4525_airspeed into separate ms4515 and ms4525 drivers
2022-04-26 08:39:19 -04:00
Daniel Agar d1d15a6f6d differential pressure remove filters from drivers and average in sensors/airspeed 2022-04-26 08:39:19 -04:00
Daniel Agar 98623f69a3 update mavlink submodule to latest
- update MAV_TYPE VTOL usage for current mavlink
2022-04-07 20:35:41 +02:00
Daniel Agar 0c31f63896 sensors: add baro calibration and cleanup
- sensor_baro.msg use SI (pressure in Pascals)
 - update all barometer drivers to publish directly and remove PX4Barometer helper
 - introduce baro cal (offset) mainly as a mechanism to adjust
relative priority
 - commander: add simple baro cal that sets baro offsets to align with
GPS altitude (if available)
 - create new sensors_status.msg to generalize sensor reporting
2022-03-26 16:08:41 -04:00
Thies Lennart Alff f1ec6ea026 make mavlink atttitude setpoints non-exlusive for offboard setpoints 2022-03-23 11:06:40 -04:00
Julian Oes f2216dff55 mavlink: don't send gimbal_device_attitude_status
If we receive gimbal_device_attitude_status by mavlink we should not
re-send it as we are already supposed to be forwarding mavlink traffic
from the gimbal to the ground station.
2022-02-07 19:21:15 -05:00