Compare commits

..

2389 Commits

Author SHA1 Message Date
Daniel Agar d72d6ea28e WIP: in tree Dockerfile and github actions push to github registry 2021-05-06 15:08:03 -04:00
PX4 BuildBot e265ebabc5 Update submodule ecl to latest Thu May 6 12:39:12 UTC 2021
- ecl in PX4/Firmware (a300d32523e24df3f366a0d564b764261e1c1909): https://github.com/PX4/PX4-ECL/commit/a7b8afe420f438554ad90bcba0f1f4872325e75b
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/29243ac5cbb5d27ac71744e88afcd786df6f748d
    - Changes: https://github.com/PX4/PX4-ECL/compare/a7b8afe420f438554ad90bcba0f1f4872325e75b...29243ac5cbb5d27ac71744e88afcd786df6f748d

    29243ac 2021-05-05 bresch - yaw_reset: reduce minimum vector length to compute yaw error
aad4840 2021-05-02 Kabir Mohammed - EKF: increase allowed difference between flow and gyro ODRs
2021-05-06 13:53:40 -04:00
Daniel Agar 9419f9c5e8 Update submodule mavlink v2.0 to latest Thu May 6 12:39:02 UTC 2021 2021-05-06 13:52:43 -04:00
Silvan Fuhrer 08dab18a8b vtol_type: in FW, set min PWM to PWM_DEFAULT_MIN instead of PWM_MOTOR_OFF
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-05-06 10:20:24 +02:00
benjinne 099c2d13f6 dshot: add 3D capability 2021-05-06 08:12:07 +02:00
Daniel Agar 177ee4cbca drivers/optical_flow/paw3902: properly discard samples after mode change
- respect mode 2 shutter requirements from datasheet (should not operate with Shutter < 0x01F4 in Mode 2)
 - sensor reset is handled by mode change
2021-05-05 21:48:01 -04:00
Daniel Agar b1ebd16c61 ekf2: improve selector reset handling
- handle reset count rollover (uint8_t)
 - compute full reset delta if primary estimator instance has changed or if we missed a reset
2021-05-05 21:45:13 -04:00
Alessandro Simovic d1d5eba320 follow-me: log follow_target msg 2021-05-05 16:13:50 -04:00
Alessandro Simovic 48f3bd4078 follow-me: formatting 2021-05-05 16:13:50 -04:00
Alessandro Simovic 5f19eeaaa5 follow_target: copy also velocity fields from uorb 2021-05-05 16:13:50 -04:00
Alessandro Simovic 2d6bc9b6e0 follow_target: use actual velocity measurement 2021-05-05 16:13:50 -04:00
Alessandro Simovic 5d9b3504f7 follow-target: correctly set "updated" flag 2021-05-05 16:13:50 -04:00
Alessandro Simovic f1fca0939f follow-target: name variable correctly 2021-05-05 16:13:50 -04:00
David Sidrane 3702140e24 PWMOut:Arm once all channels are initalized. 2021-05-05 20:48:06 +02:00
David Sidrane 3d166d3279 PWM:Add Channel mask to up_pwm_servo_arm & up_pwm_servo_deinit 2021-05-05 20:48:06 +02:00
David Sidrane 19fa5cfe25 px4_fmu-v6x: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane baa37c1143 px4_fmu-v5x: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane 0385245ae1 px4_fmu-v5: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane 1f61dcfb06 modalai_fc-v1: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane 3779ff3690 holybro_pix32v5: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane 21cf26a69f holybro_durandal-v1: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane a654c37306 cuav_x7pro: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane 07e38563ba cuav_nora: Disable OTG_ID_GPIO 2021-05-05 20:48:06 +02:00
David Sidrane d5b60f7002 NuttX with WIP OTG_ID 2021-05-05 20:48:06 +02:00
David Sidrane 923af2c65b spracing_h7extreme: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 2d3800fa25 px4_fmu-v6x: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 4f8c1ccfe8 px4_fmu-v6u: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 7dd57d55f6 px4_fmu-v5x: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 69bf437e9a px4_fmu-v5: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 633fbe147a nxp_fmuk66-v3: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 118839e75c nxp_fmuk66-e: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 3f5a0e49a4 mro_pixracerpro: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 86360d076c mro_ctrl-zero-h7: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 3820f761b1 mro_ctrl-zero-h7-oem: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 50d3af1ba1 mro_ctrl-zero-f7: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 867aa9d4bc mro_ctrl-zero-f7-oem: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 310d166899 modalai_fc-v1: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 9c761d9ae5 holybro_pix32v5: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane b3b74eaaf6 holybro_kakutef7: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 4c8dca738c holybro_durandal-v1: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 4da1ec1146 cubepilot_cubeyellow: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 1a5741f984 cubepilot_cubeorange: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 4d4d8ed887 cuav_x7pro: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane eae01a06e7 cuav_nora: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane d6a54910b4 av_x-v1: Initalize PWM as input with Pull Downs 2021-05-05 20:48:06 +02:00
David Sidrane 362db92515 Define PX4_MAKE_GPIO_INPUT_PULL_DOWN 2021-05-05 20:48:06 +02:00
David Sidrane dd4ffb3c0c PWMOut:Fix pwm status 2021-05-05 20:48:06 +02:00
David Sidrane 44cdc52ef8 PWMOut:Use rates from single instance & init all instances channels 2021-05-05 20:48:06 +02:00
David Sidrane dcbfc9de2d io_timer:Fixed imposible logic 2021-05-05 20:48:06 +02:00
Peter van der Perk 9a085126fd FMUK66 free up some RAM 2021-05-05 18:52:56 +02:00
Jukka Laitinen ac6e7a1c6c FlightTaskManualAltitude: Fix double->float conversion in initialization
This gives an error on some new compilers, e.g. riscv64-unknown-elf 10.2.0

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-05-05 09:31:07 +02:00
Jukka Laitinen 532f370e7d Fix implicit float to double conversions
The both results of ?: should be of same type, and some compilers give error
on this:
	" implicit conversion from 'float' to 'double' to match other result of conditional"

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-05-05 09:31:07 +02:00
Peter van der Perk 62dc926891 Add support for UCANS32K146B board revision 2021-05-04 22:13:24 -04:00
Daniel Agar c1d3be4258 Makefile: keep git clean for submodules to resolve incomplete dependency problems 2021-05-04 21:22:56 -04:00
Daniel Agar 68a9e981b1 boards: px4_fmu-v5_optimized disable temperature_compensation to save flash 2021-05-04 21:20:32 -04:00
Daniel Agar f5b6656a6c cmake: set MAX_CUSTOM_OPT_LEVEL to -O3 if Release 2021-05-04 21:20:32 -04:00
Daniel Agar 3b7ce61901 px4_work_queue: increase wq:rate_ctrl stack slightly 2021-05-04 17:40:56 -04:00
Daniel Agar 3ec40a5956 collision_prevention: fix CP_GO_NO_DATA parameter type 2021-05-04 16:41:32 -04:00
Peter van der Perk 24c2967511 legacy_data_types specify branch 2021-05-04 13:23:14 -04:00
Matthias Grob ee87257a8d FlightModeManager: move velocity control feedback into FlightTask
This was only handled outside because FlightTaks lived in the
multicopter position controller which produces the data that was
needed but now it doesn't make sense anymore to handle this
subscription separately.

It's better to have it inside the base task to have the data available
on task activation sucht that e.g. Altitude mode can take over smoothly
from Position mode.
2021-05-04 16:47:48 +02:00
Matthias Grob c28533677d MulticopterLandDetector: use setpoint generation to infer decend intent
For any normal use case where a downwards velocity setpoint is set
this works exactly the same as before.
E.g. autonomous landing, landing in Altitude or Position mode

The advantage is that the very common case where a vehicle tries
to hold a constant altitude but fails to do so e.g. during a hard brake
with too much lift the resulting downwards velocity was interpreted
as descend intent and since the vehicle already struggled to hold altitude
with low thrust and was not moving fast anymore because it was braking
this lead to a lot more false positives on certain vehicle types.

The disadvantage is that not setting a downwards velocity setpoint but
just moving the position setpoint into the ground does not result in
land detection anymore. We do not use this method of landing anymore for
quite a while. It's not recommended and I wonder if there's some rare use
case like offboard where this is done.

We could add an additional case for the specific case to land with a
position setpoint only.
2021-05-04 16:43:33 +02:00
Matthias Grob 2e292abfff MulticopterLandDetector: Make land detection time configurable
The tree stages used arbitrary 350, 250 300ms totally 900ms
So this changes it to each stage to a third of the parameter.
Default it is 1 second -> 333ms per stage.
2021-05-04 16:43:33 +02:00
RomanBapst 269ce07cb5 land detector: log more states in order to facilitate debugging ground contact state
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-05-04 16:43:33 +02:00
Daniel Agar 3348869ae1 Makefile: git clean properly preserve project files (.project, .cproject, etc) 2021-05-04 09:49:50 -04:00
Jari Nippula 04b7ee43bc protocol_splitter: Sp2Header defined as union (#17511)
Aligned with agent_protocol_splitter to make byte access easier
for checksum generation

Co-authored-by: Nuno Marques <n.marques21@hotmail.com>
2021-05-04 10:09:24 +02:00
Mikołaj Grzybek 4e69952ee4 arch.sh: Syntax error fix
Script failed for me with following error
PX4-Autopilot/Tools/setup/arch.sh: line 159: syntax error near unexpected token `else'
PX4-Autopilot/Tools/setup/arch.sh: line 159: `			else'
Seems like there is nothing to do in case of positive if case.
Changed code should maintain logic
2021-05-04 10:06:39 +02:00
RomanBapst cd4378b8c6 vtol: init boolean consistently
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-05-03 18:58:26 -04:00
Thomas ab10e68a40 update Quadchute trigger from mavlink PR 1569 2021-05-03 21:44:27 +03:00
Thomas bf9758247b add VEHICLE_VTOL_STATE_QC and remove hardcoding 2021-05-03 21:44:27 +03:00
Thomas d3ddbe8db5 Allow quadchute from external command 2021-05-03 21:44:27 +03:00
Peter van der Perk ecc5154a44 Reflect dynamically allocate block pointers instead of using heap 2021-05-03 14:04:02 -04:00
David Sidrane cd2aceb363 stm32_common:board_reset Fix reboot -b broke by canbootloader 2021-05-03 05:21:25 -07:00
Silvan Fuhrer 2c6b3eeb02 Navigator: NAV_CMD_DO_VTOL_TRANSITION: accept once in correct vtol state
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-05-03 08:40:54 +02:00
Silvan Fuhrer 5579a1d789 Navigator: remove WORK_ITEM_TYPE_CMD_BEFORE_MOVE
It was used to make the vehicle needing to accept the waypoint after a VTOL transition in the new VTOL mode

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-05-03 08:40:54 +02:00
Silvan Fuhrer 3c4b0c1b8c tiltrotor: only allow increasing tilt during first part of transition
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-05-02 21:51:09 -04:00
Jukka Laitinen fa9fdce6e6 sensors/vehicle_gps_position: Fix raw_dt and present_dt calculation in gps_blending
If the GPS data is passed from companion computer, there may be inaccuracies
with timesync. This may cause time deltas to overflow.

Make the time delta calculation using floats directly, wich results in negative
numbers in case there are such inaccuracies.

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-05-02 13:59:50 -04:00
Daniel Agar e78a4287f9 parameters: attempt import multiple times 2021-05-02 13:48:16 -04:00
Daniel Agar 3b24abaa1b Makefile: clean use git clean to delete all gitignore files recursively 2021-05-02 13:47:54 -04:00
Daniel Agar feebb24106 logger: skip multi-EKF logging if CONSTRAINED_MEMORY 2021-05-02 13:47:28 -04:00
Femtomes 783a780207 drivers/gps: add femtomes gps driver protocol 2021-05-02 13:46:39 -04:00
Julian Oes abee13df1a mavlink: improve rx stats printf 2021-05-02 13:45:39 -04:00
Julian Oes d96ba2d88a mavlink: use 4s for HITL
This is more inline with SITL.
2021-05-02 13:45:39 -04:00
Julian Oes e9a1599355 mavlink: clang-tidy fix 2021-05-02 13:45:39 -04:00
Julian Oes aa0752ad86 mavlink: fix pthread usage 2021-05-02 13:45:39 -04:00
Julian Oes 5784f1d951 mavlink: add detailed stats about rx messages 2021-05-02 13:45:39 -04:00
Julian Oes 370d9ee409 mavlink: use px4::atomic instead of volatile 2021-05-02 13:45:39 -04:00
Julian Oes 4498509426 mavlink: move thread handling into MavlinkReceiver
In my opinion this makes it much cleaner and will allow mavlink main to
directly call the receiver.
2021-05-02 13:45:39 -04:00
Julian Oes 71bd35fcaa mavlink: keep track of seq for any component
Instead of only keeping track of the sequence ID of specific "supported"
components, we now keep track of any sysid/compid of an incoming
message. Before this change, unknown components (such as jMAVSim) would
completely screw up the mavlink message stats and create confusion (at
least in my case).

With this change we currently keep track of up to 8 other components.
Once we reach the limit, we will print a warning.
2021-05-02 13:45:39 -04:00
Julian Oes 6ae23e7b7b mavlink: fix HITL battery status publication
Without these fields the pre-arm check would complain and fail.

Also, the voltage is adjusted to be at around 70% rather than 30% which
would almost start to trigger warnings.
2021-05-02 13:45:39 -04:00
Julian Oes cfcc074e9d mavlink: remove unused methods 2021-05-02 13:45:39 -04:00
Daniel Agar b4e0a8396e Tools/process_sensor_caldata.py - median filter sensor data
- this makes it a bit easier to see what's going on now that the raw sensor data (sensor_accel, sensor_gyro) is completely unfiltered
2021-05-02 13:42:09 -04:00
Daniel Agar 5ec5a12f5e Tools/setup: update ubuntu.sh with current NuttX dependencies 2021-05-02 13:10:47 -04:00
TSC21 18dc0e4900 update submodule micro-CDR 2021-05-02 13:05:16 -04:00
Daniel Agar 6e2343a485 Jenkins: fix new px4io/px4-dev-nuttx-focal container tag 2021-05-02 12:34:48 -04:00
SalimTerryLi 514d4fd57b drivers/distance_sensor: GY-SR04 sonar range finder driver 2021-05-02 12:09:35 -04:00
PX4 BuildBot 32d354e5fe Update submodule ecl to latest Sun May 2 12:39:08 UTC 2021
- ecl in PX4/Firmware (cb999f37d4891ebfbbc21b4ce9b3851888b39ad4): https://github.com/PX4/PX4-ECL/commit/5d34d7a24ef72b826c320a3259ee0ec68b1936df
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/a7b8afe420f438554ad90bcba0f1f4872325e75b
    - Changes: https://github.com/PX4/PX4-ECL/compare/5d34d7a24ef72b826c320a3259ee0ec68b1936df...a7b8afe420f438554ad90bcba0f1f4872325e75b

    a7b8afe 2021-04-30 Eike - Allow rangefinder fusion in vision height mode (Fix for #994) (#999)
4ac57d3 2021-04-25 Daniel Agar - EKF: increase fault flags value size to fit current flag bits (> 16)
2021-05-02 11:47:36 -04:00
Daniel Agar 92dc1a71a6 github actions delete MAVROS avoidance tests
- these aren't currently running properly on github actions, but continue to use build resources
2021-05-02 11:44:06 -04:00
Daniel Agar 165420598e Update submodule mavlink v2.0 to latest Sat May 1 00:38:27 UTC 2021 2021-05-01 19:17:28 -04:00
PX4 BuildBot 8ef10c9b38 Update submodule public_regulated_data_types to latest Sat May 1 12:41:36 UTC 2021
- public_regulated_data_types in PX4/Firmware (bb5225ddae32f3a85f6c01fa5957f1b30cb73a14): https://github.com/UAVCAN/public_regulated_data_types/commit/309b251a7e8d713d6bf428e18e28d91d5f07b73e
    - public_regulated_data_types current upstream: https://github.com/UAVCAN/public_regulated_data_types/commit/1337b1c86fee5bd3f3c3c0f1027bcf19e5c08aae
    - Changes: https://github.com/UAVCAN/public_regulated_data_types/compare/309b251a7e8d713d6bf428e18e28d91d5f07b73e...1337b1c86fee5bd3f3c3c0f1027bcf19e5c08aae

    1337b1c 2021-04-23 Pavel Kirienko - Update the `nominal_voltage` in battery parameters (#114)
2021-05-01 19:17:02 -04:00
PX4 BuildBot 199db72d5f Update submodule public_regulated_data_types to latest Sat May 1 12:41:39 UTC 2021
- public_regulated_data_types in PX4/Firmware (d052cf4a6963d576e0e108b6c95b6fa4fab57584): https://github.com/UAVCAN/public_regulated_data_types/commit/309b251a7e8d713d6bf428e18e28d91d5f07b73e
    - public_regulated_data_types current upstream: https://github.com/UAVCAN/public_regulated_data_types/commit/1337b1c86fee5bd3f3c3c0f1027bcf19e5c08aae
    - Changes: https://github.com/UAVCAN/public_regulated_data_types/compare/309b251a7e8d713d6bf428e18e28d91d5f07b73e...1337b1c86fee5bd3f3c3c0f1027bcf19e5c08aae

    1337b1c 2021-04-23 Pavel Kirienko - Update the `nominal_voltage` in battery parameters (#114)
2021-05-01 19:16:42 -04:00
mcsauder 4eb758edf0 Alphabetize flight_mode_manager CMakeLists.txt list, and group/format types in FlightTask.cpp/hpp. 2021-05-01 10:46:27 -04:00
Yannick Fuhrer 759a60ac82 Update rc.vtol_defaults
based on our experience with VTOL it makes sense to change the yaw mode default. You always want your VTOL to yaw in transition direction before starting the transition.
2021-05-01 10:45:14 -04:00
PX4 BuildBot dd0465070c Update submodule jMAVSim to latest Sat May 1 12:41:22 UTC 2021
- jMAVSim in PX4/Firmware (d2a118ee86): https://github.com/PX4/jMAVSim/commit/358b6cca4093646eb96e0cb075e45efa8f4a0c48
    - jMAVSim current upstream: https://github.com/PX4/jMAVSim/commit/2b610caab81726ab79019de0f2fa8cff5e341bd5
    - Changes: https://github.com/PX4/jMAVSim/compare/358b6cca4093646eb96e0cb075e45efa8f4a0c48...2b610caab81726ab79019de0f2fa8cff5e341bd5

    2b610ca 2021-04-21 Julian Oes - Merge pull request #126 from PX4/pr-forwarding
75f2aa3 2021-04-21 Julian Oes - Serial/TCP/UDP ports: mark messages as forwarded
2021-05-01 10:31:43 -04:00
Daniel Agar 186bc2bda4 Update submodule GPSDrivers to latest Sat May 1 00:38:31 UTC 2021 2021-05-01 10:31:09 -04:00
PX4 BuildBot d2a118ee86 Update submodule sitl_gazebo to latest Sat May 1 00:38:24 UTC 2021
- sitl_gazebo in PX4/Firmware (283138e87d46e573ce101033e01a59b273430928): https://github.com/PX4/PX4-SITL_gazebo/commit/05e2cd9c03ffa77f0c0d5bd3e788d33e06480b25
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/4c27fc7dd659c262257abeea2308e2f1c54e9029
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/05e2cd9c03ffa77f0c0d5bd3e788d33e06480b25...4c27fc7dd659c262257abeea2308e2f1c54e9029

    4c27fc7 2021-04-20 JaeyoungLim - Update mavsdk versions for firmware SITL tests (#741)
2021-04-30 21:04:25 -04:00
David Sidrane 92344b96b3 CI Update to 2021-04-29 2021-04-30 14:32:40 -04:00
Julian Oes 4f52c0b6da mavsdk_tests: unused var and index fix 2021-04-29 21:08:33 -04:00
Julian Oes f16913c175 mavsdk_tests: fix timeout at 1x speed 2021-04-29 21:08:33 -04:00
Julian Oes e7fcfbf658 mavsdk_tests: use global position instead of local
We are currently not testing with flow only anyway, so we might as well
remove this for now.
2021-04-29 21:08:33 -04:00
Julian Oes 43fccece61 mavsdk_tests: check installed version
Starting with MAVSDK 0.39.0 we can specify the version required. This
way we can fail at configure time instead of later during compilation or
linking.
2021-04-29 21:08:33 -04:00
Julian Oes 14e51098e5 workflows: use MAVSDK_VERSION in sitl_tests 2021-04-29 21:08:33 -04:00
Julian Oes 7384bd2675 mavsdk_tests: specify required MAVSDK version
This way it can be better picked up by CI scripts.
2021-04-29 21:08:33 -04:00
Daniel Agar 64688b04d8 boards: mro pixracerpro set BOARD_SUPPORTS_RC_SERIAL_PORT_OUTPUT instead of RC_SERIAL_SINGLEWIRE 2021-04-29 21:06:39 -04:00
Peter van der Perk 96bc58f0eb CMake Bloaty add static ram usage breakout 2021-04-29 10:16:43 -04:00
TSC21 4f098a01bc drivers: protocol_splitter: some style updates 2021-04-29 11:57:35 +02:00
Jari Nippula 9980d2a556 Utilize header struct instead of control bytes directly 2021-04-29 09:37:48 +02:00
Jari Nippula 757f1df068 Protocol_splitter: 4-byte header with checksum 2021-04-29 09:37:48 +02:00
korotkoves d62204856c ROMFS/px4fmu_common/init.d-posix/rcS: split and source data from files in PATH 2021-04-28 09:00:47 +02:00
CUAVcaijie b898aabfed Fix the repeated configuration of PWM rate after initialization 2021-04-28 00:22:07 +02:00
Kalyan Sriram b2d73dca26 uavcan_v1: cmake: nunavut generation message 2021-04-27 10:30:33 -04:00
Kalyan Sriram 925213db8f requirements: bump nunavut minimum version 2021-04-27 10:30:33 -04:00
Beat Küng 38c1ec6a9c ekf2: check if ChangeInstance succeeded 2021-04-27 10:29:09 -04:00
Beat Küng 0a98c5a7f4 Subscription: fix ChangeInstance 2021-04-27 10:29:09 -04:00
Beat Küng 1a89f165fd fix bmi088: set correct accel scale
This affected the clipping limit, which was set too low
2021-04-27 10:27:57 -04:00
RomanBapst 171c26373b land_detector: robustify land detection by using distance to ground info
- if distance to the ground is available then hysteresis times will be increased
by a factor of 3 if vehicle is higher than 1m above ground

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-04-27 08:19:19 +02:00
RomanBapst f6a34e1e80 vtol_type: reset accel to pitch integrator
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-04-27 07:43:38 +03:00
Alex Mikhalev cbf34109d1 paw3902: Default to using SENS_FLOW_ROT rotation
This restores the behavior to what it was previous to #16338 (74083d6).

Signed-off-by: Alex Mikhalev <alex@corvus-robotics.com>
2021-04-26 15:14:17 -04:00
Daniel Agar c266c3e43a parameters: remove unnecessary param_get_system_default_value() locking 2021-04-26 09:49:15 +02:00
benjinne 3664d9e4ce rover: publish actuator controls with rate of gyro
Some ESC's with DShot don't initialize otherwise (as the 200Hz of the vehicle attitude rate is too low).
2021-04-26 08:53:20 +02:00
JacobCrabill cc81c7d49e poor-mans-profiler: Add documentation
Now sets the GDB serial device to the path of a DroneCode Probe by
default, with option command-line option override.

A few usage instructions added to the top of the file.
2021-04-26 08:47:49 +02:00
Daniel Agar 6e9e503ee6 sensors/vehicle_imu: accel clipping warning minor improvements
- no warning if accel is disabled
 - threshold increased 100 -> 1000 (only warn if severe ongoing clipping)
 - more generic warning message (vehicle isn't necessarily in air flying)
2021-04-25 17:03:43 -04:00
Daniel Agar 8478d1ea37 sensors/vehicle_angular_velocity: properly handle filter reset on FIFO data scale changes
For the sake of efficiency (at 8 kHz) all filtering is performed on the raw data before the calibration and rotation is applied to only the final output. As a result we have to be a bit more careful when switching between sensors or in cases where the gyro scale factor changes (eg icm42688p 20 bit data rescaled to fit in int16 output).
2021-04-25 14:20:32 -04:00
Daniel Agar ed0fa99198 icm42688p: limit to 8 kHZ for now 2021-04-24 20:23:19 -04:00
Daniel Agar 59b70a881d commander: temporarily increase worker thread stack substantially 2021-04-23 22:13:12 -04:00
Matthias Grob 5416679735 check_code_style_all.sh: remove ignored xargs parameter
to suppress the warning message:
`xargs: warning: options --max-args and --replace/-I/-i are mutually exclusive, ignoring previous --max-args value`
when running make format.
2021-04-23 22:09:16 -04:00
Matthias Grob 6df299738e FlightTask: reactivate tasks on ground with empty setpoint
Such that they properly reset and don't try to take over smoothly from
their own setpoints generated in the last loop iteration.
2021-04-23 21:57:27 -04:00
Matthias Grob 9e2375ab91 FlightTaskManualAcceleration: change reset order, check all components for NAN
Just cleanup and completeness.
2021-04-23 21:57:27 -04:00
Matthias Grob 5e75f17680 StickAccelerationXY: fix acceleration reset using x component instead of y
This entire feature only has an impact if the last mode set
a huge acceleration and we have to take over as smooth as possible.
But it's stil lworth fixing.
2021-04-23 21:57:27 -04:00
Matthias Grob fee4728b1f StickAccelerationXY: change function name feasibility limit -> jerk limit
for clarity because it's more accurate.
2021-04-23 21:57:27 -04:00
Daniel Agar c71a228f15 Tools/setup: macos use pip as python3 module 2021-04-23 16:47:49 -04:00
bazooka joe 112fc5c9cd log battery status every 0.2sec instead of 0.3sec
Battery status is logged every 0.3Sec.
but BMS data published every 0.25Sec, so there are many drops of data.
2021-04-23 16:46:02 -04:00
Beat Küng 51f527d845 param: update 'param show-for-airframe' to use set-default 2021-04-23 16:44:55 -04:00
Beat Küng 1730cd1971 param: avoid warning for 'param show -c' or 'param show -a' 2021-04-23 16:44:55 -04:00
Igor Mišić d631a5d39f Commander: checking COM_ARM_CHK_ESCS param for ESCs telemetry
COM_ARM_CHK_ESCS set to 0. The user will need to enable it manually.
Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2021-04-22 13:46:08 +02:00
Claudio Micheli bff99f9794 Commander:esc_checks minor improvements
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-04-22 13:46:08 +02:00
Claudio Micheli 371fa98579 Commander/preflight checks: Add monitoring to ESC failures
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-04-22 13:46:08 +02:00
Thies Lennart Alff 1c624d20f5 srcparser support for vectored 6 dof uuv airframe added 2021-04-22 08:30:11 +02:00
Matthias Grob 789d91900d commander_params: lower COM_DISARM_PRFLT but disable for fixed-wing 2021-04-21 14:55:04 +02:00
Daniel Agar f9d8c613b0 px4_work_queue: increase nav_and_controllers stack 2021-04-21 07:34:13 +02:00
Peter van der Perk 8b3aa46c01 [UAVCANv1] Publisher default timeout, has to be tuned further for all publishers 2021-04-20 21:44:40 +02:00
Peter van der Perk 1804cea92c [UAVCANv1] TX deadline fix and other fixes 2021-04-20 21:44:40 +02:00
Peter van der Perk 02a4d93c74 [UAVCANv1] snprintf and cleanup ram usage ~4KB 2021-04-20 21:44:40 +02:00
Peter van der Perk 399815469f [UAVCANv1] Subscriber multi topic subscription
reg.drone.bms full support
legacy.equipment.bms support
2021-04-20 21:44:40 +02:00
Matthias Grob 5e7ebbe47c FlightTask: correct comment about setpoints 2021-04-20 18:18:21 +02:00
Matthias Grob 45ada2dd4c MulticopterLandDetector: remove unnecessary newline 2021-04-20 18:18:21 +02:00
Matthias Grob 4865d027f9 StickAccelerationXY: factor in stricter tilt limit on takeoff 2021-04-20 18:18:21 +02:00
Matthias Grob 29e07b1e52 MulticopterPositionControl: publish stricter tilt limit during takeoff 2021-04-20 18:18:21 +02:00
Matthias Grob ff67da1bb4 SlewRate: add getter for current state without update 2021-04-20 18:18:21 +02:00
Lorenz Meier 3d8a35288e Rename Snapdragon Spektrum RC
The previous name was confusing because it did not clarify that this driver was specific to the Snapdragon platform.
2021-04-18 18:35:03 +02:00
Daniel Agar 38bc46fd1a re-add RC_MAP_RATT_SW (unused) and mark active for QGC 2021-04-16 13:07:02 -04:00
mcsauder 3b72f3b641 Create publish_status() method in the heater driver, add a status field to indicate if the temperature setpoint has been met within 2.5C, breakout update_params() method from the Heater::Run() method and simplify logic. 2021-04-16 08:09:51 -04:00
benjinne 3dad16bc40 RTPS client remove redundant baudrate check 2021-04-16 14:01:27 +02:00
benjinne 42108eb4af Fix microRTPS_client_main.cpp format 2021-04-16 14:01:27 +02:00
benjinne 76e15b4a21 RTPS client get baudrate parameter if requested, and mark the device baud rate parameter as used so it shows up in QGC 2021-04-16 14:01:27 +02:00
Daniel Agar 2492fb35e4 rc_update: require consecutive valid input_rc before publishing 2021-04-15 16:40:54 -04:00
PX4 BuildBot 96c7fe4978 Update submodule matrix to latest Thu Apr 15 12:39:10 UTC 2021
- matrix in PX4/Firmware (501b463b36b07481181c15b734861704d9f27020): https://github.com/PX4/PX4-Matrix/commit/1d0e7f1ca1187c90c70a9dac92ca6294a320b1d3
    - matrix current upstream: https://github.com/PX4/PX4-Matrix/commit/b8568a89db8455d0ab2e2e391e2149ba2e5e10dd
    - Changes: https://github.com/PX4/PX4-Matrix/compare/1d0e7f1ca1187c90c70a9dac92ca6294a320b1d3...b8568a89db8455d0ab2e2e391e2149ba2e5e10dd

    b8568a8 2021-04-14 Daniel Agar - Euler: improve quaternion constructor
2021-04-15 13:27:07 -04:00
Daniel Agar 5c4582ccce rc: dsm allow full range 2021-04-15 18:27:33 +02:00
Igor Mišić bd4839e855 commander: changed msg "connection to GCS lost" from critical to info
update
2021-04-15 11:29:02 -04:00
Beat Küng 2219e096d7 cmake: embed param metadata if not CONSTRAINED_FLASH and not "test" LABEL 2021-04-15 08:16:51 +02:00
PX4 BuildBot 592dc65bae Update submodule matrix to latest Thu Apr 15 00:39:06 UTC 2021
- matrix in PX4/Firmware (d9ebf2a842f611976d7ba5078d3f31ad8cde55a7): https://github.com/PX4/PX4-Matrix/commit/3679f7fd5160c7d2a8271b1134ca1e601f1a4254
    - matrix current upstream: https://github.com/PX4/PX4-Matrix/commit/1d0e7f1ca1187c90c70a9dac92ca6294a320b1d3
    - Changes: https://github.com/PX4/PX4-Matrix/compare/3679f7fd5160c7d2a8271b1134ca1e601f1a4254...1d0e7f1ca1187c90c70a9dac92ca6294a320b1d3

    1d0e7f1 2021-04-14 Daniel Agar - Matrix: use naive per element copy instead of memcpy call
1344ce0 2021-04-14 Daniel Agar - Euler: simplify DCM constructor
2021-04-14 23:11:41 -04:00
Jukka Laitinen b99e597a73 flashparams: Fix a null-pointer dereference crash
Fix a potential crash caused by calling erase_sector with a null
sector_descriptor (current_sector == 0).

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-04-14 07:55:33 -07:00
Daniel Agar 58b40fbbb9 boards: move testing to dedicated test variants 2021-04-14 09:21:31 +02:00
Daniel Agar 047fb13922 IMU_GYRO_RATEMAX: enforce reasonable constraint and update metadata 2021-04-13 20:26:57 -04:00
Barcis, Michal 7053919a9f fixed micrortps_agent usage description 2021-04-13 21:28:27 +02:00
Daniel Agar 2d15c96b9b ekf2: Multi-EKF let new instance schedule itself immediately on successful init
- this is to minimize missed sensor data (and unnecessary error output) between EKF2 construction and once it actually starts running
2021-04-13 14:24:46 -04:00
Daniel Agar 6a4c589c62 examples/work_item: add ModuleParams and more uORB::Subscription example usage 2021-04-13 14:23:36 -04:00
Lorenz Meier bf09089a26 PWM out: Collect settings for all outputs
There are settings that have to be the same for a split output across multiple instances, like for example the PWM mask and rate configurations. This change collects them for all outputs of the same underlying driver structure and applies the complete set.
2021-04-13 18:39:27 +02:00
Lorenz Meier 6bc11596fe VTOL mixer: Correct alt rate channels
The baby shark config did mark main rate outputs (50 Hz) as alt rate, resulting in the alt rate being set to 50 Hz.
2021-04-13 18:39:27 +02:00
Daniel Agar aa22407d87 drivers/pwm_out: only print rates if changed 2021-04-13 09:55:21 +02:00
Daniel Agar a07bccc046 boards: modalai simplify defaults with new parameter defaults mechanism (AUTOCNF replacement) 2021-04-12 21:27:53 -04:00
Daniel Agar f44f497e3f parameters: better handle export failures and retry 2021-04-12 21:26:50 -04:00
Daniel Agar edc445a1b2 parameters: tinybson fill total document length for bson compatibility 2021-04-12 21:26:50 -04:00
PX4 BuildBot b9e0a16594 Update submodule public_regulated_data_types to latest Mon Apr 12 12:45:35 UTC 2021
- public_regulated_data_types in PX4/Firmware (9101f5707a251c33048289249bd565eba5d3a848): https://github.com/UAVCAN/public_regulated_data_types/commit/53a7dbbf85554e11517c13ad91b9efb871599ad1
    - public_regulated_data_types current upstream: https://github.com/UAVCAN/public_regulated_data_types/commit/309b251a7e8d713d6bf428e18e28d91d5f07b73e
    - Changes: https://github.com/UAVCAN/public_regulated_data_types/compare/53a7dbbf85554e11517c13ad91b9efb871599ad1...309b251a7e8d713d6bf428e18e28d91d5f07b73e

    309b251 2021-04-11 Peter van der Perk - reg.drone Battery parameters add nominal voltage (#113)
2021-04-12 19:51:35 -04:00
Lorenz Meier 991c07eef9 Global: Allow users to arm with USB
This change reflects the medium-term experience with users using USB as data link or power source in R&D setups. While we still discourage this for volume products, not allowing it seems like a major hurdle and blocker in R&D setups.
2021-04-12 19:11:22 -04:00
Lorenz Meier 3a004ffd68 PWM Out: Simplify startup logic
The simpler logic is more robust towards future refactoring.
2021-04-12 19:11:22 -04:00
PX4 BuildBot 5f6b8fcb9f Update submodule sitl_gazebo to latest Mon Apr 12 12:45:32 UTC 2021
- sitl_gazebo in PX4/Firmware (8acdb8ca3f): https://github.com/PX4/PX4-SITL_gazebo/commit/5761bd66cd36ded2d0dccf8127e30a1522fe1ac6
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/05e2cd9c03ffa77f0c0d5bd3e788d33e06480b25
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/5761bd66cd36ded2d0dccf8127e30a1522fe1ac6...05e2cd9c03ffa77f0c0d5bd3e788d33e06480b25

    05e2cd9 2021-04-10 Manuel Galliker - Removed unused computation of CoG (#737)
2021-04-12 14:22:14 -04:00
Daniel Agar f0f16b9cc5 mavlink: streams fix SCALED_IMU size reporting 2021-04-12 13:02:10 -04:00
Beat Küng faaee0f077 fix pwm_out: avoid race condition when setting mode
Bootup failed in some cases with:
ERROR [mixer] can't reset mixers on /dev/pwm_output1

The reason was the mode change was not applied yet.
2021-04-12 18:39:51 +02:00
PX4 BuildBot 18f17dcb96 Update submodule public_regulated_data_types to latest Mon Apr 12 12:45:37 UTC 2021
- public_regulated_data_types in PX4/Firmware (9f25ac4175fd81259b11cfe79f0f875a21562d3d): https://github.com/UAVCAN/public_regulated_data_types/commit/53a7dbbf85554e11517c13ad91b9efb871599ad1
    - public_regulated_data_types current upstream: https://github.com/UAVCAN/public_regulated_data_types/commit/309b251a7e8d713d6bf428e18e28d91d5f07b73e
    - Changes: https://github.com/UAVCAN/public_regulated_data_types/compare/53a7dbbf85554e11517c13ad91b9efb871599ad1...309b251a7e8d713d6bf428e18e28d91d5f07b73e

    309b251 2021-04-11 Peter van der Perk - reg.drone Battery parameters add nominal voltage (#113)
2021-04-12 09:58:48 -04:00
Silvan Fuhrer 381c97d3c6 Commander: baro check: only report failure of mandatory instances
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-04-12 09:27:12 -04:00
tututu123-tu 8acdb8ca3f Update .gitmodules 2021-04-12 08:18:16 -04:00
CUAVmengxiao 45b9e18195 UAVCANv0: add CUAV smart battery support 2021-04-11 21:27:31 -04:00
David Sidrane 96d0755afd NuttX with SDMMC Backport 2021-04-09 15:53:26 -04:00
Tarik Agcayazi 1520805a20 README: remove redundant autogyro, add High altitude balloons 2021-04-09 08:48:17 +02:00
Daniel Agar 39c96a8884 gps add device_id 2021-04-08 08:27:07 +02:00
Alex Mikhalev 1f4960d480 boards: cubeorange enable pwm_input
Signed-off-by: Alex Mikhalev <alex@corvus-robotics.com>
2021-04-07 21:34:44 -04:00
alexklimaj 0c3e64a7f5 Fix support for Cube Black Heater 2021-04-07 10:23:02 -04:00
benjinne 9b7eae4043 rc: enable crsf and ghst telemetry on supported boards
Co-authored-by: Benjamin Linne <benjamin.linne.civ@mail.mil>
2021-04-07 08:51:49 +02:00
Hamish Willee 6fbb409e43 Param markdown - fix sensor param table 2021-04-07 08:46:11 +02:00
alessandro b46e505b0d Handle velocity fields in follow_target message
The mavlink message FOLLOW_TARGET has additional
fields that are not being parsed here. See
https://mavlink.io/en/messages/common.html#FOLLOW_TARGET
for more details.
2021-04-06 22:11:23 -04:00
Hamish Willee aa94a60043 COM_ARM_WO_GPS - values round the wrong way 2021-04-06 22:10:02 -04:00
obicons a7e920d276 Updated MavlinkReceiver::handle_message_landing_target to warn users when they provide a landing target with an unsupported coordinate frame.
Updated Simulator::handle_message_landing_target to warn users when they provide a landing target that is not relative to a captured image.
2021-04-06 16:02:54 -04:00
Daniel Agar 31b9efdaeb sensors/vehicle_imu: increase threshold for clipping warning 2021-04-06 15:42:26 -04:00
Daniel Agar f33fee99c1 ROMFS: init.d-posix/airframes migrate EKF2_GPS_MASK -> SENS_GPS_MASK 2021-04-06 13:48:40 -04:00
Julian Oes bb0fe9ee61 mavsdk_tests: losen time limit for VTOL mission 2021-04-06 11:35:18 -04:00
Julian Oes 2eaf677de3 mavsdk_tests: correctly locate plan 2021-04-06 11:35:18 -04:00
Julian Oes cd66a79747 mavsdk_tests: move waypoints to vehicle position
This way it shouldn't matter where the test is run.
2021-04-06 11:35:18 -04:00
Julian Oes 9eadabcb02 sitl_tests: update MAVSDK to v0.38.0 2021-04-06 11:35:18 -04:00
Julian Oes d714c2faec mavsdk_tests: add VTOL mission tests
This adds VTOL mission tests to the CI integration tests.
This depends on MAVSDK v0.38.0.
2021-04-06 11:35:18 -04:00
Julian Oes 1e88939605 mavsdk_tests: report speed factor every second
This helps in debugging slow CI.
2021-04-06 11:35:18 -04:00
Daniel Agar e05a4badf8 ROMFS: rcS start uavcan earlier
- starting this earlier is a minor improvement for things like lights and buzzers on UAVCAN or parameter sync over mavlink
2021-04-06 09:48:11 -04:00
Daniel Agar 4189eb11f5 simulator: GPS populate all sensor_gps fields (alt_ellipsoid, etc) 2021-04-06 09:44:18 -04:00
Daniel Agar 015849b402 mathlib: LowPassFilter2p and NotchFilter add magnitude response getter 2021-04-05 22:47:30 -04:00
Daniel Agar f9460107d0 cleanup PWM param naming inconsistencies 2021-04-05 22:41:06 -04:00
PX4 BuildBot f741606c60 Update submodule sitl_gazebo to latest Tue Apr 6 00:39:03 UTC 2021
- sitl_gazebo in PX4/Firmware (2a0a747598): https://github.com/PX4/PX4-SITL_gazebo/commit/e703e2726a4cd82cf3c57614e9c33d6354310885
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/5761bd66cd36ded2d0dccf8127e30a1522fe1ac6
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/e703e2726a4cd82cf3c57614e9c33d6354310885...5761bd66cd36ded2d0dccf8127e30a1522fe1ac6

    5761bd6 2021-04-05 Jaeyoung-Lim - Switch tailsitter sdf version to 1.6
2021-04-05 22:28:47 -04:00
Daniel Agar 436a6fce38 Update submodule mavlink v2.0 to latest Tue Apr 6 00:39:07 UTC 2021 2021-04-05 22:28:10 -04:00
PX4 BuildBot 997abf382d Update submodule public_regulated_data_types to latest Tue Apr 6 00:39:10 UTC 2021
- public_regulated_data_types in PX4/Firmware (5e242d366f2e266e8226f7baa33e5973783e2045): https://github/commit/7f5489e6e916cc8b13db0582dcf9930e225594b9
    - public_regulated_data_types current upstream: https://github/commit/53a7dbbf85554e11517c13ad91b9efb871599ad1
    - Changes: https://github/compare/7f5489e6e916cc8b13db0582dcf9930e225594b9...53a7dbbf85554e11517c13ad91b9efb871599ad1

    53a7dbb 2021-03-31 Pavel Kirienko - Change wording in uavcan.pnp.NodeIDAllocationData to reflect the less static nature of UAVCAN v1 (#111)
c3aa82f 2021-03-23 Pavel Kirienko - Update Readiness as discussed at the DS-015 call
fcc1062 2021-03-16 Pavel Kirienko - Doc amendment for uavcan.register.Access: mapping between registers and environment variables (#109)
342f358 2021-02-22 Pavel Kirienko - Remove misleading comment in battery.Status.0.2
1baa9cb 2021-02-22 Pavel Kirienko - Add link to Nunaweb and synchronize the description with the front page (#108)
2021-04-05 21:23:06 -04:00
Benjamin Linne 2a0a747598 boards: modalai-fc-v1 add rtps.cmake add to ci 2021-04-05 17:01:35 -04:00
Benjamin Linne a1bc520df8 boards: modalai-fc-v1 add rtps.cmake add to ci 2021-04-05 17:01:35 -04:00
Benjamin Linne 3261118538 boards: modalai-fc-v1 add rtps.cmake 2021-04-05 17:01:35 -04:00
Daniel Agar 54438140e1 ROMFS: posix airframes update to new parameter defaults mechanism (AUTOCNF replacement) 2021-04-05 15:29:34 -04:00
Daniel Agar 565c644b2e boards: CUAV keep Nora and X7pro in sync 2021-04-05 12:54:41 -04:00
Daniel Agar 695adbc037 Jenkins: hardware skip AUTOCNF, don't force px4io update, show configured parameters 2021-04-05 12:30:55 -04:00
Daniel Agar 357b322eb5 ROMFS: tune_control stop if px4io update fails 2021-04-05 11:49:55 -04:00
PX4 BuildBot 74e848d57e Update submodule public_regulated_data_types to latest Mon Apr 5 12:40:16 UTC 2021
- public_regulated_data_types in PX4/Firmware (1557f3a23461a144dd75edae4595665e5684597d): https://github.com/UAVCAN/public_regulated_data_types/commit/7f5489e6e916cc8b13db0582dcf9930e225594b9
    - public_regulated_data_types current upstream: https://github.com/UAVCAN/public_regulated_data_types/commit/53a7dbbf85554e11517c13ad91b9efb871599ad1
    - Changes: https://github.com/UAVCAN/public_regulated_data_types/compare/7f5489e6e916cc8b13db0582dcf9930e225594b9...53a7dbbf85554e11517c13ad91b9efb871599ad1

    53a7dbb 2021-03-31 Pavel Kirienko - Change wording in uavcan.pnp.NodeIDAllocationData to reflect the less static nature of UAVCAN v1 (#111)
c3aa82f 2021-03-23 Pavel Kirienko - Update Readiness as discussed at the DS-015 call
fcc1062 2021-03-16 Pavel Kirienko - Doc amendment for uavcan.register.Access: mapping between registers and environment variables (#109)
342f358 2021-02-22 Pavel Kirienko - Remove misleading comment in battery.Status.0.2
1baa9cb 2021-02-22 Pavel Kirienko - Add link to Nunaweb and synchronize the description with the front page (#108)
2021-04-05 11:26:01 -04:00
Daniel Agar e8d98c1f8a uavcan: skip beep if CBRK_BUZZER circuit breaker set 2021-04-05 11:25:37 -04:00
Daniel Agar 8e8826c516 Makefile: uorb_graphs exclude src/lib from graph_full 2021-04-05 11:03:43 -04:00
Daniel Agar 186e987efb Jenkins: fetch all tags before generating Airframe & Parameter documentation (master only) 2021-04-05 09:51:18 -04:00
Daniel Agar 2e390009f0 Jenkins: fetch all tags before make documentation (master only) 2021-04-05 09:24:21 -04:00
Julian Oes 8720655683 sitl_gazebo: update submodule
This fixes the airspeed sensor orientation for tailsitter.
2021-04-05 14:14:31 +02:00
Silvan Fuhrer 8400f2c9bc FW attitude controller: add protection against division by zero in airspeed scaling
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-04-04 21:22:28 -04:00
Beat Küng 436258c1c5 config: cleanup ethernet configuration 2021-04-04 21:20:36 -04:00
Daniel Agar ad934b4911 icm20948 i2c passthrough driver for ak09916 magnetometer (Here+ GPS/compass)
- include icm20948 on most boards by default
 - create more test variants for default boards near flash limit (cuav_nora_test, cuav_x7pro_test, holybro_durandal-v1_test)
2021-04-04 21:18:16 -04:00
Daniel Agar c6a0161047 commander: COM_PREARM_MODE disable by default 2021-04-03 20:15:05 +02:00
Daniel Agar bbf27d6960 boards: mro pixracerpro Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
Daniel Agar 43da43ddc6 boards: cubepilot cubeorange Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
Daniel Agar fffa10ade4 boards: px4_fmu-v6u sync with other stm32h7 boards 2021-04-03 14:13:23 -04:00
Daniel Agar 825d81dd57 boards: px4_fmu-v6x sync with other stm32h7 boards 2021-04-03 14:13:23 -04:00
David Sidrane dcfa3c97ba px4 fmu-v6x:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane 38485a5d41 px4 fmu-v6u:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane 961bac759a mro pixracerpro:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane 2f9a57c604 mro ctrl-zero-h7:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane 5c7a9204a2 mro ctrl-zero-h7-oem:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane f63f1f3969 holybro durandal-v1:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane 55ed76522e cuav x7pro:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane df201342bb cuav nora:Add remaining SRAM4 & DTCM to heap 2021-04-03 14:13:23 -04:00
David Sidrane 5e73fe588e NuttX with SRAM4-heap-bp 2021-04-03 14:13:23 -04:00
Jaeyoung-Lim 01083cecfc Enable adis16448 with parameter
This commit adds enabling adis16448 with a parameter
2021-04-03 13:58:25 -04:00
Nidhish Raj 01d8c3da3d vtol_att_control: occasional tailsitter forward transition failure issue solved
Tailsitter VTOLs very occasionally gets stuck with zero roll and pitch angle in multicopter mode after
a forward transition command is issued.
This very rare behavior is triggered by the following events:
1> a forward transition is triggered either in auto or manual mode.
2> in the vtol_att_control main loop, if multicopter and fixed wing attitude setpoints are not updated, transition state is not updated
3> the commander changes the vehicle status to transition mode.
4> multicopter pos controller initiated  Transition flight task. This results in zero roll and pitch setpoint due to zero acceleration setpoint
5> now vtol_att_control executes and updates the transition state. Specifically, _q_trans_start and _q_trans_sp are set with zero roll and pitch sp
6> tilt is evaluated to be NaN, despite _q_trans_sp being normalized. This happens for 25% of all yaw angles when using float datatype. This can be
   verified using the matrix library
7> once tilt is evaluated to be NaN, _q_trans_sp is never updated again and is stuck in this state for ever.

This has been fixed by constraining the cos(tilt) within +1 to -1 range
Further, _q_trans_start and _q_trans_sp are immedietly initialized after a transition event is triggered.
2021-04-03 19:19:48 +02:00
Daniel Agar b30f3917d3 sensors/vehicle_imu: periodically send mavlink critical message if clipping 2021-04-03 10:32:16 -04:00
Daniel Agar 588883f663 uavcan: quiet server output
- remove verbose UAVCAN command bridge prefix
 - disable many normal PX4_INFO messages entirely (kept as PX4_DEBUG)
 - properly exit when arming (silently)
2021-04-03 10:07:50 -04:00
David Sidrane 2fcdadfbd1 holybro_durandal-v1:Enable UAVCAN 2021-04-03 12:47:20 +02:00
David Sidrane 003ef59019 px4_fmu-v6x:Enable UAVCAN 2021-04-03 12:47:20 +02:00
Lorenz Meier c96ca0434e Update README.md
Sort autopilot generations according to relevance to potential users (latest first)
2021-04-03 12:21:02 +02:00
PX4 BuildBot 9a02141d0d Update submodule ecl to latest Fri Apr 2 12:39:10 UTC 2021
- ecl in PX4/Firmware (744cd1182e183b62a0ab4b2f3e4e3c4aa6f5c15f): https://github.com/PX4/PX4-ECL/commit/6f2dec726adeedcb53aad9a77a8fcdfc8f7b3054
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/5d34d7a24ef72b826c320a3259ee0ec68b1936df
    - Changes: https://github.com/PX4/PX4-ECL/compare/6f2dec726adeedcb53aad9a77a8fcdfc8f7b3054...5d34d7a24ef72b826c320a3259ee0ec68b1936df

    5d34d7a 2021-03-31 Eike - Height source vision: Fallback to rangefinder if available (#994)
da06f25 2021-03-28 PX4BuildBot - [AUTO COMMIT] update change indication
85fcf93 2021-03-28 PX4 BuildBot - Update geo_lookup WMM  to latest Sun Mar 28 11:48:06 UTC 2021
2021-04-02 11:46:19 -04:00
Lorenz Meier 1ec8ce58c7 Commander: Increase auto-disarm timeout to 25 seconds after arming 2021-04-02 09:37:40 +02:00
Daniel Agar 278633c980 boards: cuav x7pro include correct adis IMU 2021-04-01 17:13:54 -04:00
Daniel Agar c017f76a36 github actions add all NuttX builds 2021-04-01 10:21:14 -04:00
Lorenz Meier 82f319a84a Commander: Add support for pairing via commandline 2021-04-01 09:56:09 -04:00
斯东Stone e789124bd9 Remove duplicated line in 50003_aion_robotics_r1_rover 2021-04-01 09:36:20 -04:00
Beat Küng 369d375417 holybro_can-gps-v1_debug: disable ekf & listener due to flash overflow 2021-04-01 08:35:36 -04:00
Daniel Agar 9171a84324 IMU_DGYRO_CUTOFF increase default 10 -> 20 Hz 2021-04-01 08:30:09 -04:00
Jaeyoung-Lim 19c4fdd7c5 Add support for 3D body thrust setpoint for offboard attitude control
This adds support for filling up the 3D thrust setpoint using SET_ATTITUDE_TARGET message
Update mavlink submodule
2021-04-01 13:58:04 +02:00
Nico van Duijn 8d3335906a v5x: use low bandwidth mavlink mode
This changes the default mavlink message set from onboard to
onboard_low_bandwidth, which drastically reduces the bandwidth required to get a
usable connection.
2021-04-01 07:28:43 +02:00
Daniel Agar 846695f986 ekf2: replace vehicle_imu lost error message with perf count 2021-03-31 22:07:32 -04:00
Daniel Agar 00f86eb895 drivers/uavcan: silence redundant exit message 2021-03-31 22:01:35 -04:00
Chris Lovett 292a66ce41 Add support for simulators running on a different host than the PX4 instance 2021-03-31 20:56:38 -04:00
RomanBapst b66ae5f2d4 tecs: use raw inertial acceleration for true airspeed complementary filter
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-03-31 20:12:40 -04:00
Beat Küng 9dd6bef7f9 autostart scripts: remove SYS_PARAM_VER
With the airframe defaults there's no use for that anymore
2021-03-31 20:12:05 -04:00
Beat Küng aec63eacbe mavlink_receiver: avoid spamming 'unsupported component id' 2021-03-31 20:10:15 -04:00
Matthias Grob 5f4802a239 SlewRate: add back dummy file for mac build 2021-03-31 15:50:16 +02:00
Matthias Grob 8fec39ad39 MulticopterPositionControl: readd takeoff ramp fix
added in #14821 and accidentally removed in #14665
2021-03-31 15:21:42 +02:00
Bastian Jäger 752bc9ebce startup scripts: fix rc.mavlink_override 2021-03-31 14:05:24 +02:00
Julian Kent 5c5ec1a0ea Receive telemetry_status, send vehicle_trajectory_waypoint_desired 2021-03-31 13:26:00 +02:00
Julian Kent b5a64f957e Update RTPS messages to match what is needed for PX4/Avoidance 2021-03-31 13:26:00 +02:00
Julian Kent c1cb964c2a RTPS timesync don't use MONOTONIC_RAW 2021-03-31 13:25:27 +02:00
Julian Kent 1011382098 Clamp RTPS -> uorb timestamps to system time 2021-03-31 13:25:27 +02:00
TSC21 eca4d90a91 init.d-posix: adjust COM_OBC_LOSS_T when using PX4_SIM_SPEED_FACTOR 2021-03-31 13:25:01 +02:00
TSC21 7abce87ae4 commander: add COM_OBC_LOSS_T for setting onboard computer loss time-out 2021-03-31 13:25:01 +02:00
Beat Küng e9370c658a nuttx cmake: include upload.cmake if it exists (same as on posix) 2021-03-31 11:25:11 +02:00
RomanBapst 5b08362ba3 position_controller_status message: added comments regarding NAN
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-03-31 11:23:33 +02:00
Matthias Grob c06b5a1de9 MulticopterPositionControl: improve tilt limit readability and scope
according to @bresch's review comment.
2021-03-31 10:03:08 +02:00
Matthias Grob 94469d84ae MulticopterPositionControl: fix twitch on tilt limit relaxation 2021-03-31 10:03:08 +02:00
Matthias Grob 34a5948692 Adapt SlewRate includes to convention 2021-03-31 10:03:08 +02:00
Matthias Grob c16b937221 Takeoff: switch internally to use a ramp progress 2021-03-31 10:03:08 +02:00
Matthias Grob 8ca76feaba Takeoff: remove updateRamp() early return 2021-03-31 10:03:08 +02:00
Matthias Grob b7600f4e4d Commander: check_posvel_validity use return value 2021-03-30 22:33:01 -04:00
Matthias Grob 29e1e0905c Commander: switch main_state functions to pass by reference 2021-03-30 22:33:01 -04:00
Matthias Grob 531de5c588 Commander: switch all state_machine_helper functions to pass by reference 2021-03-30 22:33:01 -04:00
Matthias Grob d97fba67e5 Commander: switch helper functions to pass by reference 2021-03-30 22:33:01 -04:00
Daniel Agar 0fa91f7cb0 commander: centralize main_state strings and simplify main state change attempts
* commander: centralize main_state strings and simplify main state change attempts
2021-03-30 17:56:28 +02:00
Daniel Agar 18be1bacdc state_machine_helper: automatically initialize to assist mode if using mavlink manual control 2021-03-30 17:56:28 +02:00
Claudio Micheli b001865e5c Commander: clean up logic for flight mode transitions and add joystick mode initialization
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-03-30 17:56:28 +02:00
Daniel Agar 9a35756cd1 ekf2: enable range aid by default
- this is to help more users get the benefit (by default) and perhaps circumvent the common mistake of setting EKF2_HGT_MODE to range sensor
 - this should be safe to enable as the range aid defaults are fairly conservative (max horizontal velocity 1 m/s, and range aid gate 1 SD)
2021-03-30 10:23:18 -04:00
Daniel Agar 6874e9fba0 boards: NuttX disable all NSH memory debug commands (mb, mh, mw) by default
- closes https://github.com/PX4/PX4-Autopilot/issues/17062
2021-03-30 09:23:43 -04:00
Michael Schaeuble f9af1bbe2d PreFlightCheck: Check if SD card is present only once and store the result
statfs accesses the file-system and can be blocking for an extended period. Since the SD card check is part of the preflight checks in the main thread of commander, it could block its execution and cause various issues. The SD card is only mounted in rcS during boot so the state will not change after the first check.
2021-03-30 08:20:49 +02:00
Daniel Agar c2350c06c1 commander: ManualControl avoid unnecessary copy 2021-03-30 08:19:07 +02:00
Beat Küng 416a663d11 params: add build dependency for *parameters.c
Makes sure changes to these files trigger metadata rebuild
2021-03-30 08:18:49 +02:00
Beat Küng 42a865f349 param json: ensure category is set to Standard if not set
For xml this was previously done on the QGC side.
2021-03-30 08:18:49 +02:00
Beat Küng 2d2799b739 IMU_GYRO_CUTOFF: add 800 (used by SITL) 2021-03-30 08:18:49 +02:00
Beat Küng 346f269d8f IMU_INTEG_RATE: add 250 (used by SITL) 2021-03-30 08:18:49 +02:00
Beat Küng 6a7688cbca component_information: rework to reflect mavlink message changes 2021-03-30 08:18:49 +02:00
Daniel Williams 0f29b87101 [uorb-graph][squash][refactor] Rework of uorb-graph script -- Greatly expands handled test cases
- Source processing now happens on original source files:
    - processing to line-by-line
    - required overhaul of regex match patterns + processing
    - pros:
        - enable tracing of ambiguous parsing sites -- reports (module, file, line-number, line-contents)
        - simplifies code
        - reduces computational complexity
    - cons:
        - certain declarations are harder to parse: multiline declarations
- refactors:
    - added specific subclasses for each: Publications, Subscriptions, Ambiguities
    - added a "Scope" class to represent either a module ('ModuleScope') or a library ('LibraryScope')
- regexes:
    - added cases for C++-style classes
    - expanded C++-style regex cases to accommodate templates
    - `ORB_ID::` is accepted wherever `ORB_ID(` is accepted
    - adds 'orb_copy' regex to the subscription cases
    - emit ambiguous-line warning for declarations with `ORB_ID` on the same line
    - emit ambiguous-line warning for `ORB_ID` with a declaration on the same line
- changed 'module whitelist' to 'scope-whitelist'
    - whitelist may now apply to libraries
    - libraries are optionally merged with their depending modules (but not by default)
    - may be merged with their depending modules with the `--merge-depends` cli flag
    - eliminates some redundant 'special-case' handling code
- debug output
    - raises exception and aborts if a topic is found outside of a scope
    - debug output is now printed & filtered with the python 'logging' standard module
    - alphabetizes topic output in debug logging
    - fixes debug output if package dependencies are missing
    - now warns on ambiguous matches
    - prints a list of ambiguous source sites (aka warnings) on completion
    - (still) emits a warning if we find ORB_ID outside of a scope
    - adds warnings if any of the source paths are invalid
    - do not emit debug output for modules outside of the module/scope whitelist
- Expand script's CLI parameters
    - added 'none' output options: undocumented debugging option to silence file output while debugging
    - added the `--merge-depends` cli flag -- merges output of modules & their dependee libraries
2021-03-29 09:36:34 +02:00
Daniel Agar 3d667b1675 delete unused drivers/lights/blinkm 2021-03-28 19:21:29 -04:00
Daniel Agar 631d1647d3 boards: minimize unnecessary differences in default variants 2021-03-28 14:46:47 -04:00
Daniel Agar fcc4153c26 drivers/gps: explicitly link libm
- needed on stripped down builds
2021-03-28 12:39:22 -04:00
Daniel Agar 7314b69adc cmake: fix jlink_flash_uavcan_bin helper 2021-03-28 12:39:22 -04:00
Daniel Agar f5c7f89a76 vscode add holybro can-gps-v1 variants 2021-03-28 12:39:22 -04:00
Daniel Agar e58af90bac boards: holybro can-gps-v1 create separate default and debug variants 2021-03-28 12:39:22 -04:00
Daniel Agar 86b831b019 Update submodule GPSDrivers to latest Sun Mar 28 12:39:06 UTC 2021 (#17253)
- devices in PX4/Firmware (22b74424d42fa89ebc4df84422ca7ea633843878): https://github.com/PX4/PX4-GPSDrivers/commit/e7f0b23f47d65490b72e9bacaff191bda2d99496
    - devices current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/f2eb62c2c78a2ec47bccfe993ff59acc94155e7e
    - Changes: https://github.com/PX4/PX4-GPSDrivers/compare/e7f0b23f47d65490b72e9bacaff191bda2d99496...f2eb62c2c78a2ec47bccfe993ff59acc94155e7e

    f2eb62c 2021-02-21 chenhui.yu - sbf: fix #430 longitude judgement bug

Co-authored-by: PX4 BuildBot <bot@px4.io>
2021-03-28 11:13:58 -04:00
Daniel Agar f65781025e boards: mRo x21 enable mpu9250 mag (only internal)
- fixes #17244
2021-03-26 21:02:30 -04:00
Daniel Agar b1c913244f boards: CUAV X7pro restore lights 2021-03-26 18:25:39 -04:00
Daniel Agar e77bffe582 boards: STM32H7 remove CONFIG_MM_REGIONS=3 2021-03-26 17:40:44 -04:00
Daniel Agar a260ddd8ff posix-configs: rpi multi-EKF defaults
- the ekf2 frontend typically runs in the background for up to 30 seconds waiting for all instances to appear, but this isn't supported by the legacy posix launcher
2021-03-26 14:24:34 -04:00
Daniel Agar a9b47558b1 magnetometer/lsm9ds1_mag: fix register typo and refactor to new style with state machine and configuration monitoring 2021-03-26 14:23:25 -04:00
bresch a124426541 ecl: apply same GNSS speed accuracy for EKF2 and yaw estimator 2021-03-25 12:57:36 -04:00
bresch ace6f81c93 commander: report estimator mag fault detection to ground station 2021-03-25 12:57:36 -04:00
bresch 2c5342acd4 commander: increase nav_test_failed hysteresis time
This is to avoid race condition with the yaw emergency estimator having
the same trigger delay of 1 second. Commander will now give more time to
EKF2 to reset itself before switching to altitude mode.
2021-03-25 12:57:36 -04:00
Serhat Aksun beadae6dfc process_sensor_caldata.py: Fix 2nd barometer plot
fixed the figure numbers to avoid plot conflicts
2021-03-25 09:53:15 -04:00
Daniel Agar 5a1eb3f9ef Update submodule GPSDrivers to latest Thu Mar 25 00:41:54 UTC 2021 2021-03-25 00:25:29 -04:00
PX4 BuildBot 98e1e25d93 Update submodule sitl_gazebo to latest Thu Mar 25 00:41:48 UTC 2021
- sitl_gazebo in PX4/Firmware (7f2566dd8a): https://github.com/PX4/PX4-SITL_gazebo/commit/1f339cdf5c5da27097e58ec2beb2793bf6057c7d
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/3e5fed04d8e574b10e17e446d2938346bc6152ca
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/1f339cdf5c5da27097e58ec2beb2793bf6057c7d...3e5fed04d8e574b10e17e446d2938346bc6152ca

    3e5fed0 2021-03-22 JaeyoungLim - Multiple airspeed sensors in SITL with multi HIL_SENSOR instances (#731)
2021-03-24 23:54:49 -04:00
David Sidrane 7f2566dd8a NuttX STM32H7 16 bit SPI fixes + ADIS16470 updates for proper 16 bit mode in burst 2021-03-24 19:29:40 -04:00
Daniel Agar 92910de81d gyro_fft: silence initial sensor selection attempt
- early in startup the selected gyro may not be published yet
2021-03-24 18:58:18 -04:00
David Sidrane d9d832c568 NuttX with BACKPORT libc/stdio: Preallocate the stdin, stdout and stderr 2021-03-24 18:27:30 -04:00
Daniel Agar 2d6deb4f1c drivers/rc_input: don't accept RX_PAIR cmd when armed 2021-03-24 15:13:38 -04:00
Lorenz Meier 435ef38eda RC Input: Reset lock state when switching to a new protocol 2021-03-24 15:13:38 -04:00
Daniel Agar 3502ba53ba Update submodule mavlink v2.0 to latest Wed Mar 24 12:38:18 UTC 2021 2021-03-24 11:25:00 -04:00
Beat Küng c4ae667157 generate_board_targets_json.py: exclude uavcanv1 for now
px4_fmu-v4_uavcanv1 fails to build:
../../src/drivers/uavcan_v1/Uavcan.cpp: In static member function 'static int UavcanNode::start(uint32_t, uint32_t)':
../../src/drivers/uavcan_v1/Uavcan.cpp:140:29: error: 'interface' was not declared in this scope
  140 |  _instance = new UavcanNode(interface, node_id);
2021-03-24 10:08:41 -04:00
Beat Küng c46c6e63ae px4/fmu-v4/uavcanv1: remove non-existing tap_esc module & gyro_fft example 2021-03-24 10:08:41 -04:00
Beat Küng f528c5d206 github ci: push parameter metadata to s3 2021-03-24 10:08:41 -04:00
Beat Küng c3985709e4 version: add optional oem version tag (ext/oem-<version>) and log it 2021-03-24 10:08:41 -04:00
Beat Küng be3849f0b2 px4_mkfw.py: fix byte to string conversion 2021-03-24 10:08:41 -04:00
Beat Küng bac2a02a65 git: ignore git tags starting with 'ext/' when getting the version tag
Allows for external/extra tags
2021-03-24 10:08:41 -04:00
Daniel Agar ae010ea55c sensors/vehicle_angular_velocity: unify filtering for both FIFO and regular use cases 2021-03-24 09:23:40 +01:00
PX4 BuildBot 8c173b2e7f Update submodule ecl to latest Wed Mar 24 00:38:46 UTC 2021
- ecl in PX4/Firmware (a730f0f5ce7a2cc909cb3d0dfab5f0106a9b3aeb): https://github.com/PX4/PX4-ECL/commit/bb950a1550ba55de36ed66877817ec7f2f47b349
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/e3d1ade66092d47478488c89e4a6f6d21f0435a4
    - Changes: https://github.com/PX4/PX4-ECL/compare/bb950a1550ba55de36ed66877817ec7f2f47b349...e3d1ade66092d47478488c89e4a6f6d21f0435a4

    e3d1ade 2021-03-12 Daniel Agar - EKF: use flow for vel test ratio if only active source of horizontal aiding
2021-03-23 22:17:11 -04:00
Daniel Agar b2faea7f43 pwm_out: check PWM_OUT_MAX_INSTANCES with conditional
- PWM_OUT_MAX_INSTANCES is a constant (static constexpr) not available to the preprocessor
2021-03-23 22:13:18 -04:00
Silvan Fuhrer 3983f0b833 ROMFS: add new VTOL config and mixer (generic quadplane tiltrotor VTOL) 2021-03-23 19:55:19 -04:00
Beat Küng 2dace0c9ea param: limit short description lenght to 150 for existing, 70 for yaml 2021-03-23 12:55:11 -04:00
Beat Küng 629f7ba15b params: ensure short description is only a single line
So a UI can display it properly
2021-03-23 12:55:11 -04:00
Julian Oes 2ab276f5ca ROMFS: disable MAVLink broadcast by default
I don't think we should be broadcasting by default as we haven't done
that in the past. This suddenly spams the network with a lot of
messages, and leads to confusing situations in offices where there are
multiple PX4 SITL and QGC intances are open.
2021-03-23 12:54:46 -04:00
Daniel Agar ea902e7f38 systemcmds/tests: split out individual module test commands 2021-03-23 11:39:14 -04:00
Daniel Agar 9b1cf98474 drivers/pwm_out: fix launch for non-multi case
- skip _objects[1] access if only 1 possible instance
 - command line request new mode via atomic
2021-03-23 10:40:22 -04:00
David Sidrane 06cd3eded5 Revert "boards: CUAV Nora don't start icm20649 on SPI6 by default"
This reverts commit bcae99e34a.
2021-03-23 05:52:27 -07:00
David Sidrane 644794d134 Revert "boards: CUAV x7pro disable SPI6 IMU until NuttX BDMA is fixed"
This reverts commit 0b4006ae86.
2021-03-23 05:52:27 -07:00
David Sidrane 817d21bb39 px4 fmu-v6x:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane 5f28ea10c0 px4 fmu-v6u:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane bbdb671dd2 mro pixracerpro:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane a8ece584e5 mro ctrl-zero-h7-oem:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane 4eabee00d6 holybro durandal-v1:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane e813385f12 cuav x7pro:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane 344be233cf mro ctrl-zero-h7:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane ba3a099775 cuav nora:Properly configure BDMA 2021-03-23 05:52:27 -07:00
David Sidrane 3581099c09 Revert "boards: disable BDMA on STM32H7 for now"
This reverts commit f0d1f1d679.
2021-03-23 05:52:27 -07:00
David Sidrane 55abe48925 NuttX with BDMA enable fix backpork 2021-03-23 05:52:27 -07:00
Peter van der Perk 8c5e51dba6 Add nxp_ucans32k146_canbootloader to CI archive to distribute UCANS32K146 bootloader 2021-03-23 04:43:56 -07:00
Mohamed Moustafa 5802dce699 mavlink: ignore self published UTM_GLOBAL_POSITION msgs in simulation using sys id (#17193) 2021-03-23 10:32:21 +01:00
Daniel Agar 5f6832e101 px4_work_queue: increasae UART stack 2021-03-22 22:48:58 -04:00
Beat Küng e2cd39bf6c micro_hal: use inline methods instead of #define's
Fixes errors in the form of 'error: statement has no effect'
2021-03-22 15:38:21 -04:00
Daniel Agar e57aaaaa5e rotate accel/gyro FIFO before publish and fix angular velocity filter resets
- rotates accel & gyro FIFO data before publication both to simplify downstream usage (including log review) and fix other issues
     - to best handle int16_t data rotations are now either performed with swaps if possible, otherwise promoted to float, rotated using the full rotation matrix, then rounded back to int16_t
 - fix sensors/vehicle_angular_velocity filter reset both with proper rotation and new calibration uncorrect helper
      - in FIFO case filtering is done before calibration is applied, but we need to handle a possible reset from a completely different sensor (vehicle body angular velocity -> sensor frame uncorrected data)
2021-03-22 12:01:12 -04:00
Star Simpson d4dd019578 removing hardcoded units from parameter descriptions throughout land_detector_params 2021-03-22 11:39:53 +01:00
Dongoo Lee 32012cb3ee for cmake option GENERATE_ROS_MODELS to make ROS sdf models 2021-03-22 08:59:48 +01:00
Star Simpson 48219ab1e6 fixed typo in description of RWTO_PSP parameter 2021-03-22 00:37:18 -04:00
Daniel Agar 7563438558 sensors/vehicle_angular_velocity: fix dynamic notch ESC in FIFO case
- last timestamp sample must be set in FIFO case for ESC RPM dynamic filter update
 - slightly relax thresholds for dynamic notch FFT apply or reset
2021-03-21 20:46:54 -04:00
PX4 BuildBot 1e507f41ca Update submodule sitl_gazebo to latest Sun Mar 21 12:39:01 UTC 2021
- sitl_gazebo in PX4/Firmware (6e9f745809): https://github.com/PX4/PX4-SITL_gazebo/commit/b195315b869a5e86e31bcb934ca85172d4f5f33f
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/1f339cdf5c5da27097e58ec2beb2793bf6057c7d
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/b195315b869a5e86e31bcb934ca85172d4f5f33f...1f339cdf5c5da27097e58ec2beb2793bf6057c7d

    1f339cd 2021-03-20 Dongoo Lee - Pass ros_distro in CMakeLists.txt instaed of checking it in jinja_gen.py (#712)
1b1afca 2021-03-18 David Jablonski - gst camera: add RTMP streaming and nvidia encoding (#727)
2021-03-21 10:43:26 -04:00
PX4 BuildBot e79b3930f3 Update submodule ecl to latest Sun Mar 21 12:39:12 UTC 2021
- ecl in PX4/Firmware (81e811997b8e611aff08fa25c81322e4b956425f): https://github.com/PX4/PX4-ECL/commit/4df005487379436dcdde10402d3cea7b78d76c19
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/bb950a1550ba55de36ed66877817ec7f2f47b349
    - Changes: https://github.com/PX4/PX4-ECL/compare/4df005487379436dcdde10402d3cea7b78d76c19...bb950a1550ba55de36ed66877817ec7f2f47b349

    bb950a1 2021-03-10 Morten Fyhn Amundsen - Expose terrain vpos reset counter
ab69681 2021-03-10 Morten Fyhn Amundsen - Add parameter for terrain timeout
2021-03-21 10:42:43 -04:00
Lorenz Meier 6e9f745809 PWM out: Robustify initialization
This ensures that all PWM outputs get correctly inialized on targets that only support one.
2021-03-21 00:21:10 +01:00
Daniel Williams f6eae08597 [uorb_graph][fix][doc] FIxes type around regex definition
Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2021-03-20 08:11:41 +01:00
Daniel Williams e7b1ffbd4c [uorb_graph][fix] broadens regex for ambiguous subscription arrays
Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2021-03-20 08:11:41 +01:00
Daniel Williams 1dce38a8fe [uorb_graph][fix] fixes typo in Graph class __init__
Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2021-03-20 08:11:41 +01:00
Daniel Williams 711422d755 [uorb-graph][squash][refactor] Rework of uorb-graph script -- Greatly expands handled test cases
- debug output is now printed & filtered with the python 'logging' standard module
- changed 'module whitelist' to 'scope-whitelist'
    - whitelist may now apply to libraries
    - libraries are not included by default
    - may be merged with their depending modules with the `--merge-depends` cli flag
    - eliminates redundant 'special-case' handling code
- greatly expands debugging output
    - fixes debug output if package dependencies are missing
    - still crashes on error matches
    - now warns on ambiguous matches
    - prints a list of ambiguous source sites (aka warnings) on completion
    - adds warnings if any of the source paths are invalid
    - do not emit debug output for modules outside of the module/scope whitelist
- Expand script's CLI parameters
    - added 'none' output options: undocumented debugging option to silence file output while debugging
    - added the `--merge-depends` cli flag -- merges output of modules & their dependee libraries
- Source processing now happens on original source files:
    - processing to line-by-line
    - required overhaul of regex match patterns + processing
    - pros:
        - enable tracing of ambiguous parsing sites -- reports (module, file, line-number, line-contents)
        - simplifies code
        - reduces computational complexity
    - cons:
        - certain declarations are harder to parse (multiline arrays)
- refactors:
    - added specific subclasses for each: Publications, Subscriptions, Ambiguities
    - added a "Scope" class to represent either a module ('ModuleScope') or a library ('LibraryScope')
2021-03-20 08:11:41 +01:00
Daniel Williams 8c87ef4272 [refactor][uorb-graph] add a pythonic __main__ idiom to the uorb-graph tool script 2021-03-20 08:11:41 +01:00
Daniel Agar aef3c474e2 cmake: add install_python_requirements helper
- this is useful because it installs the python requirements using the
python interpreter found and used by cmake
2021-03-19 23:58:16 -04:00
Julian Oes a13459858d commander: improve logic for ekf2 preflight check
With this change we prevent the case where arming silently fails within
the first 10 seconds after boot.

Also, we now set the sensors as healthy as soon as the ekf is healthy,
and don't wait 10 seconds without actually checking.
2021-03-19 15:58:14 -04:00
Julian Oes 2f024a9a8a commander: pass in correct time since boot
This fixes the case where the preflight check fail right after the start
and report "sensors unstable".
2021-03-19 15:58:14 -04:00
Morten Fyhn Amundsen 19533377b3 drv_hrt: Fix hrt_abstime literal argument names
The user-defined literals for milli- and microseconds
should have argument names matching their units. The
current argument names 'seconds' is probably an oversight.
2021-03-19 16:36:36 +01:00
David Sidrane 0d4f48a8d2 spracing h7extreme:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane cdcff35760 cubepilot cubeorange:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane 2373ba47a2 mro pixracerpro:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane 6780428a9d mro ctrl-zero-h7:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane fa5dfb29cb mro ctrl-zero-h7-oem:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane 216959e221 holybro durandal-v1:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane 7bc2393936 cubepilot cubeorange:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane a67edf229a cuav x7pro:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane 4f3d74b9d3 cuav nora:Enable ADC3 in support of temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane 833501dee6 stm32h7:adc fix temperature sensing 2021-03-19 15:48:47 +01:00
David Sidrane cc098f9dff netman:Fix setting on first boot 2021-03-19 15:48:25 +01:00
Daniel Agar 19fc33a66e boards: ark/can-flow add debug build and reduce default 2021-03-19 15:44:57 +01:00
bresch 6fda6e43af StickAcceleration: synchronize XY acceleration profiles 2021-03-19 13:51:15 +01:00
Matthias Grob c8c3f57ba1 mc_pos_control_params: correct cruise speed description
It is used in autonomous modes only and has no influence
on Position mode.
2021-03-19 13:35:17 +01:00
Daniel Agar 2360c50713 boards: spracing/h7extreme remove temperature_compensation and differential_pressure sensors to save flash 2021-03-18 19:34:51 -04:00
Daniel Agar b74bdb0250 sensors/vehicle_angular_velocity: RPM filter add harmonics 2021-03-18 19:34:51 -04:00
Daniel Agar 8f242ec444 cmake: add jlink_flash_uavcan_bin helper 2021-03-18 19:33:19 -04:00
Daniel Agar a86e854a3b boards: CUAV CAN GPS enable safety button
- the circuit breaker was changed to set by default (disabling the safety button)
2021-03-18 19:33:19 -04:00
David Sidrane e9409e59e6 NuttX with flexcan CTRL1 fixes backports 2021-03-18 21:38:56 +01:00
David Sidrane 395519ac66 uavcan_stm32h7:can driver preserve ordering
Refering to the refernece manual:

     Tx queue operation is configured by programming FDCAN_TXBC.TFQM to 1. Messages
     stored in the Tx queue are transmitted starting with the message with the lowest message
     ID (highest priority). **In case that multiple queue buffers are configured with the same
     message ID, the queue buffer with the lowest buffer number is transmitted first**

    Tx FIFO operation is configured by programming FDCAN_TXBC.TFQM to 0. Messages
    stored in the Tx FIFO are transmitted starting with the message referenced by the get index
    FDCAN_TXFQS.TFGI. After each transmission the get index is incremented cyclically until
    the Tx FIFO is empty. The Tx FIFO enables transmission of messages with the same
    message ID from different Tx buffers in the order these messages have been written to the
    Tx FIFO

    The issue will be cancelation:

    The FDCAN supports transmit cancellation. To cancel a requested transmission from a
    dedicated Tx buffer or a Tx queue buffer the Host has to write a 1 to the corresponding bit
    position (= number of Tx buffer) of register FDCAN_TXBCR. Transmit cancellation is not
    intended for Tx FIFO operation.

    But there is nothing preventing it. This seems to indicate it will
    work. When a transmission request for the Tx buffer referenced by the get index is canceled, the
    get index is incremented to the next Tx buffer with pending transmission request and the Tx
    FIFO free level is recalculated. When transmission cancellation is applied to any other Tx
    buffer, the get index and the FIFO free level remain unchanged.
2021-03-18 18:31:05 +01:00
David Sidrane 52a29ac6cf uavcan_stm32h7:can driver add proper timeouts 2021-03-18 18:31:05 +01:00
dinomani 4bf894a35d Update platforms/nuttx/src/px4/stm/stm32h7/include/px4_arch/micro_hal.h
Co-authored-by: David Sidrane <David.Sidrane@Nscdg.com>
2021-03-18 06:13:24 -07:00
dino 44b2e0b729 As David request 2021-03-18 06:13:24 -07:00
dino 7c8b7fa44d Fixed typo and added support for H7 temperature sense on ADC3 2021-03-18 06:13:24 -07:00
dino 6d04a67b02 Moving define to microhal.h files, for each ST architecture. Correct channels were verified with ST_CUBE header files. For the H7 its a simplification for the current used H7x3. Other devices in that family expect the temperarture on channel 18.
F1: channel 16
F3: channel 16
F4: channel 18
F7: channel 18
H7: channel 17, on STMf32Hx3
2021-03-18 06:13:24 -07:00
dino 528dc41822 changed #elif to #else, to build on all targets 2021-03-18 06:13:24 -07:00
dino 3c77ef7eb3 Fixed adc config, to read internal reference to get cpu temperature 2021-03-18 06:13:24 -07:00
Daniel Agar 7c2b945c21 ROMFS: posix rcS add gyro_fft and gyro_calibration start 2021-03-18 10:04:04 +01:00
Daniel Agar 8000e6feba gyro_fft: reduce default max
- we're mainly looking for lower frequencies that may be an issue for control
2021-03-18 10:04:04 +01:00
Daniel Agar c7c6122bfd gyro_fft: manually inline subset of arm_rfft_init_q15 to save flash 2021-03-18 10:04:04 +01:00
Daniel Agar 1429423876 gyro_fft: support sensor_gyro (non-fifo) 2021-03-18 10:04:04 +01:00
alexklimaj 69e57b22ac Add LEDs to ARK Can Bootloader 2021-03-17 18:10:22 -04:00
alexklimaj 38ce892582 ARK Flow sensor rotations 2021-03-17 18:06:38 -04:00
Dima Ponomarev e660b50021 uavcan: add IMU sensor support 2021-03-17 18:04:12 -04:00
Lorenz Meier d35ce21594 PWM out: Ensure correct loading on single-bank targets 2021-03-17 22:03:18 +01:00
Lorenz Meier 9490c64ad4 PWM out: provide running state
Important to know if the app is running.
2021-03-17 22:03:18 +01:00
Lorenz Meier 33c5f4210a X7 disable FFT
This depends on the IMU driver supporting queue
2021-03-17 22:03:18 +01:00
Lorenz Meier 935cc05c47 FMU PWM OUT: Start driver in interface 2021-03-17 22:03:18 +01:00
Lorenz Meier dd400e9562 Modal: Fix tabs in start script 2021-03-17 22:03:18 +01:00
Lorenz Meier 8cc3247d21 PWM command: Switch default to status, leave info 2021-03-17 22:03:18 +01:00
Lorenz Meier 0efa7556fe VTOL airframe: Remove spurious tab 2021-03-17 22:03:18 +01:00
Lorenz Meier 595b3a05fb Draco airframe: Remove tabs 2021-03-17 22:03:18 +01:00
Lorenz Meier 4af42be3f3 IFO-S airframe: Remove tabs 2021-03-17 22:03:18 +01:00
Lorenz Meier e887aa902f IFO airframe: Remove tabs 2021-03-17 22:03:18 +01:00
Lorenz Meier 06f7c49d3a Baby-shark airframe: Remove spurious tabs 2021-03-17 22:03:18 +01:00
Lorenz Meier 3c19853f6c ROMFS pruner: Detect spurious tabs
This is necessary to make sure that users cannot insert tabs into shell commands.
2021-03-17 22:03:18 +01:00
Lorenz Meier 21f5f9fba0 Param: Print failing param name
This is important for any sort of boot logs to know which parameter failed.
2021-03-17 22:03:18 +01:00
Lorenz Meier c4e86f69c6 X7: Correct RGB led configuration
This removes unused modules and keeps the currently used ones in place.
2021-03-17 22:03:18 +01:00
Lorenz Meier dc1e7335a3 UAVCAN: Lower debug print level 2021-03-17 22:03:18 +01:00
Lorenz Meier 9fe2f84db5 CUAV X7 Pro: Remove unneeded drivers. 2021-03-17 22:03:18 +01:00
Lorenz Meier 13e0b74782 MAVLink: Increased stack size
This is needed for MAVLink shell and UAVCAN.
2021-03-17 22:03:18 +01:00
Lorenz Meier c904767f1d Always start airspeed
This ensures we get readings in the log and in the telemetry even if the sensor is disabled.
2021-03-17 22:03:18 +01:00
Lorenz Meier 891b231215 Ensure that AUX mixer is loaded when 2nd bank is present 2021-03-17 22:03:18 +01:00
Lorenz Meier 38f306908d Remove PWM14 VTOL airframe 2021-03-17 22:03:18 +01:00
Daniel Agar e7722b11eb pwm_out multi-instance support
PX4 uses banks of 8 outputs as a logical structure. Boards that have
more outputs than 8 get multiple instances. This is an arbitrary choice
that helps with overall structure and enables the mixing of different
device classes (like FMU, IO or UAVCAN).
2021-03-17 22:03:18 +01:00
Daniel Agar c1c0a62be5 drivers/gps: log automatic gain control (AGC) monitor 2021-03-17 15:11:43 -04:00
Daniel Agar 385512aead uORB: test multi timestamp requirement only applies per topic instance 2021-03-17 12:35:53 -04:00
Daniel Agar 205beb9526 boards: revert remaining CONFIG_ARMV7M_LAZYFPU 2021-03-17 09:58:23 -04:00
Matthias Grob 25dd12382a FlightTaskOrbit: default center at exact vehicle location 2021-03-17 09:50:11 -04:00
Matthias Grob ef774578e1 FlightTaskOrbit: NACK command if coordinates could not get applied 2021-03-17 09:50:11 -04:00
Ryan Johnston bffa83bd47 Reverting LAZYFPU for v1.12 beta1 Compatibility
Without reverting this a constant boot loop occurs.

Prior to merging, why this occurs on some F7 boards and not this one should be looked at.

With LazyFPU enabled, v1.12.0 beta1 will not boot but without it removed it works fine.
2021-03-17 06:10:02 +01:00
David Sidrane ccee36bb68 sd_bench and logger use aligned buffers 2021-03-17 05:27:53 +01:00
David Sidrane 45d0603627 micro_hal:Fixed DCACHE_LINESIZE abuse 2021-03-17 05:27:53 +01:00
garfieldG e9725a5fa7 Merge pull request #17089 from garfieldG/pr-safety_switch_status
send safety switch status to ground
2021-03-17 05:23:31 +01:00
PX4 BuildBot 5ad8ed6994 Update submodule devices to latest Wed Mar 17 00:38:33 UTC 2021
- devices in PX4/Firmware (dd479f9cca): https://github.com/PX4/PX4-GPSDrivers/commit/d7100ddc3dfdbe9702d0d21542a9ca3f4ea42652
    - devices current upstream: https://github.com/PX4/PX4-GPSDrivers/commit/0acaf6185245382389f7f6019cee6537d8f5a8e6
    - Changes: https://github.com/PX4/PX4-GPSDrivers/compare/d7100ddc3dfdbe9702d0d21542a9ca3f4ea42652...0acaf6185245382389f7f6019cee6537d8f5a8e6

    0acaf61 2021-02-26 Beat Küng - output mode: add GPS+RTCM output for PPK
2021-03-17 05:21:20 +01:00
Daniel Agar dd479f9cca drivers/imu/analog_devices/adis16470: Analog Devices ADIS16470 IMU driver for CUAV x7pro 2021-03-16 18:00:06 -04:00
Daniel Agar 4092f87390 paw3902: fixes and improvements
- fully respect datasheet quality and shutter metrics for mode changes
 - use MOTION pin for scheduling if available
 - log light mode
 - refactor common enable LED code
 - respect read and write time delays
2021-03-16 15:52:03 -04:00
Daniel Agar 34ea056bd2 Update submodule mavlink v2.0 to latest Tue Mar 16 12:39:08 UTC 2021 2021-03-16 15:50:23 -04:00
PX4 BuildBot c368aa180a Update submodule sitl_gazebo to latest Tue Mar 16 12:39:03 UTC 2021
- sitl_gazebo in PX4/Firmware (00016e53fa): https://github.com/PX4/PX4-SITL_gazebo/commit/6b6f4749a74215b9a4fb81cfaa99a3950f13464d
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/b195315b869a5e86e31bcb934ca85172d4f5f33f
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/6b6f4749a74215b9a4fb81cfaa99a3950f13464d...b195315b869a5e86e31bcb934ca85172d4f5f33f

    b195315 2021-03-16 JaeyoungLim - Revert "Pr liftdrag coefficients (#690)" (#730)
2021-03-16 15:49:58 -04:00
David Sidrane 243adf5250 NuttX with SDMMC back ports 2021-03-16 15:37:41 -04:00
Fabrizio Romanelli 853459c21b Tools/setup/ubuntu.sh: Update to allow multiple host architectures 2021-03-16 13:33:48 -04:00
Daniel Agar 00016e53fa boards: holybro/kakutef7 disable CONSTRAINED_FLASH to increase optimization 2021-03-16 10:30:32 +01:00
Inhwan Wee c67d85945b [commander] more detailed print_status 2021-03-16 01:00:55 -04:00
Daniel Agar 29d4ad1848 fw_pos_control_l1: OFFBOARD fully populate position_setpoint_triplet 2021-03-16 00:58:04 -04:00
Ryan Johnston bcf93304c7 Board ID Update
Needed for updating firmware (due to boot loader).
2021-03-16 00:51:17 -04:00
Ryan Johnston 8e6987d480 Board ID update
Needed for firmware to update.
2021-03-16 00:51:17 -04:00
Daniel Agar 5d63306427 Update submodule GPS drivers to latest Tue Mar 16 00:40:31 UTC 2021 2021-03-16 00:50:13 -04:00
Daniel Agar be58db1ec9 boards: cubepilot_cubeorange_console add gyro_fft 2021-03-16 00:49:45 -04:00
Daniel Agar 8261ee5fd7 boards: px4_fmu-v5_stackcheck add gyro_fft 2021-03-16 00:49:45 -04:00
Daniel Agar ed8f6aa8fe gyro_fft: fix bucket_index size
- needed for larger FFT lengths (eg 1024, 2048, etc)
2021-03-16 00:49:45 -04:00
Daniel Agar 0eac534b80 geo: purge globallocal_converter 2021-03-15 16:16:19 -04:00
Daniel Agar ae67c53b1e boards: px4_fmu-v6u_default address flash shortage
- create separate px4_fmu-v6u_test variant for onboard testing code
2021-03-15 14:19:00 -04:00
Daniel Agar 4b99bd2077 boards: remove optional external ADIS IMUs to save flash 2021-03-15 13:37:24 -04:00
Daniel Agar b20949e664 mission feasibility: Fix first wp too far message overflow
Co-authored-by: Sander Smeets <sander@droneslab.com>
2021-03-15 12:40:52 -04:00
Daniel Agar 6cdc034f08 camera_trigger: cleanup
- add copyright headers and update year
 - move initializers to header
 - add PX4_DEBUG messages
2021-03-15 12:35:41 -04:00
Sander Smeets 517a1d0116 battery_status: factor in total current consumption in battery remaining estimation 2021-03-15 12:32:45 -04:00
RomanBapst 82a2126f97 TECS: add feedforward gain for total energy balance rate
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-03-15 11:47:07 -04:00
Daniel Agar edd42cfa86 boards: px4/fmu-v5x disable optional external IMU drivers 2021-03-15 11:16:38 -04:00
Daniel Agar 0b4006ae86 boards: CUAV x7pro disable SPI6 IMU until NuttX BDMA is fixed 2021-03-15 10:54:43 -04:00
Daniel Agar 20d8de2dca gyro_fft: reduce run frequency (still consuming all queued data) 2021-03-15 09:42:35 -04:00
Daniel Agar 3c80db9796 boards: stm32f7 run gyro_fft by default 2021-03-15 09:42:35 -04:00
Lorenz Meier a5151f92ea Merge pull request #17065 from PX4/pr/fix-mavlink-shell
MAVLink shell: Ensure that nothing is written to the file handles during shell creation.
2021-03-15 09:47:58 +01:00
Daniel Agar 2257c3767e simple gyro auto calibration module 2021-03-15 09:46:47 +01:00
jciberlin 01c9a4f24d ghst: fix warning generated on PR (Clang Tidy)
Fix warning generated on PR (Clang Tidy).
2021-03-15 09:42:53 +01:00
jciberlin 6f5efbeab5 ghst_telemetry: send battery status
Send battery status (ghst_telemetry). Apply factors to show correct values of volts, amps and mAh. Change ghost protocol code to follow more MISRA C++ guidelines.
2021-03-15 09:42:53 +01:00
Daniel Agar af3573e464 gyro_fft: log peak frequency magnitudes 2021-03-15 09:42:08 +01:00
Daniel Agar 3665f9a3c4 gyro_fft: increase default range and length to improve test data 2021-03-14 20:17:41 -04:00
Daniel Agar 893eee4cb8 logger: double sensor_gyro_fft logging rate 2021-03-14 20:17:41 -04:00
Daniel Agar cfb3099870 boards: mRo pixracer pro restore USART6, but RX only 2021-03-14 16:32:22 -04:00
Lorenz Meier 72ca6902f0 Updated README - general refresh 2021-03-14 14:56:24 +01:00
Jaeyoung-Lim 6b4ccaa53e Handle invalid yaw rate setpoints 2021-03-14 00:01:57 +01:00
Jaeyoung-Lim 06e3d38bbd Fix yaw rate ignore flag for attitude setpoints
This PR fixes the yaw rate ignore case handling for offboard control using the SET_ATTITUDE_TARGET message
2021-03-14 00:01:57 +01:00
David Sidrane 28681405ae nxp_fmuk66-v3:Disable CONFIG_MMCSD_MULTIBLOCK (_DISABLE=y) 2021-03-12 20:45:45 +01:00
David Sidrane 3e443f7dcc nxp_fmuk66-e:Disable CONFIG_MMCSD_MULTIBLOCK (_DISABLE=y) 2021-03-12 20:45:45 +01:00
CarlOlsson 528127c372 fw_att_ctrl: remove unused variable 2021-03-12 12:19:29 -05:00
romain-chiap f150e1e7aa sih: time constant added on thrusters, and minor cleanup 2021-03-12 12:04:14 -05:00
ArkadiuszNiemiec 1d8c55db4a mavlink: fix yaw and yaw_rate ignore mask check 2021-03-12 16:34:41 +01:00
Daniel Agar 7fb43559f8 gyro_fft: run by default on STM32H7 2021-03-12 07:50:31 -05:00
Beat Küng 9ceef80e06 param: remove set-default print's during bootup 2021-03-12 13:44:10 +01:00
Beat Küng af8c3215f2 logger: add airframe and system-wide default parameters
- adds new ulog message & compatibility flag
- separately add airframe and system-wide defaults
- log only non-volatile defaults that are different from the current value
- additional size is ~3KB for 100 params
2021-03-12 13:44:10 +01:00
Beat Küng b512a3d8f7 param: add param_get_system_default_value 2021-03-12 13:44:10 +01:00
Daniel Agar c356181f90 px4_work_queue: increase wq:rate_ctrl stack 2021-03-11 22:35:25 -05:00
Daniel Agar 0079cb708c gyro_fft: don't update FFT length while running
- this is used for the length of dynamically allocated buffers that
aren't resized while running
2021-03-11 21:53:59 -05:00
Daniel Agar ee7b6c0e9f mavlink: delete fake CAMERA_CAPTURE stream 2021-03-11 23:00:00 +01:00
Daniel Agar d98e1ded6b mavlink: mavlink main report lost vehicle_command_ack 2021-03-11 15:04:53 -05:00
Daniel Agar b0a4f35024 mavlink: mavlink main vehicle_commands only handled in iridium mode 2021-03-11 15:04:53 -05:00
Daniel Agar eef304110d uavcan: uavcan_servers only acknowledge supported commands 2021-03-11 15:04:53 -05:00
Julian Oes c13266ad26 Tools: add env variable to disable follow mode
This adds the env variable PX4_NO_FOLLOW_MODE to disable the follow mode
in Gazebo.
2021-03-11 20:02:16 +01:00
Daniel Agar 4a7b2c490a mavlink: messages cleanup remaining headers 2021-03-11 11:46:14 -05:00
Daniel Agar 3f872ebf20 mavlink: move HEARTBEAT to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 0c138b7e03 mavlink: move CAMERA_TRIGGER to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar b955c41a63 mavlink: move COMMAND_LONG to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 801202f208 mavlink: move BATTERY_STATUS to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar dc1418a3b4 mavlink: move SYS_STATUS to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 5a025cfa28 mavlink: move SMART_BATTERY_INFO to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar ec6758f5af mavlink: move HIGHRES_IMU to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 248978b25e mavlink: move SCALED_PRESSURE to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 477d8c3738 mavlink: only include HIGH_LATENCY2 stream on non flash constrained builds 2021-03-11 11:46:14 -05:00
Daniel Agar c6311324d2 mavlink: move VFR_HUD to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar d46ae7983f mavlink: move GPS_RAW_INT to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 67a204206a mavlink: move GPS2_RAW to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar e2f7427679 mavlink: move AUTOPILOT_STATE_FOR_GIMBAL_DEVICE to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 462d67f2b6 mavlink: move TIMESYNC to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 849000ebeb mavlink: move SYSTEM_TIME to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar af06adecd3 mavlink: move ADSB_VEHICLE to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar ecfbd79a90 mavlink: move UTM_GLOBAL_POSITION to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar e04252151c mavlink: move GIMBAL_DEVICE_ATTITUDE_STATUS to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar c9d44d5741 mavlink: move GIMBAL_MANAGER_INFORMATION to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar aaf7b41dda mavlink: move GIMBAL_MANAGER_STATUS to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 581e28eb33 mavlink: move GIMBAL_DEVICE_SET_ATTITUDE to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar ddca669852 mavlink: move CAMERA_IMAGE_CAPTURED to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 50bd757037 mavlink: move GLOBAL_POSITION_INT to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar ede01e8f1a mavlink: move ODOMETRY to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 7daa97f279 mavlink: move LOCAL_POSITION_NED to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 5f7d577e04 mavlink: move ESTIMATOR_STATUS to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar a1a557cfe3 mavlink: move VIBRATION to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 239ed19827 mavlink: move ATT_POS_MOCAP to separate stream header
- now only available on non flash constrained boards
2021-03-11 11:46:14 -05:00
Daniel Agar 3964cfb3a7 mavlink: move HOME_POSITION to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar f7ee6b3c5e mavlink: move SERVO_OUTPUT_RAW to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 5eef9358d9 mavlink: move ACTUATOR_CONTROL_TARGET to separate stream header 2021-03-11 11:46:14 -05:00
Daniel Agar 7d78cf8505 parameters: param_value_is_default() add note about params_changed bitset usage 2021-03-11 11:30:43 -05:00
Daniel Agar a991e78e18 parameters: fix runtime default edge case 2021-03-11 11:30:43 -05:00
Matthias Grob ceb445caa0 Run mc_pos_control for acceleration control mode flag 2021-03-11 10:37:03 -05:00
Daniel Agar 6a6352577c cmake: nuttx error if GCC <= 7 2021-03-11 03:36:34 -08:00
Daniel Agar f725813128 add bootloader flash helper target (jlink_flash_bootloader) 2021-03-11 09:03:42 +01:00
Matthias Grob 8816601efb FlightTaskManualAcceleration: fix velocity setpoint initialization 2021-03-11 00:40:27 +01:00
Matthias Grob 89b502b9a0 FlightModeManager: remove switching out of a task for every mode change
This was an idea to be able to reinitialize on mode change e.g. from
Holde mode to Land mode which are currently all still handled by
FlightTaskAuto and don't require a task switch.

But I found out it leads to issues because the last setpoint and the
ekf reset counter state from the previous task are lost and as a result
the setpoint transition cannot be handled consistently anymore.
2021-03-11 00:40:27 +01:00
Matthias Grob 63a35ccabd StickAccelerationXY: fix losing the internal velocity setpoint state
because of a failing position unlock with NAN velocity setpoint feedback.
2021-03-11 00:40:27 +01:00
Matthias Grob 54fe0ae98c FlightModeManager: rename updateVelocityController{IO} to {Feedback} 2021-03-11 00:40:27 +01:00
David Jablonski 02abb760a3 SITL: add iris with fog-simulating lidar 2021-03-11 00:39:09 +01:00
Daniel Agar f8eaa6e46b ROMFS handle bl_update generically
- include all available legacy bootloaders
2021-03-11 00:38:18 +01:00
Daniel Agar 3ad0da51c4 Makefile: wipe incomplete ninja build generation 2021-03-10 17:16:19 +01:00
mohamed.moustafa 6914ebef4e added messages required by offboard_control example 2021-03-10 08:42:33 -05:00
Jaeyoung-Lim 1d66b033a4 Append mixer with aux outputs 2021-03-10 07:15:53 +01:00
Jaeyoung-Lim 0db29866f1 Add standard_vtol drop 2021-03-10 07:15:53 +01:00
PX4 BuildBot d2b63f137e Update submodule ecl to latest Wed Mar 10 00:59:16 UTC 2021
- ecl in PX4/Firmware (557d8f65d89cd3da4a0e88af2a7bb1a16ebf3ff9): https://github.com/PX4/PX4-ECL/commit/4bad2a272cfbcfd2ef2c77bb4af788f5b569aaaa
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/b3c1bd6d40952a9d467497162f91f28400ae0a3d
    - Changes: https://github.com/PX4/PX4-ECL/compare/4bad2a272cfbcfd2ef2c77bb4af788f5b569aaaa...b3c1bd6d40952a9d467497162f91f28400ae0a3d

    b3c1bd6 2021-03-09 Paul Riseborough - EKF: Remove un-used code
2021-03-09 23:19:22 -05:00
Daniel Agar 684424bf73 parameters: delete unused BSON_BINDATA handling 2021-03-09 19:29:42 -05:00
Daniel Agar 4d288512b5 add board architecture specific init defaults 2021-03-09 19:59:41 +01:00
Silvan Fuhrer e53e001de1 Airspeed Selector: do not run checks during landing
Stall speed check would otherwise trigger during landing if airspeed falls below
stall speed before landing is detected.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-03-09 19:23:48 +01:00
Daniel Agar 440e72e697 boards: cuav nora/x7pro don't have low speed external (LSE) oscillator 2021-03-09 10:49:57 -05:00
Daniel Agar a11d2207e4 commander: simplify failure detector is attitude stabilized check 2021-03-09 10:47:00 -05:00
Daniel Agar dff975698e mc_rate_control: delete unused _landing_gear_pub 2021-03-09 10:47:00 -05:00
Daniel Agar cc3c6f63e5 mc_rate_control: simplify manual_control_setpoint update 2021-03-09 10:47:00 -05:00
Daniel Agar bb12fce66c delete RATTITUDE flight mode 2021-03-09 10:47:00 -05:00
Daniel Agar d37510a43d update UUV and rover controllers to use trajectory_setpoint and cleanup unused position_setpoint fields 2021-03-09 10:36:34 -05:00
Daniel Agar a0b9b44ff6 boards: stm32h7 set CONFIG_SDMMC1 consistently 2021-03-09 09:37:05 -05:00
Daniel Agar bd1c575ce8 lib/sensor_calibration: add simple offset and scale sanity checks 2021-03-09 09:27:21 -05:00
Peter van der Perk c4ab2797eb Added the notion of BaseSubscriber which allows to
subsscription for services responses and request and helps the usage of fixed
port subscribers Furthermore move register autconfigure logic from Uavcan.cpp
to NodeManager
2021-03-09 14:35:50 +01:00
CUAVcaijie 9f9b01504d Modify the way to clear Data 2021-03-09 11:00:03 +01:00
David Jablonski 063bb75891 simulator: fix lidar sensors 2021-03-08 21:27:39 -05:00
Matthias Grob c96d9a79b8 mc_att_control_params: remove frequency unit from attitude gains 2021-03-08 11:14:01 -05:00
David Sidrane c792879612 Nuttx: PX4 Contrib Ethernet Hardening 2021-03-08 10:37:08 -05:00
Daniel Agar cbb2fa440b sensors/vehicle_angular_velocity: only allocate dynamic notch perf counters if enabled (IMU_GYRO_DYN_NF) 2021-03-08 10:35:48 -05:00
Daniel Agar 68c171fd4f land_detector: continue respecting hover thrust throughout descent 2021-03-08 11:33:36 +01:00
Jaeyoung-Lim 1fa08c3997 Fix actuator controls timestamps for MAV_CMD_DO_SET_ACTUATOR
Fix actuator controls timestamps for MAV_CMD_DO_SET_ACTUATOR
2021-03-07 20:31:24 -05:00
Paul Riseborough 4465c4fbf6 ekf2: Publish and log EKF warning and information events (NEW msg estimator_event_flags)
* msg: Add estinator information and warning events message (estimator_event_flags)
 * ekf2: publish information and warning events
 * logger: log estimator_event_flags
 * update ecl submodule to latest

Co-authored-by: Daniel Agar <daniel@agar.ca>
2021-03-07 16:16:48 -05:00
Peter van der Perk 18a8d89fa4 PNP fixed allocation scheme
Fixed register scheme
Incrased wq:uavcan stack since it overflowed when sending register response
2021-03-07 21:49:05 +01:00
Peter van der Perk 28c76663cd UAVCANv1 Move PNP from UAVCAN.cpp to NodeManager.cpp 2021-03-07 21:49:05 +01:00
Kevin Dominic Merkel d5e468a19e change typhoon_h480 roll-/pitchrate P gain to reduce oscillations (#17044) 2021-03-07 18:18:00 +01:00
Daniel Agar 35488337d3 mc_pos_control: add OFFBOARD takeoff intent 2021-03-07 11:04:17 +01:00
Daniel Agar 22abe1619b Update submodule mavlink v2.0 to latest Sat Mar 6 00:39:07 UTC 2021 2021-03-05 21:00:39 -05:00
PX4 BuildBot 1eff1aa83c Update submodule sitl_gazebo to latest Sat Mar 6 00:39:04 UTC 2021
- sitl_gazebo in PX4/Firmware (263b00b65f): https://github.com/PX4/PX4-SITL_gazebo/commit/bebb9a95f0b61bf9e4c3de345fab70985c1329b3
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/c7524aa977539d8cc972d9336355bc82e2f2cfa5
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/bebb9a95f0b61bf9e4c3de345fab70985c1329b3...c7524aa977539d8cc972d9336355bc82e2f2cfa5

    c7524aa 2021-02-28 Jaeyoung-Lim - Fix MAVSDK SITL tests
f4d5594 2021-02-28 JaeyoungLim - Increase rover model realtime factor (#715)
2021-03-05 21:00:07 -05:00
Daniel Agar 263b00b65f ekf2 support SET_GPS_GLOBAL_ORIGIN and remove globallocalconverter usage
- vehicle_command cmd extended from uint16 to support PX4 internal commands that don't map to mavlink
2021-03-05 18:25:14 -05:00
David Sidrane 12a4b0334f px4_fmu-v6u:Use Auto LSE Drive setting 2021-03-05 15:40:09 -05:00
David Sidrane 2af106d888 px4_fmu-v6x:Use Auto LSE Drive setting 2021-03-05 15:40:09 -05:00
David Sidrane d94ff14e6b px4_fmu-v5x:Use Auto LSE Drive setting 2021-03-05 15:40:09 -05:00
David Sidrane f44a299e3b px4_fmu-v5:Use Auto LSE Drive setting 2021-03-05 15:40:09 -05:00
David Sidrane c2a5b5ed88 holybro_durandal-v1:Use Auto LSE Drive setting 2021-03-05 15:40:09 -05:00
Ryan Johnston 9d0a8928bd Update chip type
Update chip type from NI to II.
2021-03-05 21:28:36 +01:00
Ryan Johnston 0958b30804 Fix i2c4 bus
Fix i2c4 bus (and subsequent CI errors)
2021-03-05 21:28:11 +01:00
Ryan Johnston 2bf508061a Update i2c bus
Change internal bus 2 to external.
2021-03-05 21:28:11 +01:00
Ryan Johnston 17b48102f4 Update i2c mapping and i2c clock source
i2c4 was mapped incorrectly and i2c4 clock source wasn't present.
2021-03-05 21:28:11 +01:00
bbworld 7525722b1a Add support for specifying spawn location in Gazebo multi sim
This commit adds support for specifying the spawn location of vehicles
in the Gazebo multi-vehicle simulator script (frame:number:x:y).
Behavior when x and y are not specified remains the same as before.
2021-03-05 21:26:54 +01:00
Ryan Johnston daf744c678 MRO Control Zero F7 OEM Fixes (#16977)
* Update i2c 4 pinmap on F7 OEM

Update i2c 4 pinmap

* Fix i2c Internal to External on F7 OEM

Fix i2c Internal to External on F7 OEM

* Add Can2 Silent Pin

Add Can2 Silent Pin
2021-03-05 21:26:15 +01:00
Nicolas MARTIN 66beffa2f3 Enable pre-arm checks in HIL modes
by airframe parameters HIL mode will still disable:
 - usb check
 - power checks
 - safety switch
2021-03-05 21:23:31 +01:00
CarlOlsson b4b424bf7d tecs: also fix the bug in update_vehicle_state_estimates() 2021-03-05 19:44:20 +01:00
CarlOlsson 0f461f7f60 TECS: Fix internal state init if dt is large 2021-03-05 19:44:20 +01:00
Matthias Grob 114e85d260 MultiCopterPositionControl: hotfix emergency failsafe
that prevents the vehicle from crashing with invalid setpoints or
states.

This broke with #16869 when the scheduling of the position control module
and the setpoint generation got independent. The failsafe mechanism assumed
the setpoint is overwirtten by the possibly infeasible input on every loop
iteration which is not the case anymore. As a result the failsafe reset its
histeresis based on the failsafe setpoint from the last loop iteration.

Keeping the failsafe_setpoint separate solves this issue. Note that
these setpoints to the bare minimum to keep the vehicle safely in the air
and do not suffer from sideffects ignoring the EKF reset.
2021-03-05 11:29:36 -05:00
Daniel Agar fddcb73802 sensors/vehicle_angular_velocity: dynamic notch filter support ESC RPM (untested) 2021-03-05 10:56:54 -05:00
Daniel Agar 573034aa8e Jenkins hardware print ORB_ID(sensor_selection) 2021-03-05 10:56:54 -05:00
Daniel Agar d5d5b7d82e sensors/vehicle_angular_velocity: add perf counters 2021-03-05 10:56:54 -05:00
Daniel Agar 19de1e57e3 gyro_fft promote to modules and include on all boards 2021-03-05 10:56:54 -05:00
Daniel Agar 00b3b3678b sensors/vehicle_angular_velocity: gyro dynamic notch filters updated from onboard FFT 2021-03-05 10:56:54 -05:00
David Sidrane ed6269b9a5 STMx7 LSE backports 2021-03-05 10:10:19 -05:00
Daniel Agar 077afdf9aa commander: extend reliant on opt flow to ALTCTL (degraded from POSCTL)
If you're flying in manual position control mode and lose position the state machine will put you in altitude control mode. Extending the reliant on optical flow relaxed position validity thresholds allows you to potential get back into position control mode with flow alone.
2021-03-05 10:07:36 -05:00
Daniel Agar d0c9a5fc93 OFFBOARD mode architecture overhaul (#16739)
- handle SET_POSITION_TARGET_LOCAL_NED and SET_POSITION_TARGET_GLOBAL_INT with ORB_ID(trajectory_setpoint)
 - FlightTaskOffboard not needed at all
 - bypass position_setpoint_triplet entirely (start removing extraneous fields)
 - simplify offboard_control_mode to map to supported control modes
2021-03-05 09:39:46 -05:00
David Jablonski 5233737a86 adjust some limits to prevent divide-by-zero 2021-03-05 10:42:19 +01:00
Gonçalo Atanásio 9f6c882d2a boards: crazyflie v2.1 Default to EKF2 with no MAG
Co-authored-by: TheLegendaryJedi <goncalo.atanasio@gmail.com>
2021-03-04 19:30:17 -05:00
Matthias Grob 5bbc66f3af ManualControl: name, message, comment, const qualifier improvements
addressing review from @bresch, @julianoes and @JonasVautherin
2021-03-04 10:41:21 +01:00
Matthias Grob 2f39651f77 ManualControl: use current sample for timeout check 2021-03-04 10:41:21 +01:00
Matthias Grob a43a829fdf Commander: gate manual control setpoint processing on new data 2021-03-04 10:41:21 +01:00
Matthias Grob 935423b563 ManualControl: start to distinguish rc arming methods 2021-03-04 10:41:21 +01:00
Matthias Grob c16b48fd2c Commander: Replace manual_control_setpoint use 2021-03-04 10:41:21 +01:00
Matthias Grob 49c240f49e Commander: simplify rc arming disabling logic 2021-03-04 10:41:21 +01:00
Matthias Grob ca3bfb5ea1 ManualControl: simplify multicopter manual thrust logic 2021-03-04 10:41:21 +01:00
Matthias Grob a796903e21 ManualControl: fix arm button use case 2021-03-04 10:41:21 +01:00
Matthias Grob 37ea78a7ff Commander: move rc arming to ManualControl class
Separating the different arming methods is the next step.
2021-03-04 10:41:21 +01:00
Matthias Grob 00a4133042 ManualControl: make members private again 2021-03-04 10:41:21 +01:00
Matthias Grob ee2d408edc Commander: move rc availability to ManualControl 2021-03-04 10:41:21 +01:00
Matthias Grob 0e1f1a9f57 Commander: use parameters directly in ManualControl 2021-03-04 10:41:21 +01:00
Matthias Grob dda895c94b Commander: split out rc override logic into ManualControl 2021-03-04 10:41:21 +01:00
Matthias Grob a4da15edf5 Commander: RC override back to stick change
Instead of deflection mainly because:
- Spring loaded throttle -> bad user experience
- Stale RC data -> Vehicle not savable
2021-03-04 10:41:21 +01:00
Matthias Grob 3d87982bba Commander: reintroduce last stick position 2021-03-04 10:41:21 +01:00
Julian Kent cdadfabccc Bring back RC throttle override with a parameter to disable it 2021-03-04 10:41:21 +01:00
SungTae Moon b7ff54b034 add label option for various airframes using same model (#17003) 2021-03-04 09:29:38 +01:00
Ryan Johnston bc8d9af23e Add Lazy FPU
Reported that LAZYFPU  interact with the MTD (FRAM) driver.

https://github.com/PX4/PX4-Autopilot/issues/16548
2021-03-03 14:43:40 -05:00
Ryan Johnston 0047e518aa Add Lazy FPU to Defconfig
Reported that LAZYFPU interacts with the MTD (FRAM) driver.
2021-03-03 14:43:17 -05:00
Matthias Grob 28b89b024f MulticopterPositionControl: fix Takeoff ramp use
- guard against NAN speed_up limit as input to ramp see #14339
- allow negative speed_up limit for ramp to work
2021-03-03 18:53:56 +01:00
Daniel Agar 0eb327743e move min/max distance to ground limits to FlightTask ManualAltitude 2021-03-03 18:53:56 +01:00
Daniel Agar ecd5e57ab5 remove debug 2021-03-03 18:53:56 +01:00
Daniel Agar 0ada59e57b ekf reset remove NAN checks 2021-03-03 18:53:56 +01:00
Daniel Agar 7a7d316a32 Update src/modules/mc_pos_control/PositionControl/CMakeLists.txt
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-03-03 18:53:56 +01:00
Daniel Agar 87f835710b Update src/modules/flight_mode_manager/FlightModeManager.hpp
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-03-03 18:53:56 +01:00
Daniel Agar c891db19f9 Update src/modules/flight_mode_manager/tasks/FlightTask/FlightTask.cpp
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-03-03 18:53:56 +01:00
Daniel Agar 266ea377da move takeoff state machine flight_mode_manager -> mc_pos_control 2021-03-03 18:53:56 +01:00
David Sidrane 823c6078d9 Add rtps build to workflows 2021-03-03 04:55:53 -08:00
David Sidrane 72a3c05ffc nxp_fmuk66-e:Add rtps build 2021-03-02 15:49:03 -05:00
David Sidrane 6542c6e58b nxp_fmuk66-e:Add rtps build 2021-03-02 15:49:03 -05:00
Daniel Agar c9a2d0ed34 IMU_GYRO_RATEMAX set system default to 400 Hz
- MC default is still 800 Hz
2021-03-02 10:08:49 -05:00
Nico van Duijn 16af63e99c v6x: fix icm20649 rotation 2021-03-02 05:27:31 -08:00
Kalyan Sriram b257f9d1fd actuator: add support for MAV_CMD_DO_SET_ACTUATOR
Adds support for using the MAVLink command MAV_CMD_DO_SET_ACTUATOR to
update the actuator values on control group 3 aux{1, 2, 3}. A simple
deconfliction with rc_update is implemented: when a MAVLink command is
sent, RC is disabled for that channel until a major stick movement is
detected.
2021-03-02 12:41:02 +01:00
Beat Küng ada05165f1 mc_pos_control_params: fix param descriptions for negative values 2021-03-02 08:29:58 +01:00
Daniel Agar 4d9e88141e px4_work_queue: increase wq:nav_and_controllers stack 2021-03-02 00:03:17 +01:00
Daniel Agar 0ba1bc0ce1 MPC_POS_MODE remove old metadata and explicitly handle invalid configuration 2021-03-01 09:10:11 +01:00
Alex Mikhalev d01806a0c6 lib/battery: Fix cell voltages with >10S
Signed-off-by: Alex Mikhalev <alex@corvus-robotics.com>
2021-02-28 22:10:23 -05:00
Daniel Agar 9d0c966b15 sensors: publish sensor_selection initially regardless of SENS_IMU_MODE
- in multi-EKF mode the EKF selector becomes repsonsible for sensor
selector rather than the sensors module
 - this updates the sensors module to still make the initial primary IMU
selection on startup before the EKF selector (including if the
estimators never fully initialize)
2021-02-27 20:19:05 +01:00
Daniel Agar 9d47f7ecda simulator: make first accel/gyro simulated FIFO 2021-02-26 18:40:37 -05:00
Daniel Agar 0e796fc17b boards: emlid navio2 enable ADIS16448 2021-02-26 17:56:14 -05:00
Daniel Agar 6b1e7ffdb8 rc_input: fix possible string truncation (-Werror=stringop-truncation) 2021-02-26 17:56:14 -05:00
Daniel Agar e0ade94d25 platforms: add px4_udelay and px4_mdelay
- NuttX: up_udelay and up_mdelay
 - Linux: usleep and msleep
2021-02-26 17:56:14 -05:00
Daniel Agar f1f396e338 uORB: PublicationMulti get_instance() advertise if not already advertised
- fixes UAVCANv0 sensor bridge uORB usage, but also a reason thing to do in general
2021-02-26 17:55:30 -05:00
Daniel Agar 33d12db580 cmake: sitl_target sort lists and trim a few options 2021-02-26 16:14:19 -05:00
David Sidrane da61938792 Jenkinsfile-compile:Fix breakage 2021-02-26 15:15:45 -05:00
Benjamin Perseghetti 52bb99688f Optimize number of logical cores used during sitl builds. 2021-02-26 14:14:52 -05:00
bresch be9b3404a2 lpf test: test several sampling frequencies 2021-02-26 14:06:45 -05:00
bresch 3277648959 lpf test: move to common function 2021-02-26 14:06:45 -05:00
bresch 844602c961 Add unit tests for Butterworth 2nd order low-pass filter 2021-02-26 14:06:45 -05:00
David Sidrane 2345d3ac4a NuttX:FlaxCan Backports 2021-02-26 09:48:14 -08:00
Matthias Grob c2151cb4fa Commander: remove unused arm mode command residue 2021-02-26 07:38:02 -05:00
Daniel Agar 94bcda7c57 navigator: poll mission to run feasibility checks immediately 2021-02-26 10:28:49 +01:00
Daniel Agar 7393d5d761 delete aerotenna ocpoc 2021-02-26 08:38:45 +01:00
Igor Mišić 5f9a98e316 drivers/gps: update RTC only if time drift for 5s
Add interrupt pause comment to help future code archeologists
2021-02-26 08:36:41 +01:00
Daniel Agar 143ebbad98 Update submodule mavlink v2.0 to latest Fri Feb 26 00:40:09 UTC 2021 2021-02-25 21:25:47 -05:00
Daniel Agar fd1fff89d4 dataman: remove flash backend 2021-02-26 00:28:48 +01:00
Daniel Agar 321df7ed84 delete remaining intel aero references 2021-02-25 17:46:18 -05:00
Daniel Agar 3bed87e4bd platforms/posix: try increasing sitl_gazebo build parallelism
- this was limited to single threaded due to CI issues and even
developer machines with limited resources
2021-02-25 16:57:24 -05:00
Daniel Agar ac5167b459 init.d-posix: delete rc.mavlink_override 2021-02-25 13:44:19 -08:00
Daniel Agar a63e25f581 mavlink: GPS_GLOBAL_ORIGIN on by default, but only send on change or when requested 2021-02-25 12:43:30 -05:00
garfieldG 8db37225d6 Added rc.mavlink_override to test the new parameters with sitl 2021-02-25 08:52:38 -08:00
garfieldG 3cd9b3c2cf Added support in Mavlink Ethernet channel parameters
Mavlink Ethernet channel settings such as udp port, remote port and broadcast mode now can be changed dynamically via parameters.
2021-02-25 08:52:38 -08:00
Daniel Agar b66a9629e0 ekf2: update to latest ecl with new global origin helpers 2021-02-25 10:43:07 -05:00
斯东Stone e5b689e33c Add TCBP001TA Barometer Driver (#14774) 2021-02-25 07:11:58 -08:00
Daniel Agar 6482120d9a sensors/vehicle_angular_velocity: use full raw FIFO data (sensor_gyro_fifo) if available 2021-02-25 10:06:17 -05:00
Daniel Agar 8f625e5744 Revert "cmake: Limit color output to terminals"
This reverts commit c1da999748.
2021-02-25 09:34:02 -05:00
Beat Küng 0e8c73f4af drivers: remove snapdragon_pwm_out
- it would need to be refactored to use mixer_module
- rather than having a separate driver it should use linux_pwm_out
2021-02-25 09:28:37 -05:00
Beat Küng 3fa825bf88 boards: remove intel/aerofc-v1
it's discontinued
2021-02-25 09:28:37 -05:00
Beat Küng 7e33d03470 drivers: remove tap_esc
- it's not used anymore
- it would need a refactoring to use mixer_module
2021-02-25 09:28:37 -05:00
Beat Küng 8986264feb airframes: remove aerofc as it's discontinued 2021-02-25 09:28:37 -05:00
Beat Küng f0cc8a344b linux_pwm_out: refactor to run on a work queue and use mixer_module 2021-02-25 09:28:37 -05:00
Beat Küng 439fb00aed linux_pwm_out: move protocols to board-specific directories
This also removes the pca9685 output, which was unused, and there's also
pca9685_pwm_out.
2021-02-25 09:28:37 -05:00
斯东Stone b0a5d431d3 optical_flow/thoneflow: update the data timespan 2021-02-24 21:28:29 -05:00
Daniel Agar 45ba9d1dd5 add all mRo ctrl zero variants to CI 2021-02-24 13:23:21 -05:00
Jacob Crabill 4cca86b5d6 uavcan_v1: Apply feedback from Pavel Kirienko
Co-authored-by: Pavel Kirienko <pavel.kirienko@gmail.com>
2021-02-24 19:22:11 +01:00
JacobCrabill a7a7e33614 uavcan_v1: Rename Subscription --> Subscriber 2021-02-24 19:22:11 +01:00
JacobCrabill b5ac6f1eb8 uavcan_v1: Refactor Pub/Sub class constrctors
Each class now sets the 'subject name', and the base class looks for a
parameter following the format uavcan.pub/sub.SUBJECT_NAME.INSTANCE.id
2021-02-24 19:22:11 +01:00
JacobCrabill c8e66a2f5c uavcan_v1: Rename Publication --> Publisher 2021-02-24 19:22:11 +01:00
JacobCrabill d1eda5ee84 uavcan_v1: Add missing uavcanv1.cmake for fmu-v4 2021-02-24 19:22:11 +01:00
JacobCrabill e654fe71f5 uavcan_v1: Fix 'unset' port ID (use 65535) 2021-02-24 19:22:11 +01:00
JacobCrabill 935bf75b61 uavcan_v1: Fix bugs in MixingOutput / EscClient
Also add commented-out code for use with PR-16808
(MixingOutput + output_control)
Bench-tested PWM output on a Pixracer via UAVCANv1 ESC commands from a
Pixhawk 4.
2021-02-24 19:22:11 +01:00
JacobCrabill 04ea1cf5c6 uavcan_v1: Add to EscClient implementation
Add outline of EscServer implementation
Add some comments and cleanup
2021-02-24 19:22:11 +01:00
JacobCrabill 4b73566b76 uavcan_v1: Add Publisher base; Gnss Publisher 2021-02-24 19:22:11 +01:00
JacobCrabill 216a66b535 uavcan_v1: Remove unused vars 2021-02-24 19:22:11 +01:00
JacobCrabill 35f822fca6 uavcan_v1: Working ESC setpoint pub/sub 2021-02-24 19:22:11 +01:00
JacobCrabill 170345040a uavcan_v1: Add rough ESC Client; Reorg Subscribers 2021-02-24 19:22:11 +01:00
JacobCrabill 00814815f4 uavcan_v1: Reorganize uavcan params and Subscriber 2021-02-24 19:22:11 +01:00
JacobCrabill 088014c2e1 uavcan_v1: Basic subscriber working 2021-02-24 19:22:11 +01:00
JacobCrabill b88e8b6684 uavcan_v1: Increase stack size
Also increases stack frame size limit, which was what the compiler was
throwing an error on.
2021-02-24 19:22:11 +01:00
JacobCrabill 70ff6703b7 uavcan_v1: More work on subscribers and reg access
Now running into issues with running out of stack frame memory
For now I'm going to leave the relevant code in so it's at least
readable, but in its current state it will not compile
2021-02-24 19:22:11 +01:00
JacobCrabill 7d2a6afb79 uavcan_v1: More work on Subscriber class 2021-02-24 19:22:11 +01:00
JacobCrabill c5184f3b46 uavcan_v1: Update UAVCANv1 DSDL submodule 2021-02-24 19:22:11 +01:00
JacobCrabill e267dc0206 uavcan_v1: Start adding framework for Subscribers 2021-02-24 19:22:11 +01:00
JacobCrabill e5cf92f20d uavcan_v1: Refactor RX handling into functions
Cleans up the main transfer-handling loop
2021-02-24 19:22:11 +01:00
David Sidrane 9fd7eb5944 canbootloader:Per UAVCAN call display Percentage not KB 2021-02-24 19:20:15 +01:00
David Sidrane a1be559978 canbootloader:Remove Rate limiting on FW update 2021-02-24 19:20:15 +01:00
David Sidrane fd0494555c canbootloader:stm32_boarddeinitialize->board_deinitialize 2021-02-24 19:20:15 +01:00
David Sidrane 944536fa50 canbootloader:Remove duplicated file from bring it back to repo 2021-02-24 19:20:15 +01:00
David Sidrane 500fe5c98c uavcannode_gps_demo:Add UAVCAN bootloader AppDescriptor 2021-02-24 19:20:15 +01:00
David Sidrane dd3c3098f2 nxp_ucans32k146:Add Can Bootloader build
nxp_ucans32k146:Relocation for Bootloader

nxp_ucans32k146:can_boot enable CAN

nxp_ucans32k146:Save Space use Non Optimize memcpy

nxp_ucans32k146:Increase to 24K

nxp/ucans32k146:Canbootloader LED Driver

nxp_ucans32k146:Can bootloader shut down CAN

nxp_ucans32k146:Use NVMEEPROM for Paramaters

nxp_ucans32k146:Use bootloader AppDescriptor

px4 mtd:Support onchip emulated eeprom
2021-02-24 19:20:15 +01:00
David Sidrane 62c0c96749 canbootloader:Use Micro hal and arch selection
nxp/s32k14x:board_identity: Return length of mfguid

nxp/s32k14x:CAN driver

nxp/s32k14x:Drver Added ABORT on error

canbootloader:Use N words for first word

canbootloader:Ensure the up_progmem API always defined
2021-02-24 19:20:15 +01:00
David Sidrane ea255234da nuttx:[BACKPORT] s32k1xx:Support ramfunc 2021-02-24 19:20:15 +01:00
Beat Küng 46b9acac6d mag_calibration: fix typo 2021-02-24 17:27:31 +01:00
Beat Küng 558fe18dfe sitl: add 'commander takeoff' to history 2021-02-24 17:27:31 +01:00
Beat Küng 836c7c6575 StickAccelerationXY: brake a bit faster
The drag is based on max_acc/max_vel, which means that increasing the
maximum velocity leads to slower braking (at the same starting speed).

Especially a combination of small max_acc (slow responsiveness) with high
max_vel led to an exceedingly high braking distance.
This improves that while still being smooth.
2021-02-24 17:27:31 +01:00
Beat Küng 1be4163506 mc_pos_control_params: increase velocity limits a bit
I hit those on my vehicle
2021-02-24 17:27:31 +01:00
Beat Küng ad9688e63c mc: remove unused param definitions MPC_JERK_MIN and MPC_DEC_HOR_SLOW 2021-02-24 17:27:31 +01:00
Matthias Grob a637f282ce FunctionsTest: cover lerp 2021-02-24 17:27:31 +01:00
Beat Küng 14bf9cf753 mc: add SYS_VEHICLE_RESP param to configure vehicle responsiveness 2021-02-24 17:27:31 +01:00
Beat Küng 2a0a82fd90 param: add commit_no_notification(T val) API 2021-02-24 17:27:31 +01:00
David Sidrane 3ef93823f4 srgbled:Fix warning 2021-02-24 08:05:39 -08:00
Daniel Agar 5f3e883f2c sensors/vehicle_imu: vehicle_imu_status include accel/gyro full raw FIFO sample rate 2021-02-24 08:13:53 -05:00
Ryan Johnston cec31fd685 Remove mkblctrl from default.cmake
Mkblctrl needs to be removed for the build to now succeed.
2021-02-24 08:54:22 +01:00
Ryan Johnston 45dde177ee Remove mkblctrl from default.cmake
Mkblctrl needs to be removed for the build to succeed.
2021-02-24 08:53:35 +01:00
David Sidrane dd736f8540 holybro_can-gps-v1:Ensure yeild is used for FLASH programing 2021-02-23 17:45:25 -05:00
David Sidrane 84b3f51c6b ark_can-flow:Ensure yeild is used for FLASH programing 2021-02-23 17:45:25 -05:00
David Sidrane d8b9def3f8 cuav_an-gps-v1:Ensure yeild is used for FLASH programing 2021-02-23 17:45:25 -05:00
Daniel Agar 6c3262c54b cmake cleanup src/drivers/imu 2021-02-23 15:58:36 -05:00
Daniel Agar 11ad41f7cb delete old imu/mpu6000 driver 2021-02-23 15:58:36 -05:00
Daniel Agar 4364e23633 delete unused imu/bmi160 2021-02-23 15:58:36 -05:00
Daniel Agar f9705c96f7 delete unused imu/bma180 2021-02-23 15:58:36 -05:00
Daniel Agar e38560b928 sensor_calibration: increase threshold for updating calibration offsets or scale
- this is to minimize needlessly writing negligible parameter changes and triggering unnecessary estimator bias resets
2021-02-23 13:32:00 -05:00
Nicolas MARTIN d65d06f82d SIH/gps: express gps position noise in meters and reduce noise value
Previous horizontal position noise was a white Gaussian noise with std=0.8m
It results in a noise with high frequencies too high making some ekf
position tests fail (test ratio to allow arming).

The new noise values are below real GPS errors but as theses errors are
generally low frequency, so they cannot be modeled with a white noise.
2021-02-23 13:27:28 -05:00
Daniel Agar 6cf06319d2 boards: nxp_fmurt1062-v1 remove irlock and lights/blinkm to save flash 2021-02-23 13:23:36 -05:00
Nicolas MARTIN 80a73ab5b5 SIH: add distance sensor fault simulation 2021-02-23 12:57:40 -05:00
Nicolas MARTIN ab41319009 SIH: add distance sensor 2021-02-23 12:57:40 -05:00
Daniel Agar 69bd3ecf95 sensor_calibration: respect board rotation even if uncalibrated
- fixes https://github.com/PX4/PX4-Autopilot/issues/16873
2021-02-23 15:24:14 +01:00
Daniel Agar e2563388eb Jenkins compile removed deleted variant 2021-02-22 20:33:03 -05:00
Daniel Agar cd7713eba2 boards: delete unused variants 2021-02-22 20:08:36 -05:00
Daniel Agar 4a65ad9148 github actions decrease max ccache size
- lower compression level to 5 as recommended by ccache manual
2021-02-22 18:59:35 -05:00
brad112358 d53fcb0bab mavlink: use RADIO_STATUS to regulate parameter sending 2021-02-22 18:57:29 -05:00
Daniel Agar bcae99e34a boards: CUAV Nora don't start icm20649 on SPI6 by default
- waiting on NuttX SPI6 BDMA to be fixed
2021-02-22 12:11:16 -05:00
Daniel Agar 7cc4aa6fe2 vtol_att_control: fix code style 2021-02-22 12:09:39 -05:00
Nicolas MARTIN 50ec809fdf SIH: add mag offset from parameters
An absolute value superior to 10000 block mag publication
2021-02-22 11:56:16 -05:00
Nicolas MARTIN 8f54dc402d SIH: add baro offset (or pressure change) from parameters
An absolute value superior to 10000 block barometer publication
2021-02-22 11:56:16 -05:00
Nicolas MARTIN 1df63cb6b1 SIH: add gps fix loss simulation from parameters
A new parameter allows to change the SIH number of gps satellites used
If it is below 4, fix is lost
2021-02-22 11:56:16 -05:00
Sander Smeets a8a9832b59 Allow new modes for forward thrust 2021-02-22 11:18:49 -05:00
Lorenz Meier 1b8a3079e6 Update commander_params.c
Better documentation boolean settings, removed duplicate boolean.
2021-02-22 11:17:16 -05:00
Lorenz Meier 90f5d7338c Commander: Relax pre-arm check for EKF
The previous testing ratios could lead to extremely tight pre-arm acceptance.
2021-02-22 11:17:16 -05:00
Lorenz Meier f12d368a64 Commander: Document arming check params 2021-02-22 11:17:16 -05:00
Lorenz Meier 87f98f096f Commander: Respect position circuit breaker
This ensures that commander respects the position check circuit breaker and allows arming without position.
2021-02-22 11:17:16 -05:00
Daniel Agar 382e0cbaec px4_work_queue: increase wq:nav_and_controllers stack 1760->1824 2021-02-22 11:15:01 -05:00
David Jablonski ed7a5314d8 rtl: head towards home location after descend 2021-02-22 16:37:08 +01:00
David Jablonski aeccb621c5 rtl: added loiter radius for descending 2021-02-22 16:37:08 +01:00
Daniel Agar 30e8a14be3 logger: update SDLOG_PROFILE comment to reflect current default
- closes https://github.com/PX4/PX4-Autopilot/issues/16904
2021-02-22 08:45:10 +01:00
Ryan Johnston 410ca51a4a boards: MRO Control Zero F7 OEM minor update
- Updating Serial port mapping to be the same across all Control Zero boards
 - CAN2 Silent Pin Update
2021-02-21 21:08:38 -05:00
Ryan Johnston a1fa6a72ea boards: MRO Control Zero H7 Board Support 2021-02-21 21:07:36 -05:00
Ryan Johnston 5376178987 boards: MRO Control Zero H7 OEM Board Support 2021-02-21 21:06:27 -05:00
Lorenz Meier aacbc04730 PX4IO: Robustify upgrade process
These changes remove the two code paths to updates (forceupdate and update) and try to reboot and bootload IO independent of its state, wether it is in bootloader mode already, safety switch is off or if it is in "nominal state" (running and safety on). This ensures that there are no conditions where user error or boot sequence can prevent a successful upgrade. The only state where an upgrade will not be done is if the system is fully armed.
2021-02-21 19:56:16 -05:00
Daniel Agar 82200fab9e mavsdk_tests: relax MC "Fly straight" speed threshold 2021-02-21 22:51:51 +01:00
Daniel Agar bbc721917c mavlink: mission ignore takeoff pitch error
- this mission rejection was only added recently in https://github.com/PX4/PX4-Autopilot/pull/16792
 - causing QGC compatibility issues https://github.com/mavlink/qgroundcontrol/pull/9464
2021-02-21 16:40:38 -05:00
Daniel Agar bfc019364a Update submodule mavlink v2.0 to latest Sun Feb 21 12:42:06 UTC 2021
- mavlink  v2.0 in PX4/Firmware (414f9f81d9): https://github.com/mavlink/c_library_v2/commit/4e25dfa47b28adc177ea7badad837d8b84173712
    - mavlink  v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/bf7df5c01d856f174c3b98e5b6527e777b173935
    - Changes: https://github.com/mavlink/c_library_v2/compare/4e25dfa47b28adc177ea7badad837d8b84173712...bf7df5c01d856f174c3b98e5b6527e777b173935

Co-authored-by: PX4 BuildBot <bot@px4.io>
2021-02-21 15:28:22 -05:00
Daniel Agar 1956cd8ff1 cmake: add px4io binary as ExternalProject build byproduct
- needed for incremental px4io changes to actually make it all the way through to the ROMFS
2021-02-21 14:04:26 -05:00
Daniel Agar 414f9f81d9 move fake GPS to standalone module 2021-02-20 14:13:36 -05:00
Silvan Fuhrer 0ea8104344 select single system-wide wind estimate message (current best)
- publish wind estimate only from EKF, and wind speeds from airspeed selector to new separate topic (airspeed_wind)
 - rename message wind_estimate to wind
 - publish wind from currently used ekf instance (ekf2selector)

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-02-20 13:15:01 -05:00
jciberlin 9d65e9a980 ghst: keep the previous values for channels that are not updated
Keep the previous values for channels that are not updated (ghost protocol). Add new test data for ghost protocol.
2021-02-20 11:29:57 +01:00
jciberlin 96c72a5657 RCTest: add tests for ghost protocol
Add tests for ghost protocol
2021-02-20 11:29:57 +01:00
jciberlin ca192a98c5 ghst: add test data
Add test data for ghost protocol
2021-02-20 11:29:57 +01:00
Juraj Ciberlin c0f7429f8c ghst: use memcpy instead of for loop
PR review, ghost protocol, use memcpy instead of for loop

Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2021-02-20 11:29:57 +01:00
jciberlin 64342f568d Ghost protocol
ghst: add ghost protocol
2021-02-20 11:29:57 +01:00
Daniel Agar 711a69854b uthash: move remaining utarray usage to parameters and delete unused
- this is to discourage further use until utarray can be dropped entirely
2021-02-20 11:28:22 +01:00
Daniel Agar 9ed959402e mavlink: store instances in array
- simplify mavlink header writes that go back through the mavlink module
 - add locking around mavlink command line usage (start, stop, status, etc)
2021-02-20 11:28:22 +01:00
Lorenz Meier 4984c19700 PX4 IO: Retry upgrades of IO
This adds robustness to system timing and bad link.
2021-02-20 11:07:53 +01:00
alexklimaj ed20bc92c3 Fix uavcannode build 2021-02-20 10:49:08 +01:00
Beat Küng 9d11d94e7e px4iofirmware: guard against parsing multiple RC protocols
It was for example possible that DSM got parsed, and in the next iteration
SBUS got parsed, leading to multiple PX4IO_P_STATUS_FLAGS_RC_ flags set.
input_rc::input_source was then incorrectly set to DSM.

Partially guarding was already done: if SBUS got parsed, DSM and others
were skipped.

The IO will still clear all PX4IO_P_STATUS_FLAGS_RC_* flags on RC loss.
2021-02-19 09:28:46 -05:00
Daniel Agar 5c27c47746 Jenkins hardware limit px4_fmu-v5 to generic quadcopter at default rates
- the same boards are used for stackcheck and debug builds which are cpu constrained
2021-02-19 09:27:38 -05:00
PX4 BuildBot c863d6a346 Update submodule ecl to latest Fri Feb 19 12:39:03 UTC 2021
- ecl in PX4/Firmware (5be2f2c8f835fde0ce648561636cf565d95f5741): https://github.com/PX4/PX4-ECL/commit/310f41517590165a82f807562b3cbb9a76e4c7d8
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/81937370ac5234a4c318d838acee4d9bb4bfa697
    - Changes: https://github.com/PX4/PX4-ECL/compare/310f41517590165a82f807562b3cbb9a76e4c7d8...81937370ac5234a4c318d838acee4d9bb4bfa697

    8193737 2021-02-18 bresch - [AUTO COMMIT] update change indication
04844a0 2021-02-16 bresch - ekf control: move time_last_in_air/on_ground out of GPS control logic
b00d4a9 2021-02-16 bresch - mag fusion: improve on ground forced mag fusion logic
2021-02-19 08:34:17 -05:00
Daniel Agar 5dc5ebc0a1 boards: cleanup uavcan test targets (v1 and v0 embedded peripherals) 2021-02-18 11:54:41 -05:00
Daniel Agar 5e188b3cd7 ekf2: populate local_position dist_bottom_sensor_bitfield 2021-02-18 10:37:02 -05:00
Alex Mikhalev 06e2bca3a6 batt_smbus: Use orb_publish_auto 2021-02-18 07:52:26 -05:00
Alex Mikhalev 6bd4dff51f drivers/smbus: Increase max block size to 34
batt_smbus for BQ40Z80 transfers up to 34 bytes (32 byte block + 2 byte
address), but this was overflowing and failing the PEC check.
So increase the buffer size

Signed-off-by: Alex Mikhalev <alex@corvus-robotics.com>
2021-02-18 07:52:26 -05:00
Alex Mikhalev 93b1a148b7 batt_smbus: Pass device address to base class
Fixes a warning printed at runtime

Signed-off-by: Alex Mikhalev <alex@corvus-robotics.com>
2021-02-18 07:52:26 -05:00
Daniel Agar 4678201da4 update libuavcan to latest 2021-02-17 22:47:35 -05:00
Daniel Agar 46eb790188 boards: new uavcan board variants remove delete mkblctrl driver 2021-02-17 22:47:35 -05:00
David Sidrane e0e796a2b9 ROMFS:Bake in UAVCAN FW with builds that end in _uavcan
The configuration are mostly for testing now.
2021-02-17 22:47:35 -05:00
David Sidrane 8c2678bca1 uavcan_servers:Reworked file naming and use ROM fs as fall back
Supporting direct down loads from ROMFS with preferece give to the
   files fould on the SD card first. This will allow a user to provide
   an updated uavcan firware on the SD card, and there is no overhead
   of coping files from the ROM FS to the SD card.
2021-02-17 22:47:35 -05:00
David Sidrane 57195843bf cuav_can-gps-v1:Use for ALT Bootloader an Option 2021-02-17 22:47:35 -05:00
David Sidrane 5ea56af5f0 canbootloder:Make support for ALT Bootloader an Option 2021-02-17 22:47:35 -05:00
David Sidrane 174f2624df holybro_can-gps-v1:board_id uses as Uavcan HW version 2021-02-17 22:47:35 -05:00
David Sidrane d1cadb6441 ark_can-flow:Assign board_id 2021-02-17 22:47:35 -05:00
David Sidrane 070db73e91 holybro_can-gps-v1:Use common uavcan board identity 2021-02-17 22:47:35 -05:00
David Sidrane 51a5c63bac ark_can-flow:Use common uavcan board identity 2021-02-17 22:47:35 -05:00
David Sidrane 3f6388f9a1 uav_can-gps-v1:Use common uavcan board identity 2021-02-17 22:47:35 -05:00
David Sidrane 51b54c025b canbootloader:Send number of KB written while updating FW 2021-02-17 22:47:35 -05:00
David Sidrane d426dd771f canbootloader:Ensure common crc is set valid after autobaud 2021-02-17 22:47:35 -05:00
David Sidrane 58e5c8fbca canbootloader:Prefer bootloader_app_shared over bootloader_alt_app_shared 2021-02-17 22:47:35 -05:00
David Sidrane 05c0deae14 UavcanNode:Only write alt id not booted by PX4 2021-02-17 22:47:35 -05:00
David Sidrane 71c4f5a05b UavcanNode:Support Dynamic Node ID allocation 2021-02-17 22:47:35 -05:00
David Sidrane e4b519aca0 UavcanNode:Add support for the Alternate bootloader app shared 2021-02-17 22:47:35 -05:00
David Sidrane b27beac50c UavcanNode:Add feed back to bootloader that the App ran 30S 2021-02-17 22:47:35 -05:00
David Sidrane 8943644566 board_common:Add board_configure_reset and board_booted_by_px4 API 2021-02-17 22:47:35 -05:00
David Sidrane 7a6ed0281b uavcan bootloader:Add support alt boot_alt_app_shared 2021-02-17 22:47:35 -05:00
David Sidrane 28030e96e2 cuav_can-gps-v1:UavcanNode app ensure IWDG off in debuger 2021-02-17 22:47:35 -05:00
David Sidrane 6ea06892ac Fix case were descriptor has no or bad length 2021-02-17 22:47:35 -05:00
David Sidrane 5c80b2d3dd cuav_can-gps-v1:canbootloader - enable SWD and Pause IWDT whils stepping 2021-02-17 22:47:35 -05:00
David Sidrane da67537291 Uavcan Node Pets the watchdog 2021-02-17 22:47:35 -05:00
David Sidrane ef29ed7db3 Uavcan bootloader Starts Watchdog for Application 2021-02-17 22:47:35 -05:00
David Sidrane 77d0eae40b Add SMT32F4xxx Watchdog driver 2021-02-17 22:47:35 -05:00
David Sidrane 8747b343d9 Non-compliant nodes support
WorkQueueManager:Increase UAVCAN stack size
2021-02-17 22:47:35 -05:00
David Sidrane c7182d5453 cuav_can-gps-v1:CMakeList remove .h files 2021-02-17 22:47:35 -05:00
David Sidrane 878baabce8 cuav GPS use appdes 2021-02-17 22:47:35 -05:00
David Sidrane 760e47bbf9 uavcan bootloader use new AppDes 2021-02-17 22:47:35 -05:00
Daniel Agar bfdc6cd675 Update submodule sitl_gazebo to latest Wed Feb 17 12:42:47 UTC 2021 (#16862)
- sitl_gazebo in PX4/Firmware (51dd141c86): https://github.com/PX4/PX4-SITL_gazebo/commit/4f26815d4127e3af84e01bbc1f8683c4fe30521f
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/bebb9a95f0b61bf9e4c3de345fab70985c1329b3
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/4f26815d4127e3af84e01bbc1f8683c4fe30521f...bebb9a95f0b61bf9e4c3de345fab70985c1329b3

bebb9a9 2021-02-11 Dongoo Lee - Add depth camera model for ROS2 environment (#707)
54e1a19 2021-02-10 TSC21 - gazebo_mavlink_interface: generate subscribers for nested models with sensors
97c167d 2021-02-10 Julian Oes - Implement gimbal controller as MAVLink gimbal v2 device (#703)

Co-authored-by: PX4 BuildBot <bot@px4.io>
2021-02-17 21:17:13 -05:00
Daniel Agar cff7a01d5e ekf2: estimator_status log reset counts 2021-02-17 21:16:34 -05:00
Daniel Agar 6d42fe28bf Update submodule GPS drivers to latest Wed Feb 17 12:42:56 UTC 2021 2021-02-17 21:14:56 -05:00
Daniel Agar 2a47583be5 boards: nxp/fmurt1062-v1 disable vmount 2021-02-17 13:54:34 -05:00
Julian Oes 1493ebf350 mavlink: reset MAVLink version to auto-detect 2021-02-17 13:54:34 -05:00
Julian Oes b812763a5a mavlink: no gimbal messages on constrained flash 2021-02-17 13:54:34 -05:00
Julian Oes 20bc924668 boards: disable vmount for fmu-v2 2021-02-17 13:54:34 -05:00
Julian Oes a2d419c91a vmount: use copyTo to copy quaternions 2021-02-17 13:54:34 -05:00
Julian Oes f39216b9c3 vmount: use math functions instead of macros 2021-02-17 13:54:34 -05:00
Julian Oes 6672be040a mavlink: limit mavlink channels based on memory 2021-02-17 13:54:34 -05:00
Julian Oes 10add72b00 sitl_gazebo: update submodule
This includes the new gimbal controller which implements the MAVLink
gimbal v2 device protocol.
2021-02-17 13:54:34 -05:00
Julian Oes 7633b119f7 gimbal: merge fixes 2021-02-17 13:54:34 -05:00
Julian Oes fecd96dc28 ROMFS: add remote port for gimbal mavlink instance
Previously, we did not set a remote port which meant that the default
remote port 14550 was used. This meant that the mavlink instance
talking to the gimbal was interfering with the connection to the ground
station (on 14550).
2021-02-17 13:54:34 -05:00
Julian Oes 3a2e4db309 vmount: mute gimbal manager ignoring messages 2021-02-17 13:54:34 -05:00
Julian Oes db09a1386f vmount: fix regression around stabilize flags
We use the stabilize param to set the input. Like this the input flags
can be changed using the configure message later, and then eventually
used in the output.
2021-02-17 13:54:34 -05:00
Julian Oes 086c45d406 vmount: fix POI for gimbal v2
This includes several changes to fix POI when used with MAVLink gimbal
v2 input:
- Correctly set capability flag that POI is supported.
- Keep lat/lon and calculate attitude on each cycle, instead of only
  once on init.
- Always publish gimbal manager information, with or withoug gimbal v2
  device.
2021-02-17 13:54:34 -05:00
Julian Oes b0d7d19bab vmount/mavlink: update gimbal information message
We should be using gimbal_manager_information and not
gimbal_device_information. Plus, this updates the fields and flags
according to the MAVLink changes.
2021-02-17 13:54:34 -05:00
Julian Oes cb3ad39406 vmount: add comment about possible NAN values 2021-02-17 13:54:34 -05:00
Julian Oes cd0509d2ef vmount: fix AUX gimbal output for v2 mavlink input
This should fix the case where AUX gimbals don't work anymore when
gimbal input is mavlink gimbal v2.

The fix is mostly to take care against NAN inputs.
2021-02-17 13:54:34 -05:00
Julian Oes 17dce18b32 mavlink: reduce GIMBAL_MANAGER_STATUS message rate
This was way too fast.
2021-02-17 13:54:34 -05:00
Julian Oes 6561b07caf vmount: support legacy gimbal v1 mission commands
This is a hotfix to restore gimbal functionality for SITL set-ups that
are set to MNT_MODE_IN 4 (gimbal protocol v2) but still need to accept
gimbal v1 commands that might be part of a mission, e.g. uploaded by
MAVSDK.
2021-02-17 13:54:34 -05:00
Julian Kent a3e0e2e84f Fix RTPS builds 2021-02-17 13:54:34 -05:00
Julian Oes 6f56797f3d mavlink: hack to forward messages from gimbal
This is a hack to make sure the messages from the gimbal arrive at other
links (e.g. the ground station). It means that the gimbal does not get
flooded with all other messages that would get forwarded but messages
from the gimbal will still make it through.
2021-02-17 13:54:34 -05:00
Julian Oes b8ad7092dc mavlink: use Mavlink 2 by default 2021-02-17 13:54:34 -05:00
Julian Oes 8da3a490af ROMFS: use gimbal v2 protocol with typhoon_h480 2021-02-17 13:54:34 -05:00
Julian Oes 642adbead8 if750a: use MAVLink gimbal v2 device 2021-02-17 13:54:34 -05:00
Julian Oes e6b1775bb6 vmount/navigator/mavlink: gimbal v2 changes
This is a collection of commits all having to do with changes in the
Mavlink gimbal v2 protocol as described in:
https://mavlink.io/en/services/gimbal_v2.html
2021-02-17 13:54:34 -05:00
Julian Oes 422bac4bfd mavlink: add gimbal mode to talk to gimbal device 2021-02-17 13:54:34 -05:00
Julian Oes 2a0ddf9f44 mavlink: enable 6 instead of 4 instance 2021-02-17 13:54:34 -05:00
Julian Oes a16939f47e ROMFS: start mavlink instance for gimbal 2021-02-17 13:54:34 -05:00
Martina Rivizzigno 48b00ff678 Support for gimbal v2 protocol
- add command to request a message
- add gimbal attitude message

mavlink_receiver handle GIMBAL_MANAGER_SET_ATTITUDE

first implementation of new vmount input MavlinkGimbalV2
- setup class
- decode gimbal_manager_set_attitude in ControlData

add gimbal information message

add gimbal manager information and vehicle command ack

mavlink messages: add stream for GIMBAL_MANAGER_INFORMATION

mavlink_receiver: handle GIMBAL_DEVICE_INFORMATION

remove mavlink cmd handling from vmount input MavlinkGimbalV2

complete gimbal manager:
- send out fake gimbal_device_information for dummy gimbals
- complete ROI handling with nudging

small fixes

fix typos

cleanup
- gimbal device information
- flags lock
- check sanity of string

add support for CMD_DO_GIMBAL_MANAGER_ATTITUDE

stream GimbalDeviceAttitudeStatus for dummy gimbals
- add uROB gimbal_attitude_status
- fill status in vmount output_rc for dummy gimbals not able to send the
status themselves
- stream mavlink GimbalDeviceAttitudeStatus

better handle the request for gimbal infomation request

clean up

bring gimbal information back on vmount init

add new gimbal message to mavlink normal stream

fix publication of gimbal device information

rename gimbal_attitude_status to gimbal_device_attitude_status

stream gimbal_manager_status at 5Hz

mavlink: send information only on request

Sending the information message once on request should now work and we
don't need to keep publishing it.

mavlink: debug output for now

make sure to copy over control data

mavlink: add missing copyright header, pragma once

mavlink: address review comments

mavlink: handle stream not updated

Our answer does not just depend on whether the stream was found but
whether we actually were able to send out an update.

mavlink: remove outdated comment

vmount: add option for yaw stabilization only

The stabilize flag is used for gimbals which do not have an internal IMU
and need the autopilot's attitude in order to do stabilization. These
gimbals are probably quite rare by now but it makes sense to keep the
functionality given it can e.g. be used by simple servo gimbals for
sensors other than highres cameras.

The stabilize flag can also be re-used for gimbals which are capable of
stabilizing pitch and roll but not absolute yaw (e.g. locked to North).
For such gimbals we can now set the param MNT_DO_STAB to 2.

We still support configuring which axes are stabilized by the
MAVLink command DO_MOUNT_CONFIGURE, however, this is generally not
recommended anymore.

vmount: fix incorrect check for bit flag

mavlink_messages: remove debug message

Signed-off-by: Claudio Micheli <claudio@auterion.com>

use device id

remove debug print

gimbal attitude fix mistake

clang tidy fix

split:
- gimbal_attitude -> gimbal_device_set_attitude, gimbal_manager_set_attitude
- gimbal_information -> gimbal_device_informatio, gimbal_manager_information

add gimbal protocol messages to rtps msg ids

support set attitude for gimbal directly speaking mavlink

clean up gimbal urob messages

vmount: address a few small review comments

vmount: split output into v1 and v2 protocol

This way we can continue to support the MAVLink v1 protocol. Also, we
don't send the old vehicle commands when actually using the new v2
protocol.

vmount: config via ctor instead of duplicate param

vmount: use loop to poll all topics

Otherwise we might give up too soon and miss some data, or run too fast
based on commands that have nothing to do with the gimbal.

typhoon_h480: use gimbal v2 protocol, use yaw stab

Let's by default use the v2 protocol with typhoon_h480 and enable yaw
lock mode by stabilizing yaw.
2021-02-17 13:54:34 -05:00
Julian Oes 46e75ebddb mavsdk_tests: remove leftover debug line 2021-02-17 18:13:14 +01:00
Julian Oes 2703a34900 mavsdk_tests: add link back to github action 2021-02-17 18:13:14 +01:00
Daniel Agar ab0d0fd0be uORB move to PX4 platform layer 2021-02-17 11:25:56 -05:00
TSC21 6bbb2faf8a CI: fix colcon build 2021-02-17 15:03:47 +01:00
Ildar Sadykov 51dd141c86 RTPS: adjust timestamp_sample in urtps_agent 2021-02-17 13:19:05 +01:00
Daniel Agar e48a869160 boards: mRo pixracer pro disable USART6 (conflicts with SPI6) 2021-02-16 22:28:13 -05:00
Daniel Agar 2702306849 boards: mRo pixracer pro fix incorrect SPI2 sck 2021-02-16 22:28:13 -05:00
PX4 BuildBot 0edee1e2e9 Update submodule ecl to latest Wed Feb 17 00:39:16 UTC 2021
- ecl in PX4/Firmware (a5a1d4caa0d04cb79ba29e98ba0af04e20c53de9): https://github.com/PX4/PX4-ECL/commit/d4258cc66d24c6871688ae83f42de3b46c96d033
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/310f41517590165a82f807562b3cbb9a76e4c7d8
    - Changes: https://github.com/PX4/PX4-ECL/compare/d4258cc66d24c6871688ae83f42de3b46c96d033...310f41517590165a82f807562b3cbb9a76e4c7d8

    310f415 2021-02-16 Daniel Agar - EKF add const state reset status access
0c5291d 2021-02-16 isidroas - Heading reset to magnetometer from GPS or EV (#969)
2021-02-16 22:00:12 -05:00
Daniel Agar a416731656 drivers/heater: add logging and minor improvements
- new heater_status logging message
 - run continously at low rate until configured sensor is found
 - fix px4io fd bugs (fd open/close/ioctl must be same thread)
2021-02-16 15:16:19 -05:00
Daniel Agar 5abf29d93c commander: auto TAKEOFF to LOITER/MISSION minor fix to avoid failsafe confusion
- base on nav_state rather than main_state
2021-02-16 13:02:14 -05:00
Julian Oes 64d0ce43b6 mavsdk_tests: upload to logs.px4.io in test_runner
By doing the upload directly inside the mavsdk_test_runner.py we have
more context such as the model, case, etc.
2021-02-16 17:07:21 +01:00
Julian Oes 18281eee29 workflows: more meta information to log upload
This adds a little bit more information but still lacks the one to one
mapping between test and uploaded file.
2021-02-16 17:07:21 +01:00
Julian Oes 2315618b85 mavsdk_tests: use autopilot timestamps to sleep
This way we should be able to avoid some of the timeouts happening on
the PX4 side if MAVSDK doesn't send setpoints in time.
2021-02-16 17:07:21 +01:00
Julian Oes 6c26387e85 mavsdk_tests: try to prevent auto-disarm
We should not spend too much time sending RC init messages because if it
takes too long, we might auto-disarm in the meantime.
2021-02-16 17:07:21 +01:00
Julian Oes c1de27acf7 mavsdk_tests: use more conservative speed_factor 2021-02-16 17:07:21 +01:00
Julian Oes 0ebb8c6981 mavsdk_tests: use microseconds to avoid sleep(0) 2021-02-16 17:07:21 +01:00
Julian Oes b6b9ce5f11 mavsdk_tests: robustify test by climbing longer 2021-02-16 17:07:21 +01:00
Julian Oes b79553862e mavsdk_tests: remove timeout for mission upload
Just use what is MAVSDK internal.
2021-02-16 17:07:21 +01:00
PX4 BuildBot cf2ffb1086 Update submodule ecl to latest Tue Feb 16 12:39:08 UTC 2021
- ecl in PX4/Firmware (4de4b8012999a53b3401701fe63fafb4056fa58f): https://github.com/PX4/PX4-ECL/commit/ffab483504a6c2eb3b61ae10d612cb35c8fbc550
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/d4258cc66d24c6871688ae83f42de3b46c96d033
    - Changes: https://github.com/PX4/PX4-ECL/compare/ffab483504a6c2eb3b61ae10d612cb35c8fbc550...d4258cc66d24c6871688ae83f42de3b46c96d033

    d4258cc 2021-02-15 Mathieu Bresciani - yaw emergency: check angle between vel observation and estimate (#975)
2021-02-16 08:34:02 -05:00
Daniel Agar 44df0fb7a2 Analog Devices ADIS16448 rewrite
- new IMU driver structure with state machine (no sleeps in bus thread)
 - verify all configured registers and trigger reset on failure
 - detect if DIO1 or DIO2 are actually connected for data ready interrupt usage
 - don't use CRC-16 on burst transfers except for verified lots
2021-02-16 10:29:07 +01:00
mcsauder 59b31e3c5b Minor cleanup/error checking, static_casts, print_status() additions, and formatting in the heater driver. 2021-02-16 08:20:14 +01:00
Ramon Roche 15392f8e53 silent success and log failures
Co-authored-by: Nuno Marques <n.marques21@hotmail.com>
2021-02-15 20:28:19 +01:00
CAI Dongcai 2ad1cb24cc fix empty log file "micrortps_bridge.log" 2021-02-15 20:28:19 +01:00
Tim 540e4f9464 Uuv position control extension (#16688)
* Commit for the Integration of a position controller for the a Underwater vehicle.
This module is an extension of the uuv_att_control to control an Underwater vehicle to any position, given by the SET_POSITION_TARGET_LOCAL_NED which includes x y z yaw.
Since the position control is designed for a 6DOF Robot, the roll and pitch angle are controlled to be 0.
Additionally there is a stabilization control, which holds the robot at a defined depth, and not move in any direction.

In general the idea is to have this position module to control the position of the uuv. The position module reseives the desired position of the uuv and sends appropriate attitude setpoints to the uuv_attitude_control module.

Additionally the mixer file is adapted, to include the 6 different inputs(x y z roll pitch yaw).

* Commit for the Integration of a position controller for the a Underwater vehicle.
This module is an extension of the uuv_att_control to control an Underwater vehicle to any position, given by the SET_POSITION_TARGET_LOCAL_NED which includes x y z yaw.
Since the position control is designed for a 6DOF Robot, the roll and pitch angle are controlled to be 0.
Additionally there is a stabilization control, which holds the robot at a defined depth, and not move in any direction.

In general the idea is to have this position module to control the position of the uuv. The position module receives the desired position of the uuv and sends appropriate attitude setpoints to the uuv_attitude_control module.

Additionally the mixer file is adapted, to include the 6 different inputs(x y z roll pitch yaw).

Currently not solved/missing:
 - Problem with gazebo model(propeller moving chaotically).
 - Mixer correct gazebo vs real life (has to be tested in the future)
 - correct integration in uuv.apps (when choose which module)
 - very basic controller chosen (could be improved a lot in the future)

* Remove error caused by unused variables and a different build error

* added better description of the parameter. Additionally the group is changed.

* added better description of the parameter. Additionally the group is changed.
Fixed bug about parameter

* Added EOF to the files.

* Removed parameter for direct position control for safety reasons.

* small bugfix
2021-02-15 18:40:28 +01:00
Daniel Agar 0618f048f2 commander: use control mode flags and cleanup arm_disarm
- keep `vehicle_control_mode` last state in commander and use appropriate flags in place of various main_state and nav_state checks
 - consolidate scattered arming requirements in `arm_disarm()`
   - there were a number of different requirements from arming via RC vs Mavlink that don't make any sense
        - if geofence enabled require valid home before arming
        - throttle requirements for manual modes
 - remove unnecessary mavlink feedback that differs between arming interfaces (mavlink vs RC)
      - let the preflight/prearm checks respond directly in most cases 

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-02-15 12:03:21 -05:00
Jari Nippula 37f78537c3 protocol-splitter: Additional protocol layer added 2021-02-15 14:00:39 +01:00
Daniel Agar 40a452dcd2 ekf2: selector improve timeout handling and reporting
- relax estimator_status timeout unless attitude hasn't published recently
2021-02-14 21:08:56 -05:00
Lorenz Meier 4c5d2363d4 Rover control: Use roll sticks
It is more intuitive to use the roll stick as lateral control input given that drones defined this category, plus this is how consumer car / rover radio controls have been working already.
2021-02-14 11:17:28 +01:00
Lorenz Meier 4c9b2c65b5 Support v5X build variants
This adds support for the different implementation variants of the v5X standard.
2021-02-14 11:17:28 +01:00
Lorenz Meier 2be482c5ae Sensors: New parameter for baro priority
This allows to give external barometers priority if they are present.
2021-02-14 11:17:28 +01:00
Jaeyoung-Lim fdd9b3ea51 Add support for stabilized flight mode for rovers
This commit adds support for stabilized flight mode for rovers, which enables the rover tracking a fixed heading that is set with a manual input
2021-02-14 11:17:28 +01:00
Jaeyoung-Lim 3c12573e93 Use uORB::Subscription for rover_pos_control
Modernize rover position control
2021-02-14 11:17:28 +01:00
Lorenz Meier 8d78b8a01d Change wording in GPS failure handling
This matches better the different platforms that are using this functionality.
2021-02-14 11:17:28 +01:00
Lorenz Meier cc11fb2818 Multicopter rate controller: Protect for full throttle scaling
PX4 supports -1 to 1 as input and this module was not protected against the input range.
2021-02-14 11:17:28 +01:00
Lorenz Meier 66d86aae2e Flight mode manager: Protect for full throttle scaling
PX4 supports -1 to 1 as input and this module was not protected against the input range.
2021-02-14 11:17:28 +01:00
Lorenz Meier ec2cf70276 Rover position controller: Modernize implementation
This commit moves the steering output from yaw to the roll channel to better reflect the lateral control input / reaction mapping. It also removes old unused parameters and modernizes the mainloop to remove unnecessary polling.
2021-02-14 11:17:28 +01:00
Lorenz Meier bb0b4db028 ROMFS: Better defaults for rover 2021-02-14 11:17:28 +01:00
Lorenz Meier 3135e4d31a SITL: Set correct L1 period 2021-02-14 11:17:28 +01:00
Lorenz Meier 15219fbfe5 MC att control: Robustify for throttle scaling
PX4 can support negative (reverse) throttle and the multicopter controller is not expecting this input range. This hardens it against it.
2021-02-14 11:17:28 +01:00
Lorenz Meier 548e070b91 FW pos control: Robustify for throttle scaling
PX4 can support negative (reverse) throttle and the fixed wing controller is not expecting this input range. This hardens it against it.
2021-02-14 11:17:28 +01:00
Lorenz Meier 6d489a4b4d FW att control: Robustify for throttle scaling
PX4 can support negative (reverse) throttle and the fixed wing controller is not expecting this input range. This hardens it against it.
2021-02-14 11:17:28 +01:00
Lorenz Meier 0d3676e5b0 Safety switch: Default to safety off
90% of all real-world vehicle configs default to this and it is something that users stumble over if they configure a new system. There are valid cases where this would not be desired - for these it can be still switched off.
2021-02-14 11:17:28 +01:00
Lorenz Meier 8a448718b9 RC update: Do not constrain throttle
If the user calibrated to negative throttle, enable them to use it.
2021-02-14 11:17:28 +01:00
Lorenz Meier 9d20dea3b8 Rover: remove unused parameter 2021-02-14 11:17:28 +01:00
Daniel Agar fb2a199621 delete unmaintaned mkblctrl driver 2021-02-14 10:38:15 +01:00
Lorenz Meier c04d23645c IO: Fix reverse mapping
The reverse mapping was off-by-one in the IO driver.
2021-02-13 15:21:10 -05:00
Ryan Johnston 5a58f25d6a boards: MRO Control Zero F7 OEM Support 2021-02-13 11:16:55 -05:00
Daniel Agar ce552a3364 navigator: RTL don't get invalid params 2021-02-13 00:34:56 +01:00
Daniel Agar 1981519aad L1 position controller: use double precision floating point for all lat/lon 2021-02-12 21:59:56 +01:00
Silvan Fuhrer 31a6edff07 Fixed-wing: remove roll offset param (FW_RSP_OFF)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-02-12 13:57:15 -05:00
Silvan Fuhrer a70cf950f4 fw_pos_control_l1: apply pitch setpoint offset centrally
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-02-12 13:57:15 -05:00
Daniel Agar f61d8539cb fw_pos_control_l1: add takeoff minimum pitch parameter
- remove mavlink mechanism for setting minimum pitch
2021-02-12 13:57:15 -05:00
PX4 BuildBot 89f19fd657 Update submodule v2.0 to latest Fri Feb 12 12:42:14 UTC 2021
- v2.0 in PX4/Firmware (c76477963097ac72b7bd2f165a845a493ffb724e): https://github.com/mavlink/c_library_v2/commit/43f2f3180a49720804c5f006377889a164fabadb
    - v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/4e25dfa47b28adc177ea7badad837d8b84173712
    - Changes: https://github.com/mavlink/c_library_v2/compare/43f2f3180a49720804c5f006377889a164fabadb...4e25dfa47b28adc177ea7badad837d8b84173712

    4e25dfa4 2021-02-12 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/e4269aaf680b0797ba594b130d4e92dda889100c
82dcec27 2021-02-12 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/08e57d08ad17f1218334b74fa3766a0177783ea6
2021-02-12 16:31:28 +01:00
Daniel Agar 15e76ad993 PWM12 mode for pwm_out and dshot 2021-02-12 09:19:18 -05:00
Daniel Agar 0614789db3 tests: add simple parameter custom default testing 2021-02-12 08:27:47 -05:00
Daniel Agar e6bc6438e8 ROMFS: airframes use new param default mechanism 2021-02-12 08:27:47 -05:00
Daniel Agar b67aa77d29 ROMFS: use new param default mechanism 2021-02-12 08:27:47 -05:00
Daniel Agar a257120e8d boards: use new param default mechanism 2021-02-12 08:27:47 -05:00
Daniel Agar ce64951578 parameter_update.msg: add basic status info 2021-02-12 08:27:47 -05:00
Daniel Agar b8b13bb882 parameters runtime defaults 2021-02-12 08:27:47 -05:00
Daniel Agar da1a38b44e parameters: merge generated files ito single static constexpr header
- store parameter type and if volatile separately (saves kilobytes of flash)
 - use Bitset for tracking active and changed parameters
 - use atomic for autosave_enabled flag
 - compile at ${MAX_CUSTOM_OPT_LEVEL} (-O2 on non flash constrained boards)
2021-02-12 08:27:47 -05:00
PX4 BuildBot 71c7c69c9d Update submodule ecl to latest Fri Feb 12 12:42:24 UTC 2021
- ecl in PX4/Firmware (2292cf3ed4f8c4391131870936881331bc870260): https://github.com/PX4/PX4-ECL/commit/602e65146c975c12482560fafab7e05bf43b0029
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/ffab483504a6c2eb3b61ae10d612cb35c8fbc550
    - Changes: https://github.com/PX4/PX4-ECL/compare/602e65146c975c12482560fafab7e05bf43b0029...ffab483504a6c2eb3b61ae10d612cb35c8fbc550

    ffab483 2021-02-11 Loic Dubois - Waiting for the filter to be initialized to set global origin
2021-02-12 08:26:10 -05:00
Daniel Agar c3172a91d9 ekf2: try reselecting distance_sensor on timeout 2021-02-12 08:25:27 -05:00
Matthias Grob a002a07ed5 sdcardCheck: minor refactor
I was late for the review.
2021-02-12 00:17:43 -05:00
Daniel Agar 5db906314a uavcan: stm32h7 driver silence debug output 2021-02-11 23:08:17 -05:00
Daniel Agar dcb35e9a8c Update submodule mavlink v2.0 to latest Fri Feb 12 00:38:48 UTC 2021 2021-02-11 23:06:40 -05:00
Daniel Agar 8a0bf15b9e boards: CUAV X7Pro fix BMI088 orientation 2021-02-11 23:05:48 -05:00
Daniel Agar 7f76666fe9 Jenkins: hardware avoid unnecessary checkout 2021-02-11 23:04:26 -05:00
Daniel Agar c63107bb57 uORB: tests increase priorities to minimize failures with stackcheck/debug enabled
- also relax the maximum mean by 50%
2021-02-11 22:58:57 -05:00
Daniel Agar cb7aabf932 fw_pos_control_l1: cleanup body velocity and acceleration usage
- minimize storing unnecessary state (msg copies)
2021-02-12 00:41:39 +01:00
Jaeyoung-Lim 9ebf783214 Use smaller loiter radius for rovers 2021-02-11 23:24:34 +01:00
Julian Oes aca1e85da4 mavsdk_tests: don't forget to check for rootfs dir 2021-02-11 22:25:07 +01:00
Julian Oes 4184c204c4 autopilot_tester: don't poll mission progress
Instead use subscription here as well in order not to miss an update.
2021-02-11 22:25:07 +01:00
Julian Oes 2971ce8664 mavsdk_tests: don't clear logs 2021-02-11 22:25:07 +01:00
bresch 9d3ff12a94 commander: reword nav failure message 2021-02-11 16:20:30 -05:00
bresch 5726e8e0a3 commander: do not fail nav check on GPS position glitch
In case of a diverge of the nav filter, both position and velocity test
ratios are large. If only one of them is too large, the nav filter is
most likely not diverging but is encountering a GNSS position reset and
it is still safe to fly in position mode.
2021-02-11 16:20:30 -05:00
bresch b1b032d6e1 commander: rework nav failure check
Allows to recover from a failed test with a stricter test
2021-02-11 16:20:30 -05:00
Lorenz Meier 80b8e6a48f v5X: Register board variants
This is needed to properly identify new variants.
2021-02-11 22:14:02 +01:00
Daniel Agar 5b44bd67bb ist8310: fix 16 times average configuration 2021-02-11 13:18:13 -05:00
Daniel Agar 7e18cffc5f Update submodule mavlink v2.0 to latest Thu Feb 11 12:41:13 UTC 2021 2021-02-11 12:51:22 -05:00
Julian Oes 176d932f23 mavsdk_tests: prevent missing updates
It seems like we are often missing updates from topics like flight mode
or in air state, both topics that are sent out infrequenctly e.g. at 1
Hz. Therefore, instead of polling for that data we should probably
subscribe to the updates and that way get notified of each an every
update.

For instance this should prevent the case where we miss the mode change
from mission to descend and back to mission once landed and disarmed.
2021-02-10 16:37:02 -05:00
Jaeyoung-Lim 3d9cde885d Add comment for reserve autostartIDs
This commit adds a comment where the autostart IDs 22000-22999 should be reserved for custom models
2021-02-10 16:34:01 -05:00
Matthias Grob 82d6cc3dba FlightTasks: use .xy() where possible
to take the first two elements of a Vector3f.
2021-02-10 15:56:58 +01:00
Matthias Grob 7686533abb FlightTaskManualAcceleration: adapt position reset to new structure
The mapping itself was seprated out into a calls because it was reused
for the experimental nudging implementation.
The position resets which were handled correctly before now
change the wrong setpoints and I adjusted.

The nudging has to be before any filtering, then these member setpoints
which are essentially copies are not needed anymore.
2021-02-10 15:56:58 +01:00
Julian Oes c524e61b97 airspeed_selector: fix timeout check
I think this check was the wrong way round which meant that we would end
up with an unsigned int overflow and trigger a reset.
2021-02-10 12:58:23 +01:00
Igor Mišić 236975c56c astyle: excluded libcanard for uavcannode_gps_demo 2021-02-10 03:05:02 -08:00
Daniel Agar a76e429b1a calibration parameters volatile (offsets and scale factors)
- anything set vehicle side should be volatile and excluded from the
param hash
2021-02-10 09:01:47 +01:00
PX4 BuildBot bf29ec2da2 Update submodule ecl to latest Wed Feb 10 00:39:35 UTC 2021
- ecl in PX4/Firmware (afb692ecffccc3ba7ade39c5906c8c5660066121): https://github.com/PX4/PX4-ECL/commit/cd38621dd6a4ef0f42eb29a2b4145f58023e7910
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/602e65146c975c12482560fafab7e05bf43b0029
    - Changes: https://github.com/PX4/PX4-ECL/compare/cd38621dd6a4ef0f42eb29a2b4145f58023e7910...602e65146c975c12482560fafab7e05bf43b0029

    602e651 2021-02-05 Paul Riseborough - EKF: Remove unnecessary initialisation
6f664ab 2020-07-20 Paul Riseborough - EKF: Non functional changes arising from review
b87778e 2020-06-30 Paul Riseborough - EKF: Make clip detection logic easier to follow
9aa8d93 2020-06-30 Paul Riseborough - EKF: Use isRecent function
e948b35 2020-06-29 Paul Riseborough - EKF: Don't reject vertical aiding data if inertial solution is bad
c566318 2020-06-23 Paul Riseborough - EKF: misc improvements to handling of accel clipping
9c89fa3 2020-06-02 Paul Riseborough - EKF: Use IMU clipping to adjudicate bad accel data check
2021-02-10 00:16:42 -05:00
David Sidrane 3570e1b4da nxp_fmuk66-e: Sync defconfig with latest V3 changes 2021-02-09 23:53:38 -05:00
David Sidrane df3e94bcff nxp_fmuk66-e:Disabled icm42688p until load issue is resolved 2021-02-09 23:53:38 -05:00
David Sidrane 4610692813 nxp_fmuk66-e:Set CONFIG_CDCACM_PRODUCTSTR 2021-02-09 23:53:38 -05:00
David Sidrane b4c17cc8e7 nxp_fmuk66-e:Set Rotation of bmi88 2021-02-09 23:53:38 -05:00
David Sidrane 8c8f48530e nxp_fmuk66-e:Fix missing line rc.board_defaults 2021-02-09 23:53:38 -05:00
David Sidrane 264efde0c9 nxp_fmuk66-v3:SD enable Multi block 2021-02-09 23:50:58 -05:00
David Sidrane ef444da689 BUGFIX Hardfault Commander Calibration 2021-02-09 15:20:50 +01:00
Julian Oes 2772022785 mavsdk_tests: disable mag stuck test
The estimator sometimes diverges in vz after landing which makes the
test fail. This needs to be dealt with first before we can enable the
test again.
2021-02-09 11:32:41 +01:00
Julian Oes e592bed7d3 mavsdk_tests: use timestamp from attitude field
The flight_information field was not updated often enough which lead
to timeouts.
2021-02-09 11:32:41 +01:00
Julian Oes f08804da07 workflows: update to MAVSDK 0.36.0
This is required for the timestamp that comes with the attitude
information.
2021-02-09 11:32:41 +01:00
Julian Oes 397fa84cd0 mavsdk_tests: add time in front of debug lines 2021-02-09 11:32:41 +01:00
Matthias Grob dec353219d FlightTaskManualAcceleration: smooth position unlock
The velocity setpoint of the position controller
does a jump when unlocking position with a non-zero position error.

This is solved by using the velocity setpoint feedback to smoothly
take over.
2021-02-09 11:31:35 +01:00
Matthias Grob c9eac29d25 StickAccelerationXY: access member setpoints directly
This is a leftover from before converting the logic into
a completely separate class.
2021-02-09 11:31:35 +01:00
Matthias Grob 79739c5676 StrickAccelerationXY: name setpoints unambiguous 2021-02-09 11:31:35 +01:00
Benjamin Perseghetti ab03cd8bb9 Unified tool for launching advanced configurations of HITL or SITL in Gazebo with gz_sim.sh, works with PX4-SITL_gazebo PR 651. 2021-02-09 10:29:23 +01:00
Beat Küng b0abc0c111 airframes: exclude from 1100, 4018 and 6003 px4_fmu-v2 2021-02-09 09:44:50 +01:00
Beat Küng 5a1c60b5a1 component_information: switch from gzip to xz
Improves compression, e.g. current params file: 62KB to 51KB

There's also a PRESET_EXTREME option, which reduces by another 2KB.
We can revisit that once needed, as it increases mem usage as well.
2021-02-09 09:44:50 +01:00
Beat Küng cedfae9e46 jenkins: upload params.json.gz to S3 2021-02-09 09:44:50 +01:00
Beat Küng f8989fe5aa mavlink: speed up ftp transfers on POSIX
Around 900 KB/s - not fast, but should be fast enough for the use-cases.
2021-02-09 09:44:50 +01:00
Beat Küng d0e35efe3a parameters: remove uid from json output
Got removed from the spec
2021-02-09 09:44:50 +01:00
Beat Küng 4ca883f843 parameters: fix JSON output types
All types were previously output as strings
2021-02-09 09:44:50 +01:00
Beat Küng 5a244888cd Tools: add validate_json.py
Can be used to validate the schemas under
https://github.com/mavlink/mavlink/tree/master/component_information
2021-02-09 09:44:50 +01:00
Beat Küng 1f8e7de824 mavlink: implement COMPONENT_INFORMATION
- implement COMP_METADATA_TYPE_VERSION & add component_version.json.gz to
  ROMFS for all targets.
- implement COMP_METADATA_TYPE_PARAMETER (only enabled for SITL currently)
2021-02-09 09:44:50 +01:00
Daniel Agar 9f00fd2796 move PWM params to lib 2021-02-09 08:57:00 +01:00
PX4 BuildBot 8a047c8965 Update submodule ecl to latest Tue Feb 9 04:48:03 UTC 2021
- ecl in PX4/Firmware (24abafdfc91875020fd9ecc792f6989cf2058a77): https://github.com/PX4/PX4-ECL/commit/46251db4a11e1f80ce1cce226c7664f875260832
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/cd38621dd6a4ef0f42eb29a2b4145f58023e7910
    - Changes: https://github.com/PX4/PX4-ECL/compare/46251db4a11e1f80ce1cce226c7664f875260832...cd38621dd6a4ef0f42eb29a2b4145f58023e7910

    cd38621 2021-02-08 bresch - flow terrain: use dedicated variable for last fusion time
9521e81 2021-02-08 PX4BuildBot - [AUTO COMMIT] update change indication
ae0c054 2021-02-08 PX4 BuildBot - Update geo_lookup WMM  to latest Mon Feb  8 11:48:14 UTC 2021
5aaa6c6 2021-01-28 bresch - lpos accuracy: bump variance if deadreckon time exceeded
2021-02-09 00:50:36 -05:00
Daniel Agar 8f0918a16b boards: remove unused linker __param section 2021-02-08 23:22:48 -05:00
Beat Küng 76a447ed0f fix StickAccelerationXY: avoid setpoint oscillations around 0
With a higher responsiveness, after centering the stick, the velocity and
acceleration setpoints could oscillate around 0 and never reach 0, due to
discretization.
This also prevented position lock engagement.
2021-02-08 13:51:36 +01:00
Mathieu Bresciani 77884bdd34 SITL boat: tune L1 and speed controllers (#16784) 2021-02-08 07:18:49 +00:00
PX4 BuildBot 8d0f96f22c Update submodule libcanard to latest Mon Feb 8 00:39:35 UTC 2021
- libcanard in PX4/Firmware (0c6cf6cb99): https://github.com/UAVCAN/libcanard/commit/cde670347425023480a1417fcd603b27c8eb06c1
    - libcanard current upstream: https://github.com/UAVCAN/libcanard/commit/55938c51cf7da3096679933302693c9dae7a2b33
    - Changes: https://github.com/UAVCAN/libcanard/compare/cde670347425023480a1417fcd603b27c8eb06c1...55938c51cf7da3096679933302693c9dae7a2b33

    55938c5 2020-12-29 Pavel Kirienko - Merge pull request #160 from UAVCAN/readme-fix
1c91c49 2020-12-29 Pavel Kirienko - Improve the example in README, fix #159
2021-02-07 21:42:30 -05:00
PX4 BuildBot 05164d0a6a Update submodule libcanard to latest Mon Feb 8 00:39:43 UTC 2021
- libcanard in PX4/Firmware (fef2f1c150ee15ba430c2da74fb432483fd888d8): https://github/commit/cde670347425023480a1417fcd603b27c8eb06c1
    - libcanard current upstream: https://github/commit/55938c51cf7da3096679933302693c9dae7a2b33
    - Changes: https://github/compare/cde670347425023480a1417fcd603b27c8eb06c1...55938c51cf7da3096679933302693c9dae7a2b33

    55938c5 2020-12-29 Pavel Kirienko - Merge pull request #160 from UAVCAN/readme-fix
1c91c49 2020-12-29 Pavel Kirienko - Improve the example in README, fix #159
2021-02-07 20:27:59 -05:00
Lorenz Meier 0c6cf6cb99 Revert "boards: px4/fmu-v5 disable px4io in rc.board_defaults"
This reverts commit d7b89ecc86.
2021-02-08 00:21:32 +01:00
Lorenz Meier d03d46b8a3 Initialize MAVLink on v5X variants
This will ensure that the different baseboard configurations are properly accounted for depending on HW variants.
2021-02-07 17:23:13 +01:00
Peter van der Perk 8242968b2b UAVCAN v1 GPS demo with MAVCAN autoconfigure 2021-02-07 17:18:45 +01:00
Peter van der Perk 5f8ad65c40 FMUK66 NuttX 10 SocketCAN initialization 2021-02-07 17:18:45 +01:00
Peter van der Perk 8b2d20df34 "MAVCAN" PNP & Register example implementation 2021-02-07 17:18:45 +01:00
Peter van der Perk e5d29d4079 UAVCANv1 demo UAVCAN146 <-> BMS-722 is working
Fixed UAVCAN146 linker script that caused CXX initalization to wrong
Enabled uORB listener command
Updated UAVCANv1 msg definition

Known isssue: PX4 params are not working on the UAVCAN146
2021-02-07 17:18:45 +01:00
Daniel Agar 58ca575871 UAVCAN v1 bridge
- NuttX stm32f4/stm32f7 uses character device driver
 - NuttX kinetis and s32k uses socketcan
2021-02-07 17:18:45 +01:00
Daniel Agar 1848ac3bc7 mavlink: receiver accept ODOMETRY MAV_ESTIMATOR_TYPE_UNKNOWN for legacy support 2021-02-07 09:51:05 -05:00
Daniel Agar f461481548 Revert "mavlink: ODOMETRY handler accept all other estimator_types for now"
This reverts commit b216714d56.
2021-02-07 09:51:05 -05:00
Daniel Agar b216714d56 mavlink: ODOMETRY handler accept all other estimator_types for now 2021-02-06 22:32:20 +01:00
Daniel Agar d67a84d941 boards: holybro can-gps-v1 fix bosch bmm150 path 2021-02-06 15:56:11 -05:00
Daniel Agar 41b0f83c0c drivers/magnetometer: Bosch BMM150 rewrite
- same pattern as other new drivers (state machine, checked register mechanism, no sleeps, etc)
 - self test has been rolled into regular startup sequence
 - still I2C only, but will be expanded in the future
 - configure to high accuracy preset
2021-02-06 12:50:23 -05:00
bazooka joe 8834741be8 gps blending make test to work without templated gps_blending class 2021-02-06 12:59:04 +01:00
bazooka joe 8087fac3fc gps_blending add protection against accessing non-exist array item 2021-02-06 12:59:04 +01:00
bazooka joe a0d500b30a changing gps_blending to be non-template class
because there is no multiple instance types on singular machine
2021-02-06 12:59:04 +01:00
PX4 BuildBot 80d9f1c5fb Update submodule sitl_gazebo to latest Sat Feb 6 00:38:25 UTC 2021
- sitl_gazebo in PX4/Firmware (9e69b16c3c): https://github.com/PX4/PX4-SITL_gazebo/commit/e580bbcd1eb6902c658ed3ece3b3b28dfd57eb17
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/4f26815d4127e3af84e01bbc1f8683c4fe30521f
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/e580bbcd1eb6902c658ed3ece3b3b28dfd57eb17...4f26815d4127e3af84e01bbc1f8683c4fe30521f

    4f26815 2021-02-05 Julian Oes - workflows: fix macOS build
2021-02-05 21:28:41 -05:00
PX4 BuildBot b9034dbb5d Update submodule ecl to latest Sat Feb 6 00:38:38 UTC 2021
- ecl in PX4/Firmware (1e079d0142b813c3c65c6796576e79d5662a217b): https://github.com/PX4/PX4-ECL/commit/b919f3ddf41ab422d09af91eaea2b2f9729fab13
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/46251db4a11e1f80ce1cce226c7664f875260832
    - Changes: https://github.com/PX4/PX4-ECL/compare/b919f3ddf41ab422d09af91eaea2b2f9729fab13...46251db4a11e1f80ce1cce226c7664f875260832

    46251db 2021-02-05 Daniel Agar - geo: explicitly link libm
2021-02-05 20:38:49 -05:00
Daniel Agar 61e935105f Update submodule mavlink v2.0 to latest Sat Feb 6 00:38:29 UTC 2021 2021-02-05 20:20:50 -05:00
PX4 BuildBot df66c8580c Update submodule CMSIS_5 to latest Sat Feb 6 00:38:34 UTC 2021
- CMSIS_5 in PX4/Firmware (6f03b880f05d0a1d4015f5040054b61012725794): https://github.com/ARM-software/CMSIS_5/commit/4ed5730787a0f98e8858c9998e406c608ab10b28
    - CMSIS_5 current upstream: https://github.com/ARM-software/CMSIS_5/commit/20285262657d1b482d132d20d755c8c330d55c1f
    - Changes: https://github.com/ARM-software/CMSIS_5/compare/4ed5730787a0f98e8858c9998e406c608ab10b28...20285262657d1b482d132d20d755c8c330d55c1f

    202852626 2021-02-01 Christopher Seidl - Updated CMSIS-Pack documentation
2021-02-05 20:18:25 -05:00
David Sidrane 8167023dfb holybro_can-gps-v1: Reorder Sensor Startup for reliabiltiy 2021-02-05 19:55:16 -05:00
David Sidrane 9e834d26f8 holybro_can-gps-v1:Add Flash Based Parameters 2021-02-05 19:55:16 -05:00
David Sidrane 7b3ce832d6 holybro_can-gps-v1: Add UAVCAN CAN2 Support 2021-02-05 19:55:16 -05:00
David Sidrane fe732930d2 holybro_can-gps-v1:Fix ver HW NAME 2021-02-05 19:55:16 -05:00
David Sidrane caba734d26 PR review AIs 2021-02-05 19:55:16 -05:00
David Sidrane 6f78a5e201 holybro_can-gps-v1:Add to CI 2021-02-05 19:55:16 -05:00
David Sidrane 9e1b13683f Add hardware ver/rev to st32f4 2021-02-05 19:55:16 -05:00
David Sidrane 41c9f085ef holybro_can-gps-v1:Temparary LED support 2021-02-05 19:55:16 -05:00
David Sidrane 0554755ed2 holybro_can-gps-v1:Added Support for holybro can gps 2021-02-05 19:55:16 -05:00
Lorenz Meier 9e69b16c3c ROMFS: Add new VTOL standard airframe 13015 using all MAIN outputs
Co-authored-by: Daniel Agar <daniel@agar.ca>
2021-02-05 19:00:26 -05:00
David Sidrane c1435c744c px_uploader:Fixes breakage for real serial ports caused by 00e6d11
The code was pitching an exception. It was invaild. That then left
   the baud rate AFU
2021-02-05 20:15:20 +01:00
Claudio Micheli d4bea8323f PreFlightCheck: Detect missing FMU SD card
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-02-05 20:14:48 +01:00
bresch 72e34e02ef VTOL defaults: increase tracking tolerance for VTOL planes 2021-02-05 20:13:30 +01:00
bresch 44872807b3 MC auto: add parameter to set the trajectory slow-down
In some cases e.g.: (VTOL in wind) a good tracking cannot be
achieved. This condition then needs to be relaxed, otherwise the
drone cannot land properly.
2021-02-05 20:13:30 +01:00
Daniel Agar 9d90529e7f Jenkins hardware print vehicle_status and vehicle_status_flags 2021-02-05 20:11:13 +01:00
Daniel Agar 6633ff5089 commander: vehicle_status_flags add attitude and angular velocity 2021-02-05 20:11:13 +01:00
David Sidrane 168027ac3d NuttX apps with REJECTED commit 2021-02-05 10:07:03 -08:00
David Sidrane 3b25790b06 px4_fmu-v2:Make room 2021-02-05 08:27:28 -08:00
bresch a399bb9894 ekf2: fix mismatch between ecl and firmware flag definition 2021-02-05 14:30:09 +01:00
Matthias Grob f13c3a7d44 state_machine_helper: stop mission on RC loss
This allows to still fly missions completely without RC
but reacts if RC is lost during the mission because
the safety pilot expects to be able to take over.
2021-02-04 10:54:52 +01:00
Matthias Grob f87dbe57c2 state_machine_helper: don't finish mission if all links are lost except for when no reaction is configured 2021-02-04 10:54:52 +01:00
Matthias Grob cd51cf2996 state_machine_helper: handle zero failsafe_timestamp 2021-02-04 10:54:52 +01:00
Matthias Grob b44b770972 commander: RC loss delay renaming/reordering 2021-02-04 10:54:52 +01:00
Matthias Grob e2e5fc85f8 state_machine_helper: fix infinite delay with intermittent failsafes 2021-02-04 10:54:52 +01:00
Matthias Grob 1736be41cf state_machine_helper: only apply delay on manual piloted rc loss cases 2021-02-04 10:54:52 +01:00
Matthias Grob e65cc6bd6f state_machine_helper: do failsafe delay for all modes 2021-02-04 10:54:52 +01:00
Matthias Grob 26d74bf57d Commander: enable failsafe delay for position and mission mode
Instead of directly doing the link loss reaction which by default is RTL a delay
can be configured such that the drone first switches to hold and waits
for the link to be regained.
2021-02-04 10:54:52 +01:00
Antonio Sanjurjo Cortés fa45eacea3 Fix and unify the maximum allowed PDOP references 2021-02-04 10:20:22 +01:00
Julian Oes be3cdc0439 sensors: correct comment logic
By removing the no the comment matches the implementation (which I think
makes sense).
2021-02-04 10:14:44 +01:00
Matthias Grob 3ab4213314 IO safety button: cleanup disabling safety 2021-02-04 06:25:43 +01:00
Matthias Grob 3fbd008c4e FMU safety button: cleanup disabling safety 2021-02-04 06:25:43 +01:00
Lorenz Meier 867b006861 IO safety button: Latch to disabled state
As hardware buttons are not particularly reliable and the user flow is to disable safety then arm, then disarm via software / remote, it makes sense to make the button safety state itself sticky and require it to be reset via software.
2021-02-04 06:25:43 +01:00
Lorenz Meier 7157584fe1 FMU safety button: Latch to disabled state
As hardware buttons are not particularly reliable and the user flow is to disable safety then arm, then disarm via software / remote, it makes sense to make the button safety state itself sticky and require it to be reset via software.
2021-02-04 06:25:43 +01:00
Daniel Agar 3f1ca4dfc9 Update submodule mavlink v2.0 to latest Wed Feb 3 18:41:38 UTC 2021 2021-02-03 18:41:02 -05:00
JacobCrabill e6f1812bae ROMFS: Fix typo in S500 CtrlAlloc airframe 2021-02-03 15:29:10 -05:00
xdwgood 89878fcc88 clean up 2021-02-03 17:54:27 +01:00
Paul Riseborough 4b4a9a925b logger: Log takeoff_status 2021-02-03 17:44:12 +01:00
Paul Riseborough 9d1de3118f land_detector: Rework ground effect calculation for MC 2021-02-03 17:44:12 +01:00
Gerald 88c68914a9 update uorb_rtps_message_ids.yaml for id: 30
For some usecases like starting video recording on a companion computer or triggering a ROS based (offboard control) mission control execution the status of RC channel is needed in ROS(2). This allows the user to start/stop such functionalities from the RC transmitter.

Therefore InputRc to be changed accordingly.
add 'Set send: true' for id: 30
2021-02-03 08:52:44 -05:00
David Sidrane 9a08c0f48e NuttX: PX4 stm32f412 contrib 2021-02-03 05:22:04 -08:00
JaeyoungLim b2f0c149ec Set cruise trottle to non-zero (#16724) 2021-02-03 04:39:30 +00:00
Ian 4dc44688a7 Update current year in LICENSE
2020 now is in the past.
2021-02-02 23:05:48 +01:00
Andrew C. Smith 1a428aa5c2 boards: Add support for PX4 FMUv6U 2021-02-02 10:50:26 -05:00
TSC21 10d94e5981 update uorb_rtps_message_ids.yaml 2021-02-02 13:55:42 +01:00
TSC21 701a585a81 RTPS: add check for IDs on multi-topics/alias messages as well 2021-02-02 13:55:42 +01:00
CarlOlsson 835e3258ed uavcannode: use correct vertical position uncertainty 2021-02-02 11:56:07 +01:00
dino bb37fd2f29 Enabled LSE clock for RTC, set clk drive strength to 3. Else the quarzt on the fmuv5x does not socillate reliabel. 2021-02-02 09:58:47 +01:00
Daniel Agar a2442ffb48 board: enable UAVCAN sensors by default on F7/H7 2021-02-02 09:01:12 +01:00
Benoit Landry 8b0ec5a78e mavlink: ATTITUDE_TARGET thrust use thrust_body magnitude
- vehicle_attitude_setpoint thrust_body is a vector, but mavlink ATTITUDE_TARGET thrust is only a magnitude
 - this allows the stream to be correct for both MC & FW use cases
2021-02-01 21:31:36 -05:00
Lorenz Meier 13e875645c Revert "systemcmds/param: use PX4_INFO_RAW directly (delete qurt special case)"
This reverts commit 470f24037e.
2021-02-02 00:53:45 +01:00
Lorenz Meier cd148cda88 Revert "platforms: px4 log build string then print (fputs)"
This reverts commit 9e112dd48b.
2021-02-02 00:53:32 +01:00
Lorenz Meier 0a58482e51 Align message names to avoid CRC mismatch with deployed units
This will ensure that the CRCs will match with deployed units to avoid unnecessary incompatibilities while we are figuring out how to best standardize these between stakeholders.
2021-02-02 00:28:41 +01:00
Peter van der Perk 0c74028976 FMUK66 Decrease telnetd ram usage 2021-02-01 11:50:43 -05:00
Daniel Agar a9a8a95c44 drivers/distance_sensor: add drivers_rangefinder linking dependency
- fixes https://github.com/PX4/PX4-Autopilot/issues/16715
2021-02-01 09:25:23 -05:00
Silvan Fuhrer b9b9c55325 Navigator: change default of GF_ACTION to 2 (Hold)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-02-01 11:07:53 +01:00
Claudio Micheli c2154df2f6 ekf2checks: split GPS checks from AHRS checks - minor cleanup
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-02-01 09:02:19 +01:00
Daniel Agar 78dff6adcb boards: add CONSTRAINED_MEMORY build option
- currently the main change is that it reduces the max number of ORB multi instances to 4, but usage will be expanded as needed
 - limits number of EKF2 multi instances to 2.
 - enabled on all cortex m4 boards
2021-02-01 08:56:22 +01:00
Chungkyeong Lee 834ac38841 fix condition in ekf2Check 2021-02-01 08:55:41 +01:00
Daniel Agar d1a3590aac PWM: transition PWM_{MIN,MAX,DISARMED,RATE} -> PWM_MAIN 2021-02-01 08:53:33 +01:00
Daniel Agar 8b8adbf48e Jenkins hardware reduce IMU_GYRO_RATEMAX on some boards 2021-01-31 21:26:26 -05:00
Daniel Agar 3b71e8e62d boards: cubepilot fix BAT2_V_DIV param default typo 2021-01-31 21:16:42 -05:00
Daniel Agar b1e85b0b04 Jenkins hardware add CUAV X7 Pro 2021-01-31 19:48:00 -05:00
Daniel Agar 61d7be82cc Jenkins hardware add CubePilot CubeOrange 2021-01-31 18:51:32 -05:00
Lorenz Meier 27138578f0 Disable unmaintained MAVROS tests
The overhead of the MAVROS setup means that most developers are not using it, leading to tests that are not suitable for day-to-day workflows. We are replacing these with MAVSDK tests that can be run locally pre-commit.
2021-01-31 17:03:04 -05:00
Jaeyoung-Lim f833861fbb Cleanup unsused rover mixers
This PR cleansup unused rover mixers from the ROMFS
2021-01-31 19:17:38 +01:00
Lorenz Meier f19f93eedf MacOS: Disable OS tests
This is suboptimal but survivable since MacOS is not a deployment target. We still need to identify the root cause.
2021-01-31 10:45:43 -05:00
PX4 BuildBot afd50acce2 Update submodule sitl_gazebo to latest Sun Jan 31 12:39:22 UTC 2021
- sitl_gazebo in PX4/Firmware (bb7dd0cf00): https://github.com/PX4/PX4-SITL_gazebo/commit/46aef29718495d2f668c1648f4c0b0f43b9d9671
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/e580bbcd1eb6902c658ed3ece3b3b28dfd57eb17
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/46aef29718495d2f668c1648f4c0b0f43b9d9671...e580bbcd1eb6902c658ed3ece3b3b28dfd57eb17

    e580bbc 2021-01-30 JaeyoungLim - Use include model syntax for bluerov (#702)
663a553 2021-01-30 Tim - Added GPS and changed the Thruster config of the bluerov2 SDF file (#700)
4674826 2021-01-29 Thies Lennart Alff - increased ODE solver iterations to avoid deflection of the thrusters (#701)
2021-01-31 10:44:04 -05:00
Daniel Agar 5097d531bf mavlink: send LINK_NODE_STATUS 2021-01-31 15:02:30 +01:00
Daniel Agar 4cbbd0ebf3 mavlink: receiver estimate total lost messages 2021-01-31 15:02:30 +01:00
David Sidrane f9d4bd53ef Apply suggestions from code review
Co-authored-by: Beat Küng <beat-kueng@gmx.net>

Apply suggestions from code review use stdout

Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2021-01-31 14:42:09 +01:00
David Sidrane 39c6229c37 Netman:Data in network order 2021-01-31 14:42:09 +01:00
David Sidrane d22eb76187 Add a simple network manager
This system command will display, set and save the network
   settings.

   netman show   - Displays the current settings.

   netman update - Will check for a net.cfg file on the SD card.
                   If present, it will update the paramaters,
                   delete the file, and reboot. Using the new settings.

   netman save - Saves the current settings to net.cfg on the SD card.
                 This file shoulf be renamed to preserver it across
                 reboots or editited to chech networkin paramates.

   File format is name<space>value:

   echo DEVICE=eth0           > /fs/microsd/net.cfg
   echo BOOTPROTO=fallback    >> /fs/microsd/net.cfg
   echo IPADDR=192.168.0.4    >> /fs/microsd/net.cfg
   echo NETMASK=255.255.255.0 >>/fs/microsd/net.cfg
   echo ROUTER=192.168.0.254  >>/fs/microsd/net.cfg
   echo DNS=192.168.0.254     >>/fs/microsd/net.cfg

   Valid values for `proto` are `dhcp`, `static`, `falback`
   Both will try dhcp for CONFIG_NETINIT_FALLBACK times
   and fall back to the static address.

   NETMASK - is the network mask.
   IPADDR  - this nodes ip address for static or fall back.
   ROUTER  - The default route.
   DNS     - The address of the dns server.
2021-01-31 14:42:09 +01:00
David Sidrane ed996e2dd1 fmu-v5x:Add net monitoring an DHCP
px4_fmu-v5x:Use Bin Net settigns
2021-01-31 14:42:09 +01:00
David Sidrane e9dabfbe28 Nuttx apps with rejected Network Monitor add a polled option 2021-01-31 14:42:09 +01:00
Daniel Agar bb7dd0cf00 modules/sih: move to px4 work queue (wq:rate_ctrl)
- respect IMU_GYRO_RATEMAX for configured interval
 - optionally compile at higher optimization level per board (${MAX_CUSTOM_OPT_LEVEL})
2021-01-31 12:56:45 +01:00
Alexey Rogachevskiy c01d459011 Add support for STM32F42x/STM32F43x rev. 5/B (#15407)
* stm32_common: Add support for STM32F42x/STM32F43x rev. 5/B

According to ST, both 5 and B share the same REV_ID.

Signed-off-by: Alexey Rogachevskiy <sfalexrog@gmail.com>

* stm32_common: Change comment to match code, change enum names to match revisions
2021-01-31 12:34:16 +01:00
Daniel Agar 470f24037e systemcmds/param: use PX4_INFO_RAW directly (delete qurt special case) 2021-01-31 11:43:47 +01:00
Daniel Agar 9e112dd48b platforms: px4 log build string then print (fputs) 2021-01-31 11:43:47 +01:00
Daniel Agar 0c58d12216 mavlink: receiver estimate total lost messages 2021-01-31 11:41:56 +01:00
Matthias Grob fbd64fbdd8 FlightModeManager: publish takeoff status 2021-01-31 11:37:00 +01:00
Daniel Agar b30bd7f589 drivers: no longer any need to advertise immediately (baro, mag, rangefinder) 2021-01-31 11:35:46 +01:00
Igor Mišić f80a422f9c mavlink receiver: battery status - publish temperature 2021-01-31 11:20:42 +01:00
Igor Mišić 5f0a014595 mavlink receiver: battery status - publish cells voltage 2021-01-31 11:20:42 +01:00
Daniel Agar 6a4835bbcc sensors: vehicle_magnetometer combine extra _vehicle_magnetometer_pub 2021-01-30 21:50:01 -05:00
Daniel Agar ce76c84ce2 sensors: vehicle_magnetometer respect publication rate limit SENS_MAG_RATE 2021-01-30 21:50:01 -05:00
Daniel Agar 318c7e83b3 support up to PWM 14
- generate PWM_MAIN 1-14
 - generate PWM_AUX 1-8
 - generate PWM_EXTRA 1-8
 - px4io and pwm_out directly read configuration parameters
    - only available and active physical outputs are actually shown for configuration
 - overall saves flash despite adding many new parameters
2021-01-30 15:55:53 +01:00
bresch cdd6df4e27 VehicleGPSPosition: remove unused "using" 2021-01-30 11:32:47 +01:00
bresch 6abbbdeb4b gps blend: add parameter to select the primary instance 2021-01-30 11:32:47 +01:00
bresch 889602ed5e gps blend: always pass through GpsBlending class for selection 2021-01-30 11:32:47 +01:00
bresch b4051b62a3 gps blend: add failover logic and unit test
also remove dependency to hrt library
2021-01-30 11:32:47 +01:00
bresch 9bff7a1c41 gps blend: add selector unit tests 2021-01-30 11:32:47 +01:00
bresch 1dbf4957df vehicle gps pos: remove useless gps_updated array 2021-01-30 11:32:47 +01:00
bresch b60bfb920c gps blend: add initial working test 2021-01-30 11:32:47 +01:00
bresch 1cde5074ea gps blend: move definition to header file 2021-01-30 11:32:47 +01:00
bresch 1333664a14 gps blend: move blending logic to class 2021-01-30 11:32:47 +01:00
Roman Dvořák 075165699d Update CMakeLists.txt 2021-01-30 11:29:42 +01:00
Jakub Kákona 21e70381fe Update default parameters. 2021-01-30 11:29:42 +01:00
Roman Dvorak 42439829b0 use LPE estimator 2021-01-30 11:29:42 +01:00
Roman Dvorak 6c839f9b02 add balloon defaults 2021-01-30 11:29:42 +01:00
Roman Dvorak 1fea1a2822 Initial TF-B1 commit 2021-01-30 11:29:42 +01:00
Claudio Micheli c2a68debd9 add jamming_state to gps sensor module
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-01-30 11:26:42 +01:00
Claudio Micheli cadd2cf883 update gps submodule
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-01-30 11:26:42 +01:00
Claudio Micheli 5eb4ab6d73 vehicle_gps_position: add jamming_state
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2021-01-30 11:26:42 +01:00
Daniel Agar e7f2195a9b ekf2: error if unable to copy every sensor publication 2021-01-29 22:12:29 -05:00
CUAVcaijie e30b8495b8 Enable x7pro and nora spi4 DMA 2021-01-29 21:30:12 -05:00
Dan George c1da999748 cmake: Limit color output to terminals
VIm's Quickfix is useless with escape sequences embedded in
compiler output.
2021-01-29 17:52:32 -05:00
David Sidrane 1375221c56 srgbled_dma:Fix wrong timer init 2021-01-29 21:36:12 +01:00
Silvan Fuhrer 85d8e74609 Navigator: yaw error from param and pos_ctl_status.acceptence_rad checks before using
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-29 19:36:59 +01:00
Silvan Fuhrer 4d6749edc2 mission_block: change loiter handling logic
- add ability of "heading wait" for NAV_CMD_LOITER_TIME_LIMIT
- For both LOITER_TIME and LOITER_TO_ALT in fixed-wing flight, unify logic:
--> reach position --> start loitering --> reach altitude --> start timer (if applicable)
	--> reach exit heading (if applicable) --> declare mission item reached

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-29 19:36:59 +01:00
Silvan Fuhrer 5c9fac58c8 Mission: do not autocontinue if in multicopter mode and next wp has a hold time
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-29 19:36:59 +01:00
Silvan Fuhrer f3adf6d67f mission_block: rename altitude_amsl to mission_item_altitude_amsl to make clear it's a setpoint
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-29 19:36:59 +01:00
Silvan Fuhrer ab9d5498bc mavlink_mission: MAV_CMD_NAV_LOITER_TIME: set force_heading corresponding to param2
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-29 19:36:59 +01:00
Silvan Fuhrer 017567792b Navigator: for loiter position acceptance, use L1 distance and loiter radius
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-29 19:36:59 +01:00
Silvan Fuhrer acbada73dd RTL: VTOL: do the land delay loitering (RTL_LAND_DELAY) in fixed-wing flight
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-29 15:46:33 +03:00
Jaeyoung-Lim cc29754163 Update jsbsim bridge submodule 2021-01-29 09:41:32 +01:00
Daniel Agar f0d1f1d679 boards: disable BDMA on STM32H7 for now 2021-01-28 21:16:23 +01:00
alexklimaj 741c1da634 ARK Flow Basic Functionality 2021-01-28 08:56:10 -05:00
Ricardo Marques 19576c5db3 logger: Correct max instances of actuator_outputs.
Signed-off-by: Ricardo Marques <marques.ricardo17@gmail.com>
2021-01-28 14:22:55 +01:00
Julian Kent ce1157e398 Work around broken coverage interface 2021-01-28 12:02:06 +01:00
Julian Kent 14cb98a6b4 Increase corridor check thresholds for mission tests 2021-01-28 12:02:06 +01:00
Julian Kent 7fac2fe6cd Consolidate uploading of coverage info for unit tests 2021-01-28 12:02:06 +01:00
Julian Kent e014954c91 Remove old matrix inversion routines 2021-01-28 09:14:08 +01:00
Julian Kent e96e028327 Refactor LM mag calibration routines 2021-01-28 09:14:08 +01:00
Julian Kent a9fc104387 Add inline to avoid double definition errors 2021-01-28 09:14:08 +01:00
bresch c79bd033c0 mag test: add ellipsoid test 2021-01-28 09:14:08 +01:00
bresch 1da2cd5b4d mag test: add magnetometer calibration unit tests 2021-01-28 09:14:08 +01:00
bresch a8a8819060 mag cal: move sphere and ellipsoid regression algirithms 2021-01-28 09:14:08 +01:00
JacobCrabill bf4ae81995 Device: Add MAVLINK bus type 2021-01-28 09:09:11 +01:00
Peter Blom a4745c6825 Simulator: Fix for arg count increase breaking remote host option.
The number of arguments was increased by one, see: https://github.com/PX4/PX4-Autopilot/commit/1719ff9892f3c3d034f2b44e94d15527ab09cec6

Because the above commit was merged before https://github.com/PX4/PX4-Autopilot/pull/15443 . It broke support for the remote host option.

This has been fixed in this commit by increasing all argv's by one.

Signed-off-by: Peter Blom <peterblom.mail@gmail.com>
2021-01-28 08:32:14 +01:00
Daniel Agar cf43d07f70 uavcannode: refactor into separate publishers and subscribers 2021-01-27 20:57:23 -05:00
JacobCrabill 39ad84e069 drv_sensor.h: Add missing SRF05 devtype 2021-01-27 17:02:20 -05:00
JacobCrabill e49717513c simulator: Fix distance sensor device_id
Also add DRV_DIST_DEVTYPE_SIM
2021-01-27 17:02:20 -05:00
JacobCrabill a09e13631c distance_sensors: Fix assignment of serial bus ID 2021-01-27 17:02:20 -05:00
JacobCrabill 01462ce627 Device: Add missing SERIAL enum to bus_string function 2021-01-27 17:02:20 -05:00
JacobCrabill 153756b933 drivers: Add support for SF30/[B,C] rangefinders (Serial) 2021-01-27 17:02:20 -05:00
JacobCrabill 7f2f0a04f1 uavcan: remove unused variables in gnss bridge 2021-01-27 17:02:20 -05:00
JacobCrabill 85796fbd84 Drivers: Distance Sensors: Add proper device IDs
Add new DeviceBusType_SERIAL to Device::DeviceId union
Add DRV_DIST_DEVTYPE's for all distance sensors
Change distance_sensor_s.id to distance_sensor_s.device_id
Modify all distance_sensor drivers to apply 'proper' device_id
2021-01-27 17:02:20 -05:00
Daniel Duecker adf2d2f73a extend uuv_att_control module by thrust in y/z-direction (#16642)
* extend uuv_att_control
* add feedthrough thrust_y + thrust_z direction

* extend uuv_att_control
* add feedthrough thrust_y + thrust_z direction

* update formatting

* fix submarine sitl: indicate motor channel range 0..1 or -1..1 in simulation_mavlink.cpp (#16637)

change motor_count variable to 'pos_thrust_motor_count'
This is more specific to what is actually happening in the code.
'pos_thrust_motors_count' indicates number of motor channels which are configured with 0..1 range (positive thrust) all other motors are configured for -1..1 range

submarine only have motors with -1..1 range.
Thus, pos_thrust_motor_count = 0

Co-authored-by: Thies Lennart Alff <33184858+lennartalff@users.noreply.github.com>

* extend uuv_att_control
* add feedthrough thrust_y + thrust_z direction

* update formatting

Co-authored-by: Thies Lennart Alff <33184858+lennartalff@users.noreply.github.com>
2021-01-27 22:35:24 +01:00
Daniel Agar c033681c56 uavcannode: add parameter default value 2021-01-27 13:11:41 -05:00
Daniel Agar 1b9d68abd5 parameters: add new param_get_default_value() 2021-01-27 13:11:41 -05:00
Lorenz Meier 2308cb8a40 CUAV CAN GPS support UAVCAN standard/indication/Button.uavcan
Co-authored-by: Daniel Agar <daniel@agar.ca>
2021-01-27 10:46:49 -05:00
Jukka Laitinen 5e79773275 Add signing of px4 binary into makefiles
When an environment variable "SIGNING_TOOL" is defined, the make will
call this with two filename arguments: <input> and <output>.

The SIGNING_TOOL will read in the binary from input, and append
signature to the output. For example:

SIGNING_TOOL=${PWD}/Tools/cryptotools.py make px4_fmu-v5_default

Will use the example "cryptotools.py" to sign the px4_fmu-v5.bin

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-01-27 08:36:08 +01:00
Jukka Laitinen 0f80296340 Modify cryptotools.py
- Append signature in the end of the signee
- Add parameters for output file and rd certificate
- Add a default test key

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-01-27 08:36:08 +01:00
Jukka Laitinen 5c9e7c2581 Add table of contents structure for px4_fmuv5 targets
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-01-27 08:36:08 +01:00
Jukka Laitinen 15ab477e73 Add header file describing px4 image table-of-contents
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-01-27 08:36:08 +01:00
dino 642d20cebe Added cryptotools.py to support secure bootloader 2021-01-27 08:36:08 +01:00
PX4 BuildBot 124258fb18 Update submodule sitl_gazebo to latest Wed Jan 27 00:46:05 UTC 2021
- sitl_gazebo in PX4/Firmware (ab0f761e9f): https://github.com/PX4/PX4-SITL_gazebo/commit/4048ae60ae4e8bc84840b4878d13e0e685e21b9a
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/46aef29718495d2f668c1648f4c0b0f43b9d9671
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/4048ae60ae4e8bc84840b4878d13e0e685e21b9a...46aef29718495d2f668c1648f4c0b0f43b9d9671

    46aef29 2021-01-25 JaeyoungLim - Rename geotagged_images_plugin to camera_manager_plugin (#698)
38224fb 2021-01-25 Pieter-Jan Dewitte - Pr liftdrag coefficients (#690)
2021-01-27 06:24:22 +01:00
David Sidrane ab0f761e9f uavcan:Beep Repeated tunes are OK 2021-01-26 19:22:14 -05:00
Daniel Agar 53a14e847d drivers/rc_input: support RC_RSSI_PWM_CHAN 2021-01-26 18:19:52 -05:00
David Sidrane ab650373d6 cuav gps:Add Beep indication 2021-01-26 17:04:40 -05:00
Daniel Agar 3b26b7adaf sensors: magnetometer preserve original mag cal offset for status message 2021-01-26 16:04:10 -05:00
Daniel Agar 15cbe8c09a px4_work_queue: wq:nav_and_controllers increase stack 1730 -> 1760 bytes 2021-01-26 16:03:37 -05:00
Daniel Agar b422da45ec boot_app_shared automatically generate UAVCAN bootable image 2021-01-26 10:21:29 -08:00
Daniel Agar 347c185967 UAVCAN bootloader merge duplicate boot_app_shared 2021-01-26 10:21:29 -08:00
Daniel Agar e656c9c13f drivers/uavcannode: Add a simple parameter server (simpler version for merging) (#16649)
* drivers/uavcannode: Add a simple parameter server

Added a simple parameter server using the libuavcan ParamServer class.
The parameter server exposes a selection of PX4 parameters via UAVCAN.
Also, Increased the stack size of the uavcan work queue in order to
prevent a stack overflow.

* uavcannode: fetch all active PX4 parameters

Co-authored-by: Kenneth Thompson <ken@flyvoly.com>
2021-01-26 10:19:20 -08:00
David Sidrane 525361cbc7 uavcannode:Add Indication Controller 2021-01-26 12:05:18 -05:00
Daniel Agar d1dfa26903 consume all available queued vehicle_commands 2021-01-26 12:00:18 -05:00
Daniel Agar d5c7e243a9 vehicle_command: increase queue depth 4 -> 8
- prevent slower modules from missing commands
2021-01-26 12:00:18 -05:00
Daniel Agar 350ebf5a1f boards: CUAV CAN GPS flash based parameters 2021-01-26 08:06:54 -08:00
bazooka joe f45b67af59 re-add boolean attribute to the parameters xml
and small cleanup, make Volatile as bool in the internal variable
2021-01-26 08:24:59 +01:00
Daniel Agar 39ef2fd0b7 delete unused struct pwm_output_rc_config 2021-01-25 10:55:57 -05:00
Daniel Agar 75f02d64b6 delete unused PWM_SERVO_SET_SBUS_RATE 2021-01-25 10:55:57 -05:00
Daniel Agar 2b0a047f0c delete unused DSM_BIND_POWER_UP 2021-01-25 10:55:57 -05:00
Daniel Agar 439c573242 delete unused PWM_SERVO_SET_TRIM_PWM 2021-01-25 10:55:57 -05:00
Daniel Agar 2ff69a4456 delete unused PWM_SERVO_SET_COUNT 2021-01-25 10:55:57 -05:00
Daniel Duecker f9e07337f8 fix submarine sitl: indicate motor channel range 0..1 or -1..1 in simulation_mavlink.cpp (#16637)
change motor_count variable to 'pos_thrust_motor_count'
This is more specific to what is actually happening in the code.
'pos_thrust_motors_count' indicates number of motor channels which are configured with 0..1 range (positive thrust) all other motors are configured for -1..1 range

submarine only have motors with -1..1 range.
Thus, pos_thrust_motor_count = 0

Co-authored-by: Thies Lennart Alff <33184858+lennartalff@users.noreply.github.com>
2021-01-25 14:17:24 +01:00
David Sidrane 455f762516 px4_fmu-v6x:Support RC03 HW 2021-01-25 09:18:24 +01:00
honglang 43e1cda8ac uavcan: add tune_control/beep 2021-01-25 08:38:15 +01:00
PX4 BuildBot f571b29ae8 Update submodule matrix to latest Sun Jan 24 12:39:24 UTC 2021
- matrix in PX4/Firmware (92f2043d8b): https://github.com/PX4/PX4-Matrix/commit/054f8b12f4da79767df6e05bb1d2cc8d679b99f3
    - matrix current upstream: https://github.com/PX4/PX4-Matrix/commit/977cf52322ab3ca93125423a0f9e9b3eca0516d7
    - Changes: https://github.com/PX4/PX4-Matrix/compare/054f8b12f4da79767df6e05bb1d2cc8d679b99f3...977cf52322ab3ca93125423a0f9e9b3eca0516d7

    977cf52 2021-01-22 Julian Kent - Ignore debug line in code coverage
4837316 2021-01-22 Julian Kent - Fix small inconsistencies and compiler warnings
d540ca5 2021-01-13 Julian Kent - Coerce default epsilon values to Type
2021-01-24 09:21:02 -05:00
Silvan Fuhrer 92f2043d8b TECS: add EAS_sp to tecs_status.msg and rename other airspeeds to TAS
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-23 09:34:34 -05:00
Silvan Fuhrer 5e32e9be5a TECS: rename variables and methods to make clear which are EAS and which TAS
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-23 09:34:34 -05:00
Silvan Fuhrer 4922659ef4 FW Position controller: specify in params that the airspeed setpoints are for calibrated airspeed
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-23 09:34:34 -05:00
jinger26 8118886f63 updated roadmap link 2021-01-23 09:32:19 -05:00
David Sidrane 1414c02471 msg:led_control Extend to support 8 LEDS 2021-01-23 09:30:59 -05:00
David Sidrane 7800f94dcb cuav_can-gps-v1 Use SK6812 Serial PWM LED Driver 2021-01-23 09:30:59 -05:00
David Sidrane 2c4d1d8fe0 Add SK6812 Serial PWM LED DMA Driver 2021-01-23 09:30:59 -05:00
David Sidrane 64531c4521 Add SK6812 Serial PWM LED Driver 2021-01-23 09:30:59 -05:00
David Sidrane 0b85039882 Add Neopixel Driver 2021-01-23 09:30:59 -05:00
David Sidrane fdba8f1f23 cuav_can-gps-v1:Use corrected pinout 2021-01-23 09:30:59 -05:00
David Sidrane f7aea05b19 Nuttx with STM32F4412 corrected pinmap 2021-01-23 09:30:59 -05:00
Jaeyoung-Lim fa5a6cf712 Add option for custom mavlink configuration
This commit enables a option for users to add a custom mavlink configuration through rc.mavlink_override
2021-01-22 17:03:09 +01:00
이충경 17ea6f68e2 fix variable name in EKF2Selector (#16621) 2021-01-22 15:32:32 +01:00
Silvan Fuhrer da7f6d06f3 AirspeedSelector: set default of ASPD_DO_CHECKS to 1 and ASPD_FS_INTEG to 5.
That enables the sensor checks by default
The default for the innovation check integral of 5 is rather conservative, thus
makeing it less likely to be triggered by accidnet (e.g. due to bad wind estimate).

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 28f9214e56 AirspeedSelector: parameter clean up and disable re-enabling if clear delay negative
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 98d057b8c9 AirspeedValidator: change logic for innovation checks
Previously, the logic was not consistent with the description in the params.
It now, if the integral is enabled, declares innovation check failed if
integral is above threshold.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 0c2099e788 AirspeedSelector: improve messaging on airspeed sensor switches
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer aecc0aa0c3 AirspeedSelector: do checks for data stopped in airspeed selector, not validator
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 7132e674d6 AirspeedValidator: Simplify data missing check
The data_stopped check should be independent of the innovation
and load factor check.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 083cd6f1c1 AirspeedValidator: remove unnecessary _checks_failing
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 37a49dbb6a AirspeedValidator: improve readability
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 061fb9ac07 AirspeedSelector: add const
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer cd2c366e22 AirspeedSelector: remove unnecessary reboot required and Experimental comments in params
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 11dbc7e17f AirspeedSelector: improve description of ASPD_FALLBACK_GW
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
Silvan Fuhrer 0f1207dd7e AirspeedSelector: improve readability
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-22 14:16:22 +01:00
PX4 BuildBot 1d8808183d Update submodule ecl to latest Thu Jan 21 17:04:02 UTC 2021
- ecl in PX4/Firmware (18bac6aff5): https://github.com/PX4/PX4-ECL/commit/99575d73e10aad06eb7d5b6415ea2db4151c5045
    - ecl current upstream: https://github.com/PX4/PX4-ECL/commit/b919f3ddf41ab422d09af91eaea2b2f9729fab13
    - Changes: https://github.com/PX4/PX4-ECL/compare/99575d73e10aad06eb7d5b6415ea2db4151c5045...b919f3ddf41ab422d09af91eaea2b2f9729fab13

    b919f3d 2021-01-21 Paul Riseborough - EKF: Restore protection from extreme innovation values
efb78de 2021-01-21 Paul Riseborough - EKF: Set position fusion gate option false by default
556a195 2021-01-19 Paul Riseborough - EKF: Improve handling of non position mode large position innovations
2021-01-21 12:33:25 -05:00
Daniel Agar 18bac6aff5 ROMFS: posix rcS set EXTRA_MIXER_MODE 2021-01-21 11:26:23 -05:00
Daniel Agar e0b33ba842 mavlink: temporarily disable ACTUATOR_OUTPUT_STATUS stream by default
- the presence of this stream appears to be causing the MAVSDK tests to fail and needs to be investigated
2021-01-21 11:25:42 -05:00
Matthias Grob 7cdb9e9412 MulticopterPositionControl: altitude comment typo 2021-01-21 09:43:12 -05:00
Matthias Grob 4ce4fe05c5 BlockLowPass: initialize state in definition 2021-01-21 09:43:12 -05:00
ArthurLamberticus 82d32c7f3f mavlink: add ACTUATOR_OUTPUT_STATUS stream
Co-authored-by: Lise Prunier <lise.prunier@aerialcoboticus.com>
2021-01-21 09:30:43 -05:00
Matthias Grob 4becf74cbc .gitmodules: adapt submodule names to repo renaming 2021-01-21 11:52:14 +01:00
Matthias Grob 65884960fa Remove ancient submodules
that were accidentally added back without URL in #16471
2021-01-21 10:46:29 +01:00
Hamish Willee bd00aec936 Parameter markdown use page css for layout 2021-01-21 09:08:26 +01:00
Daniel Agar 9a066959d4 delete empty src/lib/DriverFramework 2021-01-20 14:15:49 -05:00
TheLegendaryJedi 64c857562d Crazyflie v 21 (#16502)
Build model name fix.

Co-authored-by: TheLegendaryJedi <goncalo.atanasio@gmail.com>
2021-01-20 19:51:45 +01:00
TheLegendaryJedi dd9b0ded0f [UPDATE] - Remove duplicate syslink code 2021-01-20 19:51:45 +01:00
TheLegendaryJedi 641665f2e9 [UPDATE] - Workflows and Jenkins CI builds CF21 2021-01-20 19:51:45 +01:00
TheLegendaryJedi b3d9efedfa [UPDATE] - Code clean and format 2021-01-20 19:51:45 +01:00
TheLegendaryJedi e450c5a9d9 [UPDATE] - Crazyflie parameter config 2021-01-20 19:51:45 +01:00
TheLegendaryJedi 40f971c082 [NEW] - bmi088 i2c drivers and crazyflie 2.1 conf 2021-01-20 19:51:45 +01:00
bresch d7812f83f1 mag_cal: fix race condition causing invalid mag calibration
In some cases, the fitness of the optimizer does not shrink at each
iteration, causing the "decreasing fitness check" to fail. This stops
the optimization and returns with sub-optimal, or unrealistic results.
2021-01-20 10:50:35 -05:00
Beat Küng b190d98d6d Jenkinsfile: remove dev-guide metadata deployment
dev guide got merged with the user guide.
2021-01-20 10:03:00 -05:00
Mathieu Bresciani 8d8b58efc3 Add logging of mag calibration data (mag_worker_data)
Co-authored-by: Julian Kent <julian@auterion.com>
2021-01-20 09:44:45 -05:00
Jari van Ewijk 6a32301ed5 Add NXP FMUK66E build to CI
This build was not yet available in the CI. We just got the first hardware and are doing the first tests right now. So far most things seem to work.
2021-01-20 05:52:50 -08:00
Hamish Willee 59a1148aec Modify airframe gen to use html.escape 2021-01-20 00:22:30 +01:00
Hamish Willee d2eefbf2fb Escape < and > in maintainer field 2021-01-20 00:22:30 +01:00
AlexKlimaj 386b56fbce drivers/imu/bosch/bmi088: Add BMI090L accel ID 2021-01-19 15:49:53 -05:00
Ryan Johnston d22eef9396 boards: mRo Control Zero F7 fix for voltage/current sensing
* Rename GPIO_nVDD_BRICK1v to GPIO_VDD_BRICK1
2021-01-19 15:48:17 -05:00
CUAVcaijie bed77c2988 add notes 2021-01-19 20:42:58 +01:00
CUAVcaijie 297a428cc0 Fix the case where the flight controller is connected to the battery (charge 100), QGC shows no battery 2021-01-19 20:42:58 +01:00
Ryan Johnston cea8ad4236 Control Zero F7 - RSSI Fix - SBUS Only/PPM Partial
This fixes RSSI for the Control Zero F7 but I have noticed that while this works perfectly for SBUS receivers, for PPM receivers it does not decrease the RSSI visual value in QGC when removing the RC transmitter connection.

When a PPM receiver is connected and the connection is lost the autopilot goes into RC Scan Mode (in the RC Update Module) to determine what is connected (even though something already is connected).

The main issue with this is that PPM receivers don't go into RC Failsafe but I don't think it is an issue with this autopilot. It looks to be an issue with the RC Update Module and how it is handled at the module level for non I/O coprocessor autopilots. 


Tested with an X8R (SBUS) and a Dragonlink (PPM) as well as a Dragonlink set to SBUS as the output. SBUS worked as intended. See screenshots below.
2021-01-19 20:42:28 +01:00
Daniel Agar ac8f4e3c48 mc_pos_control: only update constraints if topic updated
- update failsafe constraints
2021-01-19 14:44:42 +01:00
Matthias Grob 39b0c7b2bf battery: report at least one cell for a connected battery 2021-01-18 17:53:17 +01:00
Matthias Grob d9954ecaf0 lib/magnetometer_bias_estimator: Add library for online magnetometer calibration on the ground
Co-authored-by: bresch <brescianimathieu@gmail.com>
2021-01-18 11:44:58 -05:00
Matthias Grob 36d15ada1c vscode: do not enable smart case search
in workspace settings. This comes down to user preference
and there's no particular reason to change this based on the workspace.
I found it confusing to have this non-default behavior
just for PX4 editing.
2021-01-18 11:33:21 -05:00
Daniel Agar 77b21680fb sync ctrlalloc boards and add to CI 2021-01-18 11:25:37 -05:00
Daniel Agar 311a2bd3e8 update ctrlalloc airframe location 2021-01-18 11:25:37 -05:00
Daniel Agar 3e5e5ab1d5 control_allocator and angular_velocity_controller throttle parameter_update subscription 2021-01-18 11:25:37 -05:00
Beat Küng c36340d29a ActuatorEffectivenessMultirotor: set effectiveness to zero when computing the matrix
Just to be on the safe side.
2021-01-18 11:25:37 -05:00
Beat Küng 212ec821b1 control_allocator: set unused actuators to trim instead of min 2021-01-18 11:25:37 -05:00
Beat Küng 3606f86518 control_allocator: ensure unused outputs are initialized to min
Mostly important in cases where the ouputs would change (e.g. param change)
2021-01-18 11:25:37 -05:00
Beat Küng 3dad79d8f5 control_allocator: inline one-line setters & getters 2021-01-18 11:25:37 -05:00
Beat Küng 164511a7b5 control_allocator: avoid vector copies and sqrt() 2021-01-18 11:25:37 -05:00
Beat Küng 0e66b0876b control_allocator: change SequentialDesaturation to existing MC mixer
And limit the operations to the number of configured outputs.

Only using the number of configured actuators reduces CPU load by ~2% on
F7 @1khz.
2021-01-18 11:25:37 -05:00
Beat Küng 308f614735 refactor control_allocator: directly get the effectiveness matrix when updated
Reduces stack + RAM usage
2021-01-18 11:25:37 -05:00
Beat Küng 38782029ad fix control_allocator: set _last_run at the correct place 2021-01-18 11:25:37 -05:00
Beat Küng 0e86ab47f6 fix control_allocator: use 'delete' instead of 'free', guard against out-of-memory 2021-01-18 11:25:37 -05:00
Beat Küng 066464c4e8 control_allocator: remove unused _task_start 2021-01-18 11:25:37 -05:00
Beat Küng 25f3fe8456 fix control_allocator_status: torque_setpoint_achieved and thrust_setpoint_achieved are bool 2021-01-18 11:25:37 -05:00
Julien Lecoeur 343cf5603e initial control allocation support
- control allocation module with multirotor, VTOL standard, and tiltrotor support
 - angular_velocity_controller
 - See https://github.com/PX4/PX4-Autopilot/pull/13351 for details

Co-authored-by: Silvan Fuhrer <silvan@auterion.com>
Co-authored-by: Roman Bapst <bapstroman@gmail.com>
2021-01-18 11:25:37 -05:00
Julian Kent fc6b61dad1 Try 'min' for units 2021-01-18 16:26:53 +01:00
Julian Kent d99d52960e Fix default _rtl_xxx values 2021-01-18 16:26:53 +01:00
Julian Kent d965f1cbc0 Add rtl_flight_time message 2021-01-18 16:26:53 +01:00
Julian Kent 5a9fe312b5 Fix test failure on rebase: set lpos valid 2021-01-18 16:26:53 +01:00
Julian Kent af8d178ae5 Fix spurious RTL triggers
Two sources:
1. global to local conversion was sometimes giving issues, so do everything in global
2. on startup the RTL didn't check if the home position was valid before processing it
2021-01-18 16:26:53 +01:00
Julian Kent b5f0a7ea03 Fix RangeRTL test 2021-01-18 16:26:53 +01:00
Julian Kent 5500a84b6a Add timestamp to RTL message 2021-01-18 16:26:53 +01:00
Julian Kent f169247bc2 Add RTL topics to ulog default profile 2021-01-18 16:26:53 +01:00
Julian Kent 67082ccb2b Test the vehicle type parameter usage 2021-01-18 16:26:53 +01:00
Julian Kent 100c64c790 Test the navigator side, and fix another trig edge case 2021-01-18 16:26:53 +01:00
Julian Kent a736ba2435 Minor tweak in wind handling 2021-01-18 16:26:53 +01:00
Julian Kent e847ef1a4d Add trig tests for wind calculations, and fix bugs / edge cases 2021-01-18 16:26:53 +01:00
Julian Kent 7482413005 Add Range-based RTL 2021-01-18 16:26:53 +01:00
Ricardo Marques e817fb83f5 pwm_extra: Add PWM_EXTRA parameters.
Signed-off-by: Ricardo Marques <marques.ricardo17@gmail.com>
2021-01-18 15:43:28 +01:00
Ricardo Marques 7a8203bf19 Enable third mixer when using UAVCAN for main mixer. 2021-01-18 15:43:28 +01:00
Matthias Grob 02c0f08060 flashfs: fix alignment ambiguity
Instead of ignoring the warnings.
Thanks to @Ole2mail and @yuhaim for the suggestions.
2021-01-18 14:19:29 +01:00
TSC21 920d6d84b5 rtps: increase non-alias ID range by reducing the alias space ID 2021-01-18 09:33:14 +01:00
TSC21 54486b995e uorb_rtps_message_ids: add required topics to enable offboard control from DDS 2021-01-18 09:33:14 +01:00
Daniel Agar dab90f86a4 drivers/gps: limit to ublox only flash constrained targets 2021-01-18 09:30:01 +01:00
Ricardo Marques 78c05275d2 tailsitter: Fix differential thrust in FW mode.
Signed-off-by: Ricardo Marques <marques.ricardo17@gmail.com>
2021-01-18 09:04:27 +01:00
Daniel Agar e4d223f098 boards: CUAV Nora fix BMI088 orientation 2021-01-17 23:19:18 -05:00
Daniel Agar 1ec10bfcc6 boards: disable CONFIG_ARMV7M_LAZYFPU again (#16573)
- this was causing hard faults on the CUAV Nora and possibly other boards, disabling everywhere until we fully understand the root cause
2021-01-17 22:40:21 -05:00
Daniel Agar 3abe2e82d1 mpu9250: create dedicated i2c version and delete legacy driver
- update crazyflie and bbblue usage
 - eventually this should be merged with the SPI version after interface
changes are made
2021-01-17 16:11:19 -05:00
Daniel Agar c9a7894230 boards: bitcraze crazyflie fix boot
- add console to USART3 for now
2021-01-17 16:11:19 -05:00
David Jablonski 2ed48f041c mavlink: Templated SCALED_IMU mavlink stream 2021-01-17 12:32:51 -05:00
Matthias Grob 031bbb7f3e FlightModeManager: handle commands all the time
Moving the command handling to a separate function that gets called
whenever a vehicle command is available to always react on commands
and not just when already a task is running.

This solves e.g. commanding an Orbit when in Staibilized.
2021-01-17 15:46:30 +01:00
Matthias Grob df54f938ef FlightModeManager: correct setpoint struct initialization
It is important that setpoints get initialized with NAN and not overwritten
if specifically set by a successful flight task execution. It's then
clear if any setpoints were intentionally and successfully set.
Crucial for the position controller's emergency failsafe and the
seamless setpoint handover to the next flight task.
2021-01-17 15:46:30 +01:00
Matthias Grob 63db61a700 FlightModeManager: correct acceleration setpoint feedback naming
The variable was never renamed correctly in this in between layer when
we switched from normalized thrust to acceleration setpoints.
2021-01-17 15:46:30 +01:00
Daniel Agar 4d7b875ee2 flight_mode_manager: merge with flight_tasks 2021-01-17 15:46:30 +01:00
RomanBapst b1e442b830 vehicle_local_position: added bitfield for terrain estimate sensor info
- indicate how the distance to the bottom is estimated as this is important
to know in the context

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-17 12:06:59 +01:00
bresch eaa2ae9dc9 ekf2: add param to enable synthetic mag Z fusion mode 2021-01-17 12:06:59 +01:00
bresch 983234e29d ekf2: add param to set rng check hysteresis 2021-01-17 12:06:59 +01:00
Silvan Fuhrer 195a900ecf change default of RTL_LAND_DELAY to 0
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-17 12:05:30 +01:00
Silvan Fuhrer 037c821142 ROMFS: increase max distance between waypoints for VTOL and FW to 5km
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-17 12:05:30 +01:00
JacobCrabill 8e8497ff77 heater: px4io: Add support for heaters on IO MCU 2021-01-17 12:03:53 +01:00
Jaeyoung-Lim 653fef56de Update sitl_gazebo 2021-01-17 11:18:11 +01:00
Jaeyoung-Lim af1b4c473e Start user camera plugin
This commit starts the gazebo_user_camera_plugin together with the gzclient, so that it is always following the vehicle
2021-01-17 11:18:11 +01:00
Matthias Grob 8a7878f65c arch.sh: update zsh support, latest ARM GCC, gazebo AUR 2021-01-17 10:58:39 +01:00
Silvan Fuhrer cee4016665 Preflight checks: Airspeed checks update
-check for valid airspeed_validated (declared valid plus updated less than 1s ago)
-added param (COM_ARM_ARSP_EN) to enable/disable check for max airspeed for arming set max
airspeed limit to half of stall airspeed

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-16 10:26:55 -05:00
Can Berk Durmus ba9611621d Retune Typhoon H480 PID 2021-01-16 09:32:09 +01:00
David Sidrane 1c0ed74d6a platforms/nuttx/NuttX/nuttx net backports 2021-01-15 11:44:21 -08:00
Beat Küng ade3871bee adc: add support for multiple sensor voltage channels 2021-01-15 10:57:20 -05:00
Beat Küng e2337a34eb system_power: add comp_5v_valid and can1_gps1_5v_valid
And fill it in from the v5x GPIO expander.
2021-01-15 10:57:20 -05:00
Beat Küng 704a82aaa6 gpio: extend support for /dev/gp* GPIO's
Note that there's a small CLI interface change.
2021-01-15 10:57:20 -05:00
Beat Küng 88fe047556 px4/v5x: enable mcp23009 GPIO driver 2021-01-15 10:57:20 -05:00
Beat Küng 3e4b8763a5 nuttx: add mcp23009 gpio driver 2021-01-15 10:57:20 -05:00
Beat Küng e1983381e7 rcS: add SYS_PARAM_VER to param reset_all exception list
Avoids an extra reboot when resetting the airframe
2021-01-15 10:57:20 -05:00
Matej Frančeškin ba6a8080ea mavlink: don't respond to MAV_CMD_REQUEST_MESSAGE if component doesn't match
PX4 is responding with NACK to MAV_CMD_REQUEST_MESSAGE from a GCS to
payload-manager which confuses a GCS.
PX4 shouldn't respond to commands that are not broadcasted or specificaly
addressed to it.
2021-01-15 10:57:20 -05:00
Beat Küng 26e8c231b0 v5x,v6x: move mtd_caldata after mtd_id partition
to avoid losing factory calibration params on existing setups
2021-01-15 10:57:20 -05:00
Lorenz Meier a282f3df8d CLI test: Disable by default on NuttX
First target is to enable this for POSIX tests and then later to roll them out to NuttX.
2021-01-15 10:57:20 -05:00
Lorenz Meier 03e9e10847 Add CLI tests for basic soak testing
This is in no way a complete test suite but is intended as a starting point to get minimal
test coverage for CLI handling tests in. This is necessary to QA the CLI handling
(e.g. removal of commands) and to ensure that we are exercising these code paths in
stack check and alike tests.
2021-01-15 10:57:20 -05:00
Julian Oes 5ae5c03c66 mavlink: handle param4/5 from mission_item_int
It turns out that we did not properly handle param4 and param5 if they
are transferred using mission_item_int if the frame is
MAV_FRAME_MISSION.
2021-01-15 10:57:20 -05:00
Beat Küng 12ebbd995d bmp388: wait a bit longer to schedule first cycle after reset 2021-01-15 10:57:20 -05:00
Beat Küng 529c3112ac bmp388: quiet if startup fails (no sensor on bus) 2021-01-15 10:57:20 -05:00
David Sidrane 1e7dfe227a stm32_common:board_hw_rev_ver Use Analog resistor detection
When the VER_DRIVE and REV_DRIVE are the same GPIO
   we need to use Analog detection.
2021-01-15 10:57:20 -05:00
Jakub Kákona b87dd317d4 airframes: add new airframe for ThunderFly TF-G2 autogyro (#16551)
Co-authored-by: Roman Dvorak <romandvorak@mlab.cz>
2021-01-15 13:54:17 +01:00
Thomas df41c99b61 make failsafe handling consistent over all VTOL types 2021-01-15 09:19:07 +03:00
Thomas 38e46ff341 Rename VtolAttitudeControl::abort_front_transition(const char *reason) to VtolAttitudeControl::quadchute(const char *reason) 2021-01-15 09:19:07 +03:00
Thomas Stauber 40fbfdc054 Undo make format change
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-01-15 09:19:07 +03:00
Thomas 83ddb77a5f delete excess empty lines 2021-01-15 09:19:07 +03:00
Thomas b90fafd5cd Fix quadchute logic so that it also works during back transition 2021-01-15 09:19:07 +03:00
Daniel Agar 420ceb76fc cmake: NuttX generated vscode launch.json requires DEBUG_DEVICE found 2021-01-14 10:32:26 -05:00
SalimTerryLi 1ee98417f8 scumaker pilotpi updates
* replace default mag with qmc5883l
* fix rotation and quiet startup
* fixedwing script & Multi-EKF cfg
* set default params only when initial startup
2021-01-14 09:16:13 -05:00
Daniel Agar 52b07a932a github actions build and store cannode uavcan firmware 2021-01-14 08:52:38 -05:00
RomanBapst 96dfa7fc71 ROMFS: set cruise throttle correctly for all gazebo vtol configs
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-14 09:58:37 +03:00
Silvan Fuhrer 0633c3956f ROMFS: improve tuning of tailsitter VTOL SITL
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-14 09:58:37 +03:00
Silvan Fuhrer 6104fe8932 ROMFS: improve tuning of tiltrotor VTOL SITL
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-14 09:58:37 +03:00
Silvan Fuhrer 2ce310925c ROMFS: improve tuning of standard VTOL SITL
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-14 09:58:37 +03:00
Daniel Agar e96571b45d uavcannode: GPS working on cuav_can-gps-v1
- use sensor_gps directly from sensor rather than vehicle_gps_position (aggregated value)
2021-01-13 22:06:46 -05:00
Daniel Agar d8e8e23947 vscode: add cuav_can-gps-v1_canbootloader variant 2021-01-13 22:06:46 -05:00
Daniel Agar 58909b208d boards: cuav can-gps-v1 add safety button and LED 2021-01-13 22:06:46 -05:00
Daniel Agar a894ca30e8 cmake: add STM32F412CE debug helper 2021-01-13 22:06:46 -05:00
David Sidrane 529841ba7c make_can_boot_descriptor:Get padding math correct 2021-01-13 22:06:46 -05:00
David Sidrane 1ac70cc72f can-gps-v1:Correct Memory size used by app and bootloader size 2021-01-13 22:06:46 -05:00
David Sidrane d04216aa48 Nuttx with stmf412 fixes 2021-01-13 22:06:46 -05:00
David Sidrane 618bd5978a can-gps-v1:canbootloader SAFETY is GETNODEINFO_JUMPER 2021-01-13 22:06:46 -05:00
David Sidrane 2deef30d12 canbootloader:Add 48Mhz CAN Clock Settings 2021-01-13 22:06:46 -05:00
David Sidrane 177109a1af can-gps-v1:LED Trimming 2021-01-13 22:06:46 -05:00
David Sidrane 54abd997de canbootloader:Update to use NuttX 2021-01-13 22:06:46 -05:00
David Sidrane 271f87f8d2 canbootloader:Fixed Warning 2021-01-13 22:06:46 -05:00
David Sidrane 238c28d458 SK6812 Led driver 2021-01-13 22:06:46 -05:00
David Sidrane 85bd04f0c7 can-gps-v1:canbootloader Fixed 2021-01-13 22:06:46 -05:00
David Sidrane 3e08fd6682 can-gps-v1: Removed GPIO_CAN_CTRL 2021-01-13 22:06:46 -05:00
David Sidrane c2c92cb2c8 can-gps-v1: Added LED pin 2021-01-13 22:06:46 -05:00
David Sidrane cdae8bf168 can-gps-v1:Fixed Clock 2021-01-13 22:06:46 -05:00
Daniel Agar a0d8d5ac74 sensors/vehicle_gps_position: untangle and remove unnecessary state 2021-01-13 20:17:49 -05:00
Daniel Agar bc8ec5d1f5 uavcannode: support optical_flow 2021-01-13 19:35:28 -05:00
RomanBapst 47364ce8d6 updated tuning for gazebo plane airframe config
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst f05599caff tecs: use speed derivative provided by local position
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
Silvan Fuhrer b230bbfe88 ROMFS: remove outdated TECS parameter from configs
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-13 21:21:07 +03:00
RomanBapst e546584555 tecs: moved trivial getter methods to header file
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
Roman Bapst 701c105ab6 Update src/lib/tecs/TECS.cpp
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst fa559aef43 TECS: stop learing integrator if airspeed is not available, but don't zero it
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst d4d1c0fe01 TECS: some cosmetics
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst 97cc1e25dd TECS: hande pitch and throttle integrator saturation consistently
- don't decay integrator during saturation but prevent it from being learned
into the direction which causes more actuator saturation

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst 77627a08ca TECS: don't allow speed height weights to be larger than one
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
Silvan Fuhrer dca89763b3 TECS: apply FW_LND_THRTC_SC to altitude error time constant
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-13 21:21:07 +03:00
Silvan Fuhrer 3d3ff75495 TECS: update some params to latest results from flight testing
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-13 21:21:07 +03:00
Silvan Fuhrer 3102b9f071 TECS: remove throttle integral limits
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-13 21:21:07 +03:00
RomanBapst 987c320825 TECS: removed unused parameter
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst 5c4c2c240c tecs: dot not clip throttle integrator during saturation but only allow
it to propagate into a direction which does not saturate

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
Silvan Fuhrer 2ca4269464 TECS: separate integral gains for throttle and pitch loops
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-13 21:21:07 +03:00
Silvan Fuhrer 72dfb2078a TECS: adapt params to new control structure
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-13 21:21:07 +03:00
RomanBapst 01f891618b TECS: move to new control loop architecture
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst 447e14906c TECS: log more TECS states to enable better analysis
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst 8823f5e1ec TECS: added method to get SKE weighting
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
RomanBapst d0e8b882a2 TECS: added alpha filter classes to energy rate and tas derivative
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 21:21:07 +03:00
xdwgood cabb50a67b 13001_caipirinha_vtol:Ensure that the max/min pwm changes take effect 2021-01-13 11:32:01 +01:00
Julian Kent be0f5a7fe4 Fix implicit float->double conversions in tests 2021-01-13 10:26:10 +01:00
Julian Kent 2d6758a39d Cleanup of dataman mocks and check interval definition 2021-01-13 10:26:10 +01:00
Julian Kent a97a4d8bb8 Fix enum and param update 2021-01-13 10:26:10 +01:00
Julian Kent c745c8bb45 Small navigator refactor/cleanup 2021-01-13 10:26:10 +01:00
Julian Kent 04d859e36e Fix test failure from parameter autosave starting WQ 2021-01-13 10:26:10 +01:00
RomanBapst f97dcde4e2 GeofenceBreachAvoidanceTest: added tests for max dist to home
Signed-off-by: Julian Kent <julian@auterion.com>
2021-01-13 10:26:10 +01:00
RomanBapst 3fa15cec91 GeofenceBreachAvoidance: improve behavior when using max dist to home option
- ensure that the vehicle is loitering with sufficient clearance to the boundary

Signed-off-by: Julian Kent <julian@auterion.com>
2021-01-13 10:26:10 +01:00
Julian Kent a5dfa0c803 Add helper function for decel distances
Co-authored-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 10:26:10 +01:00
RomanBapst 0ac597fba8 Use new GeofenceBreachAvoidance from Navigator
Signed-off-by: Julian Kent <julian@auterion.com>
2021-01-13 10:26:10 +01:00
RomanBapst e536868104 Add GeofenceBreachAvoidance class
Signed-off-by: Julian Kent <julian@auterion.com>
2021-01-13 10:26:10 +01:00
Julian Kent 8622c21496 Move VelocitySmoothing to new motion_planning library
Co-authored-by: RomanBapst <bapstroman@gmail.com>
2021-01-13 10:26:10 +01:00
Jannik Beyerstedt 3834690c4b Add parameter to select the set of used GNSS systems 2021-01-13 08:33:07 +01:00
JacobCrabill 917fef546a uavcan: Remove single-GNSS limitation from UavcanGnssBridge 2021-01-12 22:04:52 -05:00
Daniel Agar a57b9f9381 delete drv_baro.h, drv_mag.h, drv_range_finder.h, drv_device.h and purge UAVCAN CDev usage 2021-01-12 22:04:52 -05:00
Daniel Agar 7f5fae91b0 boards: mro ctrl zero f7 fix default power module calibration 2021-01-12 16:51:05 -05:00
Jaeyoung-Lim 16b1b220fd Fix roslaunch multivehicle regression caused by #16497 2021-01-12 21:19:36 +01:00
Beat Küng daaf8b61dc drivers: remove ism330dlc
not used anymore
2021-01-12 09:55:59 -05:00
Beat Küng 9f5dee2ecf v5x/v6x: update IMU sensors (remove ISM330DLC) 2021-01-12 09:55:59 -05:00
Daniel Agar 48f125f150 estimated IMU bias preflight checks
- commander preflightcheck use estimator_sensor_bias message instead of EKF state index magic number
 - ekf2 publish estimated bias limits in estimator_sensor_bias
 - preflightcheck only error if bias estimate exceeds half of configured limit (delete COM_ARM_EKF_AB and COM_ARM_EKF_GB parameters)
2021-01-12 09:09:42 +01:00
TSC21 7c95e99156 tools: make sure that uORB type names found as part of field names are not capitalized as ROS types 2021-01-12 09:05:59 +01:00
Daniel Agar cb74cb8692 boards: enable CONFIG_ARMV7M_LAZYFPU everywhere 2021-01-12 09:04:38 +01:00
Daniel Agar abec2bd8df msg: estimator_status_flags shorten fields
- previously this message exceeded the logger total field length (1500 bytes)
2021-01-11 11:49:51 -05:00
Daniel Agar 04f9ada500 ekf2: selector improve fallback selection when the primary becomes unhealthy
- if an ekf instance becomes unhealthy prefer switching to the next best healthy instance on a different IMU
2021-01-11 09:38:26 -05:00
Daniel Agar 967d35a6b6 rate limit most parameter_update subscriptions
- parameter updates can be quite expensive because they trigger nearly all modules to reload all of their parameters immediately
 - limit modules from updating faster than once per second
2021-01-10 21:09:15 -05:00
Daniel Agar 70e503cb91 rotation: use Dcmf for all rotations that aren't direct swaps
- increase optimization to ${MAX_CUSTOM_OPT_LEVEL} (max per board)
2021-01-10 18:08:41 -05:00
TSC21 06b733bb86 msg: rtps: improve verbosity when the the client is not capable of parsing a specific ID 2021-01-10 22:22:22 +01:00
TSC21 3f1c303b16 msg: rtps: improve verbosity when the the agent is not capable of parsing a specific ID 2021-01-10 22:22:22 +01:00
bazooka joe 9b9163813d avoid re-initiate RTL or land in battery emergency
if the mode is already running
2021-01-10 21:19:52 +01:00
Nicolas de Palezieux 6260c164e7 fmu v4: make starting mavlink on WIFI port configurable and make it start by default 2021-01-10 21:16:02 +01:00
Nicolas de Palezieux 653b7c0007 fmu v4: add option to run DShot telemetry on UART usually used for the ESP WIFI module 2021-01-10 21:16:02 +01:00
Matthias Grob 3cc8e7a210 commander_params: Make multicopter only COM_RC_OVERRIDE more visible 2021-01-10 21:12:09 +01:00
TSC21 cef3d36af2 simulator: delete PublicationMulti ptrs for sensor_gps 2021-01-10 19:58:54 +01:00
Daniel Agar f73d93ef6c ekf2: selector improve status reporting
- publish estimator_selector_status at minimal rate or immediately on change
 - log all estimator_selector_status updates
2021-01-10 19:25:53 +01:00
Matthias Grob 2fc212e064 geofence_params: clarify EKF vs baro altitude source 2021-01-10 18:40:58 +01:00
Hamish Willee d5c8d0a233 GF_ALTMODE: Update in line with Lorenz feedback 2021-01-10 18:40:58 +01:00
Hamish Willee d43444fce7 geofence: GF_ALTMODE clarification 2021-01-10 18:40:58 +01:00
Muesli_Reep fe7908feb0 Simulator: Added remote host option (#15443)
* Added an option to the Simulator module to connect to remote Gazebo servers.

This is usefull when the Gazebo simulation is running on a different host than the PX4 instance.
For example, we are running instances of PX4 with a companion application in multiple Dockers, for swarming simulations, which then connect to a remote Gazebo server.

A "-t" input argument has been added and can be called from the rcS startup script as: simulator start -t "192.168.178.122" $simulator_tcp_port

* _tcp_remote_ipaddr defaults to nullptr. This way testing against nullptr it can be determined if localhost or remote host is desired by the user.
* Documented the option in usage().

Signed-off-by: Peter Blom <peterblom.mail@gmail.com>
2021-01-10 18:37:37 +01:00
Daniel Agar 763c3b8fda boards: start enabling multi-EKF by default on F7/H7 2021-01-10 17:56:34 +01:00
Jaeyoung-Lim b3257c0bf2 Support relative altitude for offboard global position setpoints
Previously the coordinate_frame flag for setpoint_target_global_int message was not handled, resulting in the vehicle to not handle altitude correctly. This commit handles the relative altitude correctly.
2021-01-10 17:54:53 +01:00
Daniel Agar 662f177830 ekf2: multi instance numbering consistent with uORB publication instances 2021-01-09 13:20:26 -05:00
Daniel Agar c3fc96fd42 uORB::PublicationMulti add get_instance() 2021-01-09 13:20:26 -05:00
PX4 BuildBot 0398a936e3 Update submodule ecl to latest Sat Jan 9 16:06:23 UTC 2021
- ecl in PX4/Firmware (c6af260a41): https://github/commit/c212975abe83bf462bc512288ba30358f9a17865
    - ecl current upstream: https://github/commit/99575d73e10aad06eb7d5b6415ea2db4151c5045
    - Changes: https://github/compare/c212975abe83bf462bc512288ba30358f9a17865...99575d73e10aad06eb7d5b6415ea2db4151c5045

    99575d7 2021-01-09 Paul Riseborough - EKF: Add bad accel bias checking for EV and range finder height use cases
ff3c0a6 2021-01-08 Paul Riseborough - EKF: Fix bug preventing recovery from bad delta velocity bias estimates
c25c97f 2021-01-08 priseborough - [AUTO COMMIT] update change indication
9641810 2021-01-08 Paul Riseborough - test: Allow for larger vel variance growth due to dvel bias variance
1b1c049 2021-01-08 Paul Riseborough - test: Update unit test to match expected behaviour
dd259a2 2021-01-07 Paul Riseborough - EKF: Don't modify accel bias states and variances when inhibited
3e1f2d8 2021-01-07 Paul Riseborough - EKF: Set dvel bias variance to stored value when state is inactive
2021-01-09 12:57:25 -05:00
Daniel Agar c6af260a41 log_message increase queue depth 2->4 2021-01-09 11:04:32 -05:00
Jaeyoung-Lim d42e57a066 Update sitl_gazebo to latest
This PR updates sitl_gazebo to latest
2021-01-08 21:33:22 -05:00
Daniel Agar b9a721726d sensors/vehicle_magnetometer: respect calibration offset update success
- the magnetometer calibration offset setter returns false if the new offset change is negligible
2021-01-08 15:34:48 -05:00
Mohamed Abdelkader Zahana 80dd841cad Update launch files to enable multi-video stream in SITL (#16497)
* Update launch files to support multi-video stream in SITL

* Pass extra args to jinja_gen.py inside gazebo_sitl_multiple_run.sh to enable multi-video streaming
2021-01-08 19:29:47 +01:00
Silvan Fuhrer 706f806943 VTOL: standard VTOL and Tiltrotor manual MC throttle during transition
This sets the throttle of the Multicopter actuators to the throttle stick position
while in Stabilized, Acro or Manual mode.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-08 10:28:00 +01:00
xdwgood 802c68a62e Do not run transition flight task when not enable altitude control 2021-01-08 10:28:00 +01:00
Daniel Agar bf330a51b2 sensors/vehicle_magnetometer: reduce offset update message length to fit 2021-01-08 01:22:31 -05:00
Thies Lennart Alff eb60479e4c UUV introduce param to skip controller (#15706)
* added skip_ctrl param to uuv

* fixed formatting
2021-01-08 06:50:40 +01:00
PX4 BuildBot 064511c2df Update submodule flightgear_bridge to latest Fri Jan 8 00:39:45 UTC 2021
- flightgear_bridge in PX4/Firmware (168468c12a): https://github.com/PX4/PX4-FlightGear-Bridge/commit/44b51d5b1ccc6679e82090e24177ed73a3d4f5de
    - flightgear_bridge current upstream: https://github.com/PX4/PX4-FlightGear-Bridge/commit/7c2c623da9f5dcb3f01d32830af1a2ed958de363
    - Changes: https://github.com/PX4/PX4-FlightGear-Bridge/compare/44b51d5b1ccc6679e82090e24177ed73a3d4f5de...7c2c623da9f5dcb3f01d32830af1a2ed958de363

    7c2c623 2021-01-06 slimonslimon - Switch Ign-math to Eigen3 (#5)
2021-01-07 21:21:02 -05:00
PX4 BuildBot 168468c12a Update submodule ecl to latest Thu Jan 7 12:50:52 UTC 2021
- ecl in PX4/Firmware (c999734463c9b23c6b56670d5242ca4496f9e6ef): https://github/commit/03fed323ab950125114eb34309d3a79119e572ee
    - ecl current upstream: https://github/commit/c212975abe83bf462bc512288ba30358f9a17865
    - Changes: https://github/compare/03fed323ab950125114eb34309d3a79119e572ee...c212975abe83bf462bc512288ba30358f9a17865

    c212975 2021-01-06 bresch - rng height: reset to baro using common logic
2021-01-07 12:08:21 -05:00
Daniel Agar 88f8da27ef save learned mag bias per sensor (Multi-EKF support)
- handle saving the mag bias per sensor (across all estimator instances using that mag) in sensors/vehicle_magnetometer
 - this is now saving back to the actual mag calibration CAL_MAGn_OFF{X,Y,Z}
 - ekf2 reset mag mag bias on any magnetometer or calibration change
 - use Kalman filter scheme to update stored mag bias parameters using all available bias estimates for that sensor

Co-authored-by: Paul Riseborough <gncsolns@gmail.com>
2021-01-07 09:54:13 -05:00
Matthias Grob 537ee5b19b FlightTaskOrbit: smooth yaw like in missions 2021-01-07 13:31:05 +01:00
Matthias Grob 44606ca872 FlightTaskOrbit: further simplify circling yaw setpoint calculation
The whole angle adding and pi wrap was just necessary because the
correct atan2 arguments were never completely thought through.
2021-01-07 13:31:05 +01:00
Matthias Grob f435bea57c state_machine_helper: orbit failsafe just with data link loss
RC is like the comment says not required.
2021-01-07 13:31:05 +01:00
Matthias Grob 6b8fa417e1 SlewRate: Add SlewRateYaw handling [-pi,pi] wraps 2021-01-07 13:31:05 +01:00
Daniel Agar 6c9072720e invensense/icm42688p: use full 20 bit data, increase ODR, disable all filters 2021-01-06 17:03:39 -05:00
Jaeyoung-Lim d2b0f63e1f Handle offboard mode with acceleration setpoints
The case when acceleration setpoints were being passed in offboard mode was triggering control_climbrate_mode. This prevented the vehicle from taking off, since it made the vehicle skip the rampup phase of the takeoff
This commit fixes this by handling the case properly
2021-01-06 20:38:18 +01:00
garfieldG 3fb8f5df62 drivers/lsm303agr: fixed bug incorrectly assembling signed 16 bit integer from bytes 2021-01-05 21:37:08 -05:00
PX4 BuildBot 01e3f0d586 Update submodule matrix to latest Tue Jan 5 12:40:51 UTC 2021
- matrix in PX4/Firmware (fd97e28019fa9c665d9b3c6995098dd51b4ab022): https://github/commit/15e54ceda176f05e1ae38e71692d15cafb9e3a62
    - matrix current upstream: https://github/commit/054f8b12f4da79767df6e05bb1d2cc8d679b99f3
    - Changes: https://github/compare/15e54ceda176f05e1ae38e71692d15cafb9e3a62...054f8b12f4da79767df6e05bb1d2cc8d679b99f3

    054f8b1 2021-01-04 Julian Kent - Use a single inverse implementation for a single matrix size
2021-01-05 19:24:42 -05:00
PX4 BuildBot ff82911d86 Update submodule ecl to latest Tue Jan 5 12:40:47 UTC 2021
- ecl in PX4/Firmware (824f78466ac4e32aecd6bda785e95eb348e1b31e): https://github/commit/78ce46f00777f07d24c31bdc5e2edb203be2c0f4
    - ecl current upstream: https://github/commit/03fed323ab950125114eb34309d3a79119e572ee
    - Changes: https://github/compare/78ce46f00777f07d24c31bdc5e2edb203be2c0f4...03fed323ab950125114eb34309d3a79119e572ee

    03fed32 2021-01-05 Paul Riseborough - EKF: Fix formatting
31fca9c 2021-01-05 Paul Riseborough - EKF: Update GPS loss message
c65cf13 2020-12-15 Paul Riseborough - EKF; Treat combined sideslip and airspeed as a horizontal aiding source
211c84c 2021-01-04 bresch - Rng finder unit test: cover "un-stuck" logic
2021-01-05 19:23:25 -05:00
Paul Riseborough 64ed96bd95 ekf2: Correct airspeed used by EKF for calibration errors 2021-01-05 19:22:53 -05:00
Daniel Agar b94e346488 Update submodule sitl_gazebo to latest Tue Jan 5 12:40:40 UTC 2021 (#16493)
- sitl_gazebo in PX4/Firmware (850d0bc588): https://github.com/PX4/PX4-SITL_gazebo/commit/054e0a1be67b715ca1802397082e7814a1427f52
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/44de4acc3f9cf9e44db58006f99ea190d217017a
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/054e0a1be67b715ca1802397082e7814a1427f52...44de4acc3f9cf9e44db58006f99ea190d217017a

    44de4ac 2021-01-02 Lorenz Meier - Update README.md

Co-authored-by: PX4 BuildBot <bot@px4.io>
2021-01-05 19:34:11 +01:00
Silvan Fuhrer 850d0bc588 vtol_type: remvoe const from function declaration
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-04 15:32:00 +01:00
RomanBapst 0871f0f52d vtol: refactor of maximum pwm value settings for main and alternate motors
- main motors are the ones which are meant to be used as propulsion in fw mode
- alternate motors are the ones usually meant to be switched off in fw mode

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 15:32:00 +01:00
Daniel Agar bc1e9f72f7 Jenkins hardware temporarily remove px4_fmu-v2 2021-01-04 09:30:47 -05:00
Silvan Fuhrer 92634e7549 RTL: during climb, set NAV_CMD_WAYPOINT for RW modes, NAV_CMD_LOITER_TO_ALT for FW
Do not use LOITER_TO_ALT for rotary wing mode as it would then always climb to
at least MIS_LTRMIN_ALT, even if current clib altitude is below
(e.g. RTL immediately after take off)

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-04 11:58:16 +01:00
Silvan Fuhrer 0b86c11c66 FW POS: remove setting of curr_sp to LOITER if next wp invalid
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-04 11:58:16 +01:00
Silvan Fuhrer 55a1d090a1 RTL: use NAV_CMD_LOITER_TO_ALT for Climb state
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-04 11:58:16 +01:00
RomanBapst 68f27ba7b7 navigator: deactivate line following after backt-ransition and before landing
- especially when there are strong winds it's better to just go straight
to the landing point instead of trying to follow the planned path

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst b63f756745 navigator: don't execute land pattern if vtol in rotary wing mode
- if vtol and in rotary wing mode then don't execute the mission landing
because it's designed to be flow as a fixed wing
- if vtol and in rotary wing mode and mission land is available then fly directly
to landing point and don't go home!

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst 6c3f413379 mission: reset work_item_type during mission inactivation
- this fixes a race condition which happens when an RTL is triggered
during the final approach of a mission landing. In that case the mission inactive
method is never called.

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst b63f202b3c various fixed for bugs encountered during testing
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst cfb3cdc82f rtl: use math namespace
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst 94d3ab28ee rtl: fixed computation of return altitude when mission landing is available
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst 12875f7869 mission: when land start marker present, look for loiter to altitude item
instead of using the previous waypoint as landing target
- the previous waypoint could be miles away

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst e0c394a00b mission: fixed bug in computation of landing altitude
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst a4a03e86da mission: be more intelligent about saying that we are on a mission landing
- previously the decision of being on a landing pattern was taken by just
looking at the current mission index. However, even if the current mission
index indicates a landing pattern the vehicle could be at an arbitrary location, far
from being established on the pattern.

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst 29c3ce6d5d reworked RTL cone implementation
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst dad5ce1e41 rtl: set proper acceptance radius for move_to_land item
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst 6ff95ae645 RTL: implement proper RTL sequence for VTOL
- descend to RTL descend altitude
- transition
- move to land waypoint
- loiter and then land

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst 197a21a22e rtl: for fixed wing (also vtol) make the descend state of RTL use type
NAV_CMD_LOITER_TO_ALT

- this allows vtol to track the loiter circle during the transition instead
of trying to fly to the landing position

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst bb2826ad27 rtl: for vtol first desend down to RTL descend altitude before doing a transition
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
RomanBapst e81d5daa66 rtl: if very close to home then do not descend if higher than RTL_DESCEND_ALT
before reaching home

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-04 11:58:16 +01:00
Silvan Fuhrer 7c727edc3f Simple mixer: add output slew rate
This adds the option to limit the rate of change (slew rate) of an output that's mixed by a simple mixer.
To enable it, a positive number has to be added at the end (6th number) of the output scaler line of the mixer,
specifying the min rise time of this output.
E.g. O:      10000  10000      0 -10000  10000 20000 for a rise time of 2s, resp. a max slew rate of 0.5s^-1.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-01-04 11:32:22 +01:00
Daniel Agar 98cff94702 px4_work_queue: directly support SITL lockstep
- the purpose is to ensure that every WorkItem (and WorkItems scheduled
by WorkItems) is allowed to run to completion every step
 - per workqueue register a lockstep component whenever a work item is
added (if not already registered)
 - once the work queue is empty unregister component
2021-01-04 09:38:05 +01:00
PX4 BuildBot 8c71ecd97e Update submodule ecl to latest Sat Jan 2 12:39:29 UTC 2021
- ecl in PX4/Firmware (03925cc70fd13c15a5dfe8ecc5653b91098ac68d): https://github/commit/18f334f4dbca61e3bcd1743c22cf820b5a8ff7ef
    - ecl current upstream: https://github/commit/78ce46f00777f07d24c31bdc5e2edb203be2c0f4
    - Changes: https://github/compare/18f334f4dbca61e3bcd1743c22cf820b5a8ff7ef...78ce46f00777f07d24c31bdc5e2edb203be2c0f4

    78ce46f 2020-12-19 Kamil Ritz - Removing Matlab derivation
2021-01-02 11:54:56 -05:00
RomanBapst d502292d07 mission: for vtol takeoff don't use next waypoint as target during transition
- this caused the navigator to use the next waypoint (after the vtol takeoff item)
to be used as target during the transition. If the altitude of that waypoint
was much higher than the takeoff altitude then there were FOH effects
after the transition which caused the vehicle to first descend before
climbing again.

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2021-01-02 02:18:59 +01:00
PX4 BuildBot a1b81df445 Update submodule sitl_gazebo to latest Fri Jan 1 12:39:16 UTC 2021
- sitl_gazebo in PX4/Firmware (a444d2610a): https://github.com/PX4/PX4-SITL_gazebo/commit/ca6c738fff30c516a5d2b9866ad268826a9ff0ff
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/054e0a1be67b715ca1802397082e7814a1427f52
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/ca6c738fff30c516a5d2b9866ad268826a9ff0ff...054e0a1be67b715ca1802397082e7814a1427f52

    054e0a1 2021-01-01 pjdewitte - Jinja generation: add protection against accidental overwriting (#682)
869225e 2020-12-31 JaeyoungLim - Fix lightsource for high fidelity worlds (#680)
2021-01-01 21:57:05 +01:00
Lorenz Meier 0bdae5745a Update dsm.cpp
Fix documentation comment (reported by @Roman-, thanks!)
2021-01-01 15:30:25 +01:00
Lorenz Meier 9409122638 RC tests: Add new test file
This file is using a PX4IO-bound receiver on a DX9
2021-01-01 14:26:36 +01:00
Lorenz Meier 8d6239f11f PX4IO: Use DSM frame drops
These will now be reported the same as on SBUS.
2021-01-01 14:26:36 +01:00
Lorenz Meier 47fcf97442 DSM: Report frame drops
Frame drops were measured but not reported on PX4IO.
2021-01-01 14:26:36 +01:00
Lorenz Meier 00e6d11dfa PX Uploader: Disable windowed mode
The windowed mode has been added for Windows targets originally. It gets very often incorrectly detected and slows down flashing considerably. This even applies to serial links. We are disabling it now in most circumstances.
2021-01-01 14:26:36 +01:00
Daniel Agar 95dd2f7e8d rc/dsm: remove system field check, add new validity checks
- unfortunately we can't depend on the system field due to potential
external binding and non-genuine Spektrum equipment
 - reject any DSM frame with duplicate channels
 - add 16 channel mask
 - tighten valid PWM range 990-2010us (±100% travel is 1102-1898µs)
 - update RCTest rejected frame count
2021-01-01 14:26:36 +01:00
Daniel Agar d7b89ecc86 boards: px4/fmu-v5 disable px4io in rc.board_defaults
- avoid keeping this kind of logic in the common rcS
2021-01-01 14:12:26 +01:00
Lorenz Meier a444d2610a Spektrum passive power: Only use if present 2020-12-31 13:22:52 +01:00
Lorenz Meier 641cc33d79 RC input: Always report DSM state 2020-12-31 13:22:52 +01:00
Lorenz Meier e85afb22a5 FMUv5: Default Spektrum power to passive 2020-12-31 13:22:52 +01:00
Lorenz Meier cc34d4601d FMUv5: Support passive power controls
This ensures that FMU-side power controls are not interfering with IO-side power controls of DSM receivers if they happen to be OR-ed in the schematics
2020-12-31 13:22:52 +01:00
Lorenz Meier 6529e1444f RC input: Better monitoring
The output is now less confusing in terms of which protocol is currently active.
2020-12-31 13:22:52 +01:00
Lorenz Meier af28a298e5 DSM driver: Add option for passive power controls 2020-12-31 13:22:52 +01:00
Lorenz Meier 4237c8be25 Commander: Do not acknowledge binding
This is now done in the respective modules directly and based on implementation and execution state.
2020-12-31 13:22:52 +01:00
Lorenz Meier 2d1551e5bf PX4IO: Acknowledge binding 2020-12-31 13:22:52 +01:00
Lorenz Meier 8445a08bff RC input: Acknowledge binding (or indicate that feature is not implemented) 2020-12-31 13:22:52 +01:00
Lorenz Meier 44bdd5456f PX4IO: Bind if not armed
DSM binding was disabled before if safety was off, which on a lot of multicopters is today the default. The logic is now checking instead for wether the system is armed.
2020-12-31 13:22:52 +01:00
Lorenz Meier a34e57a4cc Simulator: Increase stack, publication affinity
This commit increases the send thread stack size and changes the thread affinity of the lockstep clocking topic. It also improves verbosity in case error states occur.
2020-12-31 01:05:30 +01:00
Lorenz Meier fda63f802e Tone alarm: Adjust log levels
The earlier log levels represented normal operation scenarios as errors, this aligns the log levels.
2020-12-31 01:05:30 +01:00
Lorenz Meier 3cc53f551d MAVSDK tests: Use full system timeout off
Depending on loop iterations for timeouts is not accurate, as usleep behavior depends on the system load and asking for a 0 ms sleep can potentially return immediately.
2020-12-31 01:05:30 +01:00
Lorenz Meier e27d80abc4 Camera feedback: Indicate success
If the feedback module is loaded then we want to provide capture feedback.
2020-12-30 23:36:47 +01:00
Daniel Agar 404f74f996 boards: mro/pixracerpro add flight_mode_manager 2020-12-30 10:25:08 -05:00
RomanBapst fe2e299046 FlightModeManager: small rebase change
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2020-12-30 10:25:08 -05:00
Matthias Grob e92795b474 Temporary logging addition to debug CI 2020-12-30 10:25:08 -05:00
Matthias Grob fafbb687d8 FlightModeManager: fix integral reset on ground
This information could also be used for yaw and integral
resets of the lower level controllers.
2020-12-30 10:25:08 -05:00
Matthias Grob 7de288877a MulticoperPositionControl: 3rd pass get rid of zombie members 2020-12-30 10:25:08 -05:00
Matthias Grob 62ada2e2dc FlightModeManager: restore weathervane calls
I had to do an extra subscription to the vehicle attitude.
I don't know how to test this.
2020-12-30 10:25:08 -05:00
Matthias Grob aa888223f0 FlightModeManager: fix takeoff state in stabilized mode 2020-12-30 10:25:08 -05:00
Matthias Grob 8edb06e94f FlightModeManager: make sure emergency failsafe works 2020-12-30 10:25:08 -05:00
Matthias Grob 8329208b84 FlightModeManager: fix takeoff ramp from zero 2020-12-30 10:25:08 -05:00
Matthias Grob 88c274b3cd MulticopterPositionControl: 2nd pass to move to FlightModeManager 2020-12-30 10:25:08 -05:00
Matthias Grob f52bad87e2 mc_pos_control: separate out flight_tasks (into FlightModeManager) 2020-12-30 10:25:08 -05:00
Matthias Grob 7545249215 Add flight_mode_manager to all targets with mc_pos_control 2020-12-30 10:25:08 -05:00
Matthias Grob fa7170bc4f Add FlightModeManager
to separate out setpoint generation from controllers
2020-12-30 10:25:08 -05:00
Daniel Agar 49d4cc7d5b commander: CMD_NAV_LAND/CMD_NAV_PRECLAND reply RESULT_ACCEPTED unless transition is denied 2020-12-30 12:05:41 +01:00
Benjamin Linne 80068093d6 add esc_battery module to modalai/fc-v1 build 2020-12-29 23:41:22 -05:00
Daniel Agar 91f5f26618 commander: main_state_transition call trivial style fixes 2020-12-30 00:26:14 +01:00
Daniel Agar 4f62355dec msg: new estimator_status_flags message for more accessible ekf2 status logging
- log all estimator (ekf2) flags as separate booleans in a new dedicated low rate message (only publishes at 1 Hz or immediately on any change)
 - this is a bit verbose, but it avoids the duplicate bit definitions we currently have across PX4 msgs, ecl analysis script, flight review, and many other custom tools and it's much easier for casual log review in FlightPlot, PlotJuggler, csv, etc
 - for compatibility I've left estimator_status filter_fault_flags, innovation_check_flags, and solution_status_flags in place, but they can gradually be removed as tooling is updated

Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2020-12-29 11:27:21 -05:00
Lorenz Meier ddc1f964d2 Mac OS CI: Harden against intermittent install failures 2020-12-28 23:43:57 +01:00
Lorenz Meier 565da15f2f MAVSDK test: Increase timeout 2020-12-28 22:04:08 +01:00
Lorenz Meier 7510e6ba0a FMUv2: Exclude rarely used configurations 2020-12-28 21:02:03 +01:00
Lorenz Meier 53711926ab FMUv2: Exclude specialized fixed wing configs
The FMUv2 users can default back to generic configs for those.
2020-12-28 21:02:03 +01:00
Lorenz Meier aa28c3bd3c VTOL airframes: Exclude FMUv2
This excludes FMUv2 targets, since VTOL is already disabled on FMUv2.
2020-12-28 21:02:03 +01:00
Lorenz Meier 3d809134f5 Updating SITL gazebo (Mac OS fixes) 2020-12-28 20:41:48 +01:00
Daniel Agar adb98d5702 mavlink: move HIL_ACTUATOR_CONTROLS to separate streams header 2020-12-28 11:09:46 +01:00
Daniel Agar 3b20310e9c mavlink: move POSITION_TARGET_GLOBAL_INT to separate streams header 2020-12-28 11:09:46 +01:00
Daniel Agar 672a1c90aa mavlink: move POSITION_TARGET_LOCAL_NED to separate streams header
- position type_mask
2020-12-28 11:09:46 +01:00
Daniel Agar 6b1d02feb7 mavlink: move RC_CHANNELS to separate streams header 2020-12-28 11:09:46 +01:00
Daniel Agar 48be6962d1 mavlink: move MANUAL_CONTROL to separate streams header 2020-12-28 11:09:46 +01:00
Daniel Agar 629d03b684 mavlink: move TRAJECTORY_REPRESENTATION_WAYPOINTS to separate streams header 2020-12-28 11:09:46 +01:00
Daniel Agar 5762c3b356 mavlink: move NAV_CONTROLLER_OUTPUT to separate streams header 2020-12-28 11:09:46 +01:00
Daniel Agar 9f57df75e8 remove rotation 41 (ROLL_270_YAW_180)
- duplicate of 31 (ROLL_90_PITCH_180)
2020-12-28 11:07:08 +01:00
Daniel Agar a66cb0cbaf mavlink: check TX buffer before processing command ack 2020-12-28 11:05:42 +01:00
bazooka joe 8d5813994f format smart battery serial number as string on mavlink
according to change on mavlink protocol message
formatted as 'dd/mm/yy-123456'
2020-12-28 11:04:54 +01:00
Daniel Agar ceadcd74d0 mavlink: CAMERA_TRIGGER stream check free tx buf before send 2020-12-28 11:03:53 +01:00
Daniel Agar ae706537b8 mavlink: CAMERA_IMAGE_CAPTURED stream check free tx buf before send 2020-12-28 11:03:53 +01:00
Daniel Agar 27b631e827 mavlink: ADSB_VEHICLE stream check free tx buf before send 2020-12-28 11:03:53 +01:00
Daniel Agar 0d72b47571 mavlink: COLLISION stream check free tx buf before send 2020-12-28 11:03:53 +01:00
Daniel Agar dcb897307d mavlink: HEARTBEAT stream check free tx buf before send 2020-12-28 11:03:53 +01:00
Nicolas MARTIN e06d218ff2 commander: disable arm_auth request for prearm status continuous publication 2020-12-27 16:23:05 -05:00
Daniel Agar 02a08c42b7 tests: perf don't bother printing all perf counters 2020-12-27 15:29:45 -05:00
Daniel Agar 12bf035642 uORB: tests limit latency to only orb_test_medium and remove some unnecessary output 2020-12-27 15:29:45 -05:00
Daniel Agar 409ea2ac02 mavlink: parameters manually mark active minimal QGC set on first send 2020-12-27 13:54:03 -05:00
Lorenz Meier 4b0d8efbc1 Commander: move static overload_start to class 2020-12-27 13:44:32 -05:00
Jaeyoung-Lim 4f30037980 Add yosemite world as SITL target for gazebo
This commit adds yosemite world as a SITL target for gazebo
2020-12-27 12:53:25 -05:00
Daniel Agar 092060cde2 posix: improve error out for mlockall() and pthread_create
- add strerror
 - mlockall skipped in lockstep builds (ENABLE_LOCKSTEP_SCHEDULER)
2020-12-27 12:43:32 -05:00
Daniel Agar 48da0055a1 boards: add initial mRo Pixracer Pro (M10064C) support 2020-12-27 12:12:15 -05:00
PX4 BuildBot aa54db42ed Update submodule ecl to latest Sat Dec 26 12:39:53 UTC 2020
- ecl in PX4/Firmware (6a278fb230365aaf369956878ee08c3161ae739d): https://github/commit/df7f261e038aa80b07a91857f2f952280938bfc6
    - ecl current upstream: https://github/commit/18f334f4dbca61e3bcd1743c22cf820b5a8ff7ef
    - Changes: https://github/compare/df7f261e038aa80b07a91857f2f952280938bfc6...18f334f4dbca61e3bcd1743c22cf820b5a8ff7ef

    18f334f 2020-12-25 Mathieu Bresciani - flow: add unit test for yaw motion (#950)
2020-12-26 14:39:47 -05:00
Dan George 051bcf75b3 Fix PX4_CMAKE_BUILD_TYPE=Debug configuration
Set CMAKE_RUNTIME_OUTPUT_DIR_DEBUG & _RELEASE to match
CMAKE_RUNTIME_OUTPUT_DIR as is already done in top level CMakeLists.txt.

Fixes Issue 16445 - px4-alias.sh: not found

Co-authored-by: Dan George <dgeorge@anduril.com>
2020-12-24 19:02:07 -05:00
Daniel Agar 92afe45f7f vtol_att_control: improve readability of fill_actuator_outputs()
- vtol standard pass through landing gear for MC and flaps for FW
2020-12-24 09:29:17 -05:00
Silvan Fuhrer 9849ff4a9c Standard VTOL: set idle PWM during backtransition
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-12-24 09:25:08 +01:00
Silvan Fuhrer 7e01938341 VTOL: rename class variable flag_idle_mc to _flag_idle_mc
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-12-24 09:25:08 +01:00
Ramón Hernán Roche Quintana 5c93403db7 Tools: Python >3.7 requires the wheel packge
currently installing pymavlink witouth the wheel package results in an
error when using Python 3.7 or later

https://github.com/ArduPilot/pymavlink/issues/486
2020-12-23 23:56:05 -05:00
Lorenz Meier 70c372329c MAVLink FTP: Update implementation according to updates specs
The MAVLink specs for CreateFile in MAVLink FTP were updated on Dec 23, 2020 (today) with a behavior change to truncate a file if it already existed, following the UNIX standard behavior: https://pubs.opengroup.org/onlinepubs/9699919799/functions/creat.html. This change is tracking that spec change. While it is a functional change, the limited usage of the FTP protocol and the fact that implementations should not rely on error states to determine wether to truncate a file or not makes this a viable change.
2020-12-23 13:45:01 +01:00
PX4 BuildBot 7861377e20 Update submodule devices to latest Tue Dec 22 00:39:39 UTC 2020
- devices in PX4/Firmware (68b6cca3bc4cd3c70ab1ea5c439e5941370e801e): https://github/commit/86b09d332041acebc35c9a0476d8dfc2752dfe39
    - devices current upstream: https://github/commit/9282d3d73391859f51c759a343a052dfb1be02e0
    - Changes: https://github/compare/86b09d332041acebc35c9a0476d8dfc2752dfe39...9282d3d73391859f51c759a343a052dfb1be02e0

    9282d3d 2020-12-21 Silvan Fuhrer - ubx: change uart2_baudrate to 230400
2020-12-22 07:43:50 +01:00
Silvan Fuhrer a88b7fc517 ROMFS: Tiltrotor SITL: improve tuning and remove unnecessary params from config
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-12-20 21:25:50 -05:00
PX4 BuildBot 3ff7cd94dd Update submodule ecl to latest Mon Dec 21 00:39:54 UTC 2020
- ecl in PX4/Firmware (caa35af3961aa96e2549a36f1fddb1a10ee802b2): https://github/commit/a8e0e82858318042500f96f5ee882c638f201426
    - ecl current upstream: https://github/commit/df7f261e038aa80b07a91857f2f952280938bfc6
    - Changes: https://github/compare/a8e0e82858318042500f96f5ee882c638f201426...df7f261e038aa80b07a91857f2f952280938bfc6

    df7f261 2020-12-20 Kamil Ritz - Add missing const modifier
2020-12-20 21:24:52 -05:00
PX4 BuildBot ec79361548 Update submodule sitl_gazebo to latest Mon Dec 21 00:39:43 UTC 2020
- sitl_gazebo in PX4/Firmware (5868463d06): https://github.com/PX4/PX4-SITL_gazebo/commit/563f0876a52d5c0fba1b7cd1aa420c613ec7025b
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/4043287bbe07a9d091d579b755796e70d45058e8
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/563f0876a52d5c0fba1b7cd1aa420c613ec7025b...4043287bbe07a9d091d579b755796e70d45058e8

    4043287 2020-12-20 Silvan Fuhrer - tiltrotor: increase wing area to 0.5 per side (#678)
f004811 2020-12-20 JaeyoungLim - Update mavsdk version for SITL tests (#673)
2020-12-20 21:23:34 -05:00
PX4 BuildBot 5868463d06 Update submodule matrix to latest Fri Dec 18 12:38:33 UTC 2020
- matrix in PX4/Firmware (a505e82391bdb9d81c03d45919f2158cee6baa8c): https://github/commit/ea43303c1cd55b0da8e152373b49dd2d5e381772
    - matrix current upstream: https://github/commit/15e54ceda176f05e1ae38e71692d15cafb9e3a62
    - Changes: https://github/compare/ea43303c1cd55b0da8e152373b49dd2d5e381772...15e54ceda176f05e1ae38e71692d15cafb9e3a62

    15e54ce 2020-11-04 Julian Kent - Rework rank-detection tolerance in pseudoinverse
d9a5e3d 2020-11-04 Julian Kent - Add test for new cutoff threshold
2020-12-18 10:15:20 -05:00
JaeyoungLim 39c585ac97 Enable SITL tests for macos (#16329)
This commit enables SITL testing on macOS
2020-12-18 20:31:51 +09:00
jaeyoung c8d18c2719 Fix tiltrotor model for sitl_gazebo 2020-12-18 12:27:07 +01:00
bresch c253badba4 HTE: remove dist_bottom validity check
Without range finder, the validity flag goes to false quite quickly and
if can be that a vehicle never starts HTE is the takeoff is too slow.
In this specific context of takeoff detection, since
the exact value is not important, we can safely ignore the validity flag.
2020-12-18 12:05:22 +01:00
bresch 690c1158ad HTE: do not update the estimator during fast up/down motions
Drag and prop wash effects produce significant forces at high speed
that can bias the estimator when applied for an extended period of time
2020-12-18 12:05:22 +01:00
bresch 39251daf28 HTE: pull status from class instead of returning struct 2020-12-18 12:05:22 +01:00
bresch 652cc4350e HTE: empty braces initialization of struct 2020-12-18 12:05:22 +01:00
bresch d532bc9555 HTE: only run in air
the _landed flag only is not enough to tell if the drone is still touching
the ground, so an additional check based on the altitude AGL is required.

to have this in_air detection correctly updated, the module needs to be
scheduled on the vehicle_local_position message as no setpoint is
produced in non-assisted modes.
2020-12-18 12:05:22 +01:00
Daniel Agar c05c213042 mavlink: ALTITUDE stream initialize local_pos 2020-12-18 08:32:04 +01:00
PX4 BuildBot 66b3562080 Update submodule ecl to latest Fri Dec 18 00:39:53 UTC 2020
- ecl in PX4/Firmware (dc358857c877ae01b922d84a6c6fffe6d8c46810): https://github/commit/1541e4b414fe63ec9d6c3077375db7e20c20ef4a
    - ecl current upstream: https://github/commit/a8e0e82858318042500f96f5ee882c638f201426
    - Changes: https://github/compare/1541e4b414fe63ec9d6c3077375db7e20c20ef4a...a8e0e82858318042500f96f5ee882c638f201426

    a8e0e82 2020-12-08 Daniel Agar - EKF: update mag LPF immediately
398fe15 2020-11-02 Daniel Agar - EKF: allow initialising without mag depending on configuration
1237087 2020-12-16 Daniel Agar - AlphaFilter add constructor that takes alpha and use in EKF
37e84b7 2020-12-16 Daniel Agar - README: fix zenodo badge (rename ecl -> PX4-ECL)
5ccb8b4 2020-12-15 Mathieu Bresciani - fakePosFusion: reset _last_known_posNE to current state when starting (#943)
9d22f14 2020-12-10 bresch - gps_alt: constrain var using 1.5 as a typical ratio of vacc/hacc
b0cf45e 2020-12-10 bresch - gps_alt: rename getGpsAltVar -> getGpsHeightVariance
62f2e26 2020-12-10 bresch - gps_alt: reset GPS alt variance usign helper function
f7bddda 2020-12-10 bresch - gps_alt: do not scale up reported gps vertical accuracy
02369cd 2020-12-10 bresch - gps_alt: extract measurement variance computation and saturation
2020-12-17 20:13:03 -05:00
PX4 BuildBot e5a00033f5 Update submodule matrix to latest Thu Dec 17 23:05:20 UTC 2020
- matrix in PX4/Firmware (788e6b9ad163f314ddd53a23f3705ca0018519f4): https://github/commit/a504b6e88152d88dba936bc74e449f2f281b84e2
    - matrix current upstream: https://github/commit/ea43303c1cd55b0da8e152373b49dd2d5e381772
    - Changes: https://github/compare/a504b6e88152d88dba936bc74e449f2f281b84e2...ea43303c1cd55b0da8e152373b49dd2d5e381772

    ea43303 2020-12-16 JacobCrabill - test/vector3: Add test for scalar +/- operators
158409a 2020-03-23 JacobCrabill - Vector3f: Add operator+/- for scalars
2020-12-17 19:05:46 -05:00
PX4 BuildBot 2a187a76d6 Update submodule sitl_gazebo to latest Thu Dec 17 23:05:03 UTC 2020
- sitl_gazebo in PX4/Firmware (90f61c2f9a): https://github.com/PX4/PX4-SITL_gazebo/commit/19981d61cfe656d2985fef5285b4a4d14f3be199
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/563f0876a52d5c0fba1b7cd1aa420c613ec7025b
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/19981d61cfe656d2985fef5285b4a4d14f3be199...563f0876a52d5c0fba1b7cd1aa420c613ec7025b

    563f087 2020-12-17 JaeyoungLim - Fix tiltrotor model (#675)
0e2d63a 2020-12-17 JaeyoungLim - Fix wind transmormations for motor model (#674)
e5d0d65 2020-12-13 JaeyoungLim - Update container versions for tests (#672)
bccb487 2020-12-12 BazookaJoe1900 - mavlink_interface: rename serial link related function to include 'serial' (#670)
2020-12-17 18:45:08 -05:00
Ramón Hernán Roche Quintana 90f61c2f9a Update submodule GPSDrivers to latest Wed Dec 16 18:45:08 UTC 2020
ubx: fix #63: NAV-SAT/ SVINFO parser bug https://github.com/PX4/PX4-GPSDrivers/commit/86b09d332041acebc35c9a0476d8dfc2752dfe39
2020-12-17 08:28:25 +01:00
Daniel Agar 74083d6bd1 optical_flow/paw3902: minor improvements
- verify register writes
 - cleanly reset on lighting mode changes as per the datasheet
 - perf counters for mode switches and other errors
 - cleanly reset on false motion detection
 - minimize sleep on reset
 - allowing setting custom rotation yaw angle directly on command line with -Y (ignoring SENS_FLOW_ROT)
 - enable LED output
2020-12-16 20:04:46 -05:00
Daniel Agar 43b4cf39bd sitl_gazebo build single threaded
- building sitl_gazebo in parallel within a parallel PX4 build isn't load balanced
2020-12-16 19:45:08 -05:00
Daniel Agar 4d30f327f9 Github Actions: skip Mavros tiltrotor mission for now (#16405) 2020-12-16 17:34:32 +01:00
Daniel Agar a152fb65cb parameters: remove unnecessary duplicated shutdown lock in param_save_default()
- param_export already takes the shutdown lock
2020-12-16 10:50:05 -05:00
Daniel Agar c7db0942ba sensors: vehicle_imu don't round measured accel and gyro sample rates 2020-12-16 10:12:27 -05:00
Daniel Agar bf5ee99952 sensors: acceleration always get accel rate from vehicle_imu_status
- sensor rate is used for control data low pass and notch filters
2020-12-16 10:12:27 -05:00
Daniel Agar 7038cb8518 sensors: angular_velocity always get gyro rate from vehicle_imu_status
- sensor rate is used for control data low pass and notch filters
2020-12-16 10:12:27 -05:00
Daniel Agar 336176b2f0 Mavlink FLIGHT_INFORMATION fix arming time (ms -> us) and add takeoff time
- fixes https://github.com/PX4/PX4-Autopilot/issues/16393
2020-12-16 09:38:05 -05:00
bresch b23d8244f0 ekf2: fix dist bottom constraint 2020-12-16 09:33:38 -05:00
Hamish Willee acc647c518 remove duplicate this in COM_HLDL_LOSS_T 2020-12-16 08:37:42 +01:00
Hamish Willee 4bc60cca69 remove more occurrences 2020-12-16 08:37:42 +01:00
Hamish Willee d58ee9400c system_params - remove duplicate text in param 2020-12-16 08:37:42 +01:00
Daniel Agar 8e14e13369 README.md update PX4/Firmware -> PX4/PX4-Autopilot 2020-12-15 20:27:03 -05:00
Robin Lilja aa244a098c Clarification of coordinate systems for sensors_* and vehicle_* messages (#16339)
Changed all 'NED' references to 'FRD'. Also cleaned up mixing of m/s/s and m/s^2 to use the latter. Corrected m/s/s to Pascals. Plus minor typos. Also made some minor cosmetic clean ups.

Co-authored-by: Robin <robin@Robins-MacBook-Pro-Work.local>
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com>
2020-12-15 09:18:05 +01:00
Mathieu Bresciani fdd1d6d244 Multicopter rounded turns (#16376)
* AutoLineSmoothVel: Implement l1-style guidance in turns
2020-12-14 13:04:01 +01:00
Julian Oes 9b065b4975 Update src/systemcmds/tests/test_dataman.c
Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2020-12-14 09:26:18 +01:00
Julian Oes 5cb1bb7731 systemcmds: fix dataman test 2020-12-14 09:26:18 +01:00
Julian Oes 1719ff9892 simulator: fix after px4_task_spawn_cmd change
argv[0] now contains the task name, so everything moves by one.
2020-12-14 09:26:18 +01:00
Julian Oes dba3c642d2 posix: set task name as argv[0] to match Nuttx
This changes px4_task_spawn_cmd to match the NuttX task_spawn. It adds
the task name as argv[0]. See example below:

px4_task_spawn_cmd("task_name",
		   SCHED_DEFAULT,
		   SCHED_PRIORITY_DEFAULT,
		   1024,
		   (px4_main_t)&Something::start_helper,
		   (char *const *)argv);

with:

argv[0]: "something"
argv[1]: "start"
argv[2]: nullptr

becomes in Something::start_helper:

argv[0]: "task_name"
argv[1]: "something"
argv[2]: "start"
argv[3]: nullptr
2020-12-14 09:26:18 +01:00
Julian Oes 862fd1d450 module: remove NuttX only quirk
The behaviour on NuttX and Posix should now be the same anyway.
2020-12-14 09:26:18 +01:00
Julian Oes 314b5e721f src: remove NuttX ifdefs around args
It doesn't look like they are required anymore.
2020-12-14 09:26:18 +01:00
Julian Oes 5be2066e1a posix: small cleanup 2020-12-14 09:26:18 +01:00
Thomas e51000c5be fix syntax of prev commit 2020-12-11 22:00:56 +01:00
Thomas Stauber eec64c5c0f More compact if statement
Co-authored-by: Silvan Fuhrer <silvan@auterion.com>
2020-12-11 22:00:56 +01:00
Thomas d025787334 replace _vehicle_status 2020-12-11 22:00:56 +01:00
Thomas db58269577 Add support for set_position_target_local_ned message 2020-12-11 22:00:56 +01:00
Thomas 1e6976234f Remove reset_offb_cruising_speed(). Make more explicit that this PR only affects offboard mode. 2020-12-11 22:00:56 +01:00
Thomas f1524fe27d renaming the new functions 2020-12-11 22:00:56 +01:00
Thomas 9cc9e4f89f Handle MAV_CMD_DO_CHANGE_SPEED command for FW Offboard global position control. 2020-12-11 22:00:56 +01:00
Daniel Agar 0433f4d33c land_detector: decrease default LNDFW_AIRSPD_MAX 8 -> 6 m/s 2020-12-11 21:58:43 +01:00
Daniel Agar ae2b1a265c commander: POSCTL optical flow aiding continue updating GPOS validity
- updating the global position validity should happen regardless of
being in manual position control mode with only optical flow
 - condition_global_position_valid needs to be accurate to adjudicate
main state changes (eg going into AUTO MISSION)
2020-12-11 15:33:50 -05:00
Daniel Agar 6bda8af97c commander: merge duplicated position and velocity validity checks 2020-12-11 15:33:50 -05:00
Daniel Agar 5cd4a9c73f commander: global position validity respect local position xy_valid 2020-12-11 15:33:50 -05:00
Daniel Agar ef6209ba03 new manual_control_switches msg (split out of manual_control_setpoint) (#16270)
- split out switches from manual_control_setpoint into new message manual_control_switches
 - manual_control_switches published at minimal rate (~ 1 Hz) or immediately on change
 - simple switch debounce in rc_update (2 consecutive identical decodes required)
 - manual_control_switches logged at full rate rather than sampled at (5-10% of messages logged)
 - manual_control_setpoint publish at minimal rate unless changing
 - commander handle landing gear switch for manual modes
 - processing of mode_slot and mode_switch is now split so we only do one or the other (not both)
     - a future step will be to finally drop mode_switch and accompanying switches entirely

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2020-12-11 12:11:35 -05:00
Daniel Agar 25ef76b3b8 navigator: fix LOITER_TO_ALT
- this was overzealously removed in https://github.com/PX4/PX4-Autopilot/pull/15677
2020-12-11 16:28:08 +01:00
Jannik Beyerstedt c5a6a60903 Also log transponder_report and satellite_info
* log full data rate transponder_report message by default
* log satellite_info (GPS_STATUS) as part of debug topics
2020-12-11 12:44:23 +01:00
RomanBapst fd18ba6496 tiltrotor: allow to finish transition if groundspeed is below cruise speed
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2020-12-11 09:40:47 +03:00
Roman Bapst 842d98d572 AirspeedValidator: fuse true airspeed before sideslip (#742)
- the states can be initialised more accurately using an airspeed measurement
and the wind estimator uses the first measurement to initialise

Signed-off-by: RomanBapst <bapstroman@gmail.com>
2020-12-11 09:37:09 +03:00
Daniel Agar d44e537084 ekf2: update to new ecl to fix fault status getter
- estimator_status filter_fault_flags was broken because the union within ecl/EKF has exceeded 16 bits
2020-12-10 12:45:41 -05:00
Beat Küng 72420dfff3 mavlink_receiver: remove unused _param_com_flight_uuid 2020-12-10 08:47:04 +01:00
PX4 BuildBot 7db555573b Update submodule ecl to latest Wed Dec 9 12:40:07 UTC 2020
- ecl in PX4/Firmware (ef162f7629ce29be8fd556b81357b96720d8e21f): https://github/commit/da7d41e78aecdc07d226bd7d723c747895d1c615
    - ecl current upstream: https://github/commit/8f3df7a97b348dd7bf06233004f9821fe2ea88d1
    - Changes: https://github/compare/da7d41e78aecdc07d226bd7d723c747895d1c615...8f3df7a97b348dd7bf06233004f9821fe2ea88d1

    8f3df7a 2020-12-09 Mathieu Bresciani - flow: restructure optical flow control logic (#928)
3835800 2020-12-09 kritz - Auto update change indication by github actions
688a054 2020-12-08 Daniel Agar - EKF: controlDragFusion() add parenthesis for readability
944b18c 2020-12-05 Paul Riseborough - EKF: Remove non useful status print
ee94980 2020-12-03 Paul Riseborough - EKF: Clean up wind state activation logic
44ebfb8 2020-12-02 Paul Riseborough - EKF: Don't report local position as valid when in a non-position mode
2020-12-09 13:12:58 -05:00
flbernier bca2d3139a Enable dshot driver for fmu-v4pro 2020-12-09 17:56:11 +01:00
Orkun Aşa f2aa7d3f88 Update ROMFS/px4fmu_common/init.d/rc.sensors
parameter comparison logic is changed.

Co-authored-by: Daniel Agar <daniel@agar.ca>
2020-12-09 17:55:38 +01:00
Orkun Aşa a6b7add2fe SENS_EN_VL53L1X parameter is implemented to enable VL53L1X distance sensor 2020-12-09 17:55:38 +01:00
Igor Campos 9c3b70d517 remove default value for roll angle 2020-12-09 17:54:53 +01:00
Igor Campos bbad1bdd6e add comment. 2020-12-09 17:54:53 +01:00
Igor Campos 33b831efe3 rename variables 2020-12-09 17:54:53 +01:00
Igor Campos dfcd6a7c16 fix typo 2020-12-09 17:54:53 +01:00
Igor Campos c316af6ec7 update to match new feature as a new mavlink command Oblique Survey 260 2020-12-09 17:54:53 +01:00
Igor Campos 390ed3765f disable pseudo-oblique mode if param4 is 0. 2020-12-09 17:54:53 +01:00
Igor Campos 38a5b8a502 fix comment description for pitch angle 2020-12-09 17:54:53 +01:00
Igor Campos d0ae931543 adjust minimum number of positions to 2. 2020-12-09 17:54:53 +01:00
Igor Campos 0cb3ce4886 fix readability 2020-12-09 17:54:53 +01:00
Igor Campos e1e06364da fix formatting 2020-12-09 17:54:53 +01:00
Igor Campos 73f7b08873 add Camera Auto Mount Pseudo Oblique Solution (CAMPOS)
add target system and component ids to vmount commands

Signed-off-by: Igor Campos <igor.gama.90@gmail.com>
2020-12-09 17:54:53 +01:00
Thomas 7e2da11d67 reenable WV after FT alignment 2020-12-09 17:36:20 +01:00
Julian Oes a1b54eb655 mavlink: check index for out-of-bounds
If a MAP_RC_PARAM message is sent with an index > 2, this would lead
to undefined behaviour or a segfault/hardfault.
2020-12-09 08:59:57 +01:00
Mark Sauder dd4ee5c48c dshot: breakout driver header file, use static_casts, add const specifiers (#15908)
* Break out dshot.h from dshot.cpp and rename files to reflect the class name.
Move DShot class specific #defines from drv_pwm_output.h to dshot.h.
Replace c-style casts with static_casts, standardize method naming, single line comment styles, and formatting.
Rename update_dshot_out_state() to enable_dshot_outputs().
2020-12-09 08:51:47 +01:00
Daniel Agar cf010f44d0 Update submodule sitl_gazebo to latest Wed Dec 9 00:39:59 UTC 2020 (#16354)
- sitl_gazebo in PX4/Firmware (cd1ffa63cd): https://github.com/PX4/PX4-SITL_gazebo/commit/e01ba8f78c185fab0b0ceb1e6407b5e1cc7c07d4
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/19981d61cfe656d2985fef5285b4a4d14f3be199
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/e01ba8f78c185fab0b0ceb1e6407b5e1cc7c07d4...19981d61cfe656d2985fef5285b4a4d14f3be199

    19981d6 2020-12-08 Flavio Tonelli - Fix plugin misspelling (#665)

Co-authored-by: PX4 BuildBot <bot@px4.io>
2020-12-09 08:43:45 +01:00
Daniel Agar cd1ffa63cd commander: auto transition to LOITER if disarmed with no RC only requires a valid global position 2020-12-08 18:26:03 -05:00
Daniel Agar 82746af07a ekf2: use new IMU and mag bias and variance getters in ecl/EKF
- reset IMU bias on calibration change (only works with multi-ekf)
 - standardize PX4_INFO/PX4_WARN/PX4_ERR output for multi-ekf with instance number
 - https://github.com/PX4/PX4-ECL/pull/924
2020-12-08 16:06:18 -05:00
Daniel Agar 8f5f564c05 commander: preflightcheck only report failure once per sensor type
- either way the user action is to recalibrate, so we might as well try
to minimize the noise/annoyance
2020-12-08 13:18:22 -05:00
Silvan Fuhrer edaf9f2bb6 FW Position Controller: consolidate mission throttle adaptions for position and loiter waypoints
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-12-08 12:08:36 -05:00
Silvan Fuhrer 6d255df0a8 airspeed selector: disable beta fusion when not in fixed-wing mode
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-12-08 11:43:27 -05:00
Silvan Fuhrer 59564af860 wind_estimate message: add identifier for source
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-12-08 11:43:27 -05:00
Roman Dvořák bc1c8fb73a GPS_DUMP_COMM: dump all gps instances 2020-12-08 11:45:24 +01:00
Julian Oes fd261b590c battery: don't init uint16_t with -1.0f
This was flagged as undefined behaviour by fuzz testing.
2020-12-08 09:58:29 +01:00
Daniel Agar 681590c510 ekf2: multi-ekf force initial selection (and sensor_selection publication)
- depending on the particular sensor configuration and startup timing we were getting an initial sensor_selection publication without valid accel & gyro device ids (only applies to Multi-EKF)
 - fix faulty accel and gyro device ids
 - initialize unused test ratio fields to NAN for logging clarity
2020-12-07 21:37:24 -05:00
bresch 3276916df9 HomePos: check corresponding validity before using data 2020-12-07 10:24:23 -05:00
bresch 711bd2ce87 Commander: use helper to set home position 2020-12-07 10:24:23 -05:00
bresch f3e5b86b06 Commander: set home position in air
en/dis-able in-air home position via parameter COM_HOME_IN_AIR
2020-12-07 10:24:23 -05:00
JaeyoungLim e8cefcafbc Fix gazebo_sitl_multiple_run.sh scripting (#16340)
This commit fixes the problem when using scripting options. This regression was introduced by #15463
2020-12-07 06:17:15 +01:00
Julian Oes a2ff53b018 mavlink: remove typedef of anonymous struct
Clang doesn't seem to like these.
2020-12-06 23:55:59 -05:00
Julian Oes 8900c6200d commander: remove typedef of anonymous struct
Clang doesn't seem to like these.
2020-12-06 23:55:59 -05:00
David Sidrane 1cd36d4c8c PX4 NuttX 10.0.0+ With IMX backports 2020-12-04 12:59:09 -05:00
David Sidrane 1b70e5f978 nxp_fmurt1062-v1:Rev B will be Using active CD 2020-12-04 12:59:09 -05:00
David Sidrane 394c2edea3 nxp_fmurt1062-v1:Added Single wire support for SBUS 2020-12-04 12:59:09 -05:00
David Sidrane 171cb7119e nxp_imxrt,rt106x add imxrt_gpiosetevent 2020-12-04 12:59:09 -05:00
David Sidrane d4a78cea5a nxp_fmurt1062-v1:Correct intial state of PIO_nVDD_5V_{HIPOWER|PERIPH}_E to OFF 2020-12-04 12:59:09 -05:00
David Sidrane 67a78a70ea nxp_fmurt1062-v1:Telem 1 & 2 Swapped to have real HW HS on Telm2 2020-12-04 12:59:09 -05:00
David Sidrane 1dd22acd12 nxp_fmurt1062-v1:Fix memory overflow 2020-12-04 12:59:09 -05:00
David Sidrane 0ca7783ea5 nxp_fmurt1062-v1:Refreshed defconfig fixing 'if-then' disabled 2020-12-04 12:59:09 -05:00
David Sidrane 8d8a31c56d WorkQueueManager:Increase stack size 2020-12-04 12:59:09 -05:00
JaeyoungLim e6992db1ca Use enums for set attitude setpoint typemasks for offboard mode (#16327)
This commit switches the typemask comaparision to enums for better readability
2020-12-04 17:44:33 +01:00
PX4 BuildBot 3783ab4a6a Update submodule sitl_gazebo to latest Fri Dec 4 00:39:14 UTC 2020
- sitl_gazebo in PX4/Firmware (25c113a527): https://github.com/PX4/PX4-SITL_gazebo/commit/cd8ba25c81f32d6fe088482e37f8a38892209ef4
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/e01ba8f78c185fab0b0ceb1e6407b5e1cc7c07d4
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/cd8ba25c81f32d6fe088482e37f8a38892209ef4...e01ba8f78c185fab0b0ceb1e6407b5e1cc7c07d4

    e01ba8f 2020-12-03 JaeyoungLim - Add macos build tests for Bigsur (#663)
a6698f5 2020-11-19 Daniel Agar - update gitignore (#658)
2020-12-03 23:50:40 -05:00
Daniel Agar 5e6189ee5a Update submodule mavlink v2.0 to latest Fri Dec 4 00:39:20 UTC 2020
- mavlink v2.0 in PX4/Firmware (dce7cfbddefe53fd0381582121883134a4df1b73): https://github.com/mavlink/c_library_v2/commit/1de17e039b27c541ccdb9ed214ea41aaaf180ae0
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/8f481688d70541e8f91ee8c4fc233ca70cd7fad9
    - Changes: https://github.com/mavlink/c_library_v2/compare/1de17e039b27c541ccdb9ed214ea41aaaf180ae0...8f481688d70541e8f91ee8c4fc233ca70cd7fad9

Co-authored-by: PX4 BuildBot <bot@px4.io>
2020-12-03 23:49:28 -05:00
Daniel Agar cc979d2249 Update submodule GPSDrivers to latest Fri Dec 4 00:39:25 UTC 2020
- devices in PX4/Firmware (1303a8f17c5174a02b1c3ed22acd88da499e5a53): https://github/commit/0bf63c9820f4af997d0a48743dcc1008d119e49c
    - devices current upstream: https://github/commit/5afc11588b2b6ec0861ecf9ef673c7a9e2109129
    - Changes: https://github/compare/0bf63c9820f4af997d0a48743dcc1008d119e49c...5afc11588b2b6ec0861ecf9ef673c7a9e2109129

    5afc115 2020-11-30 Beat Küng - gps_helper: define M_PI_F if not defined (was missing for ubx)
2020-12-03 23:48:29 -05:00
Daniel Agar 01620420fa ekf2: update to latest ecl with RingBuffer minor improvements
- includes https://github.com/PX4/PX4-ECL/pull/938
2020-12-03 21:17:22 -05:00
Matthias Grob 25c113a527 StickAccelerationXY: boost low speed brake 2020-12-03 18:19:42 +01:00
Matthias Grob badaf1eae0 Functions: add squareroot linear function 2020-12-03 18:19:42 +01:00
Matthias Grob 3f3a82e034 FlightTaskManualAcceleration: reset position lock on reactivation
to prevent having a fixed position lock while moving the vehicle
on the ground before flying.
2020-12-03 18:19:42 +01:00
Matthias Grob 66f8fc08c0 FlightTasks: refactor to use isAnyTaskActive() 2020-12-03 18:19:42 +01:00
David Sidrane 229f02a4f9 mtd:Reduce functionality on memory constrained systems 2020-12-02 20:40:23 -05:00
David Sidrane b4693f41da rcS:Use mft query not mtd start 2020-12-02 20:40:23 -05:00
David Sidrane 22bc176885 Added mft for queries 2020-12-02 20:40:23 -05:00
David Sidrane f8148593ad uvify_core: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 94825ddc6e spracing_h7extreme: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 44ffc855dc px4_fmu-v6x: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane d9151af291 px4_fmu-v4pro: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane c9063beacc px4_fmu-v4: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 79bedbc908 px4_fmu-v3: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 313b3edc04 px4_fmu-v2: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 6e9f50f48e omnibus_f4sd: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 74a0693040 nxp_ucans32k146: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane ad1c603af4 nxp_fmurt1062-v1: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 65b3b0b2e7 nxp_fmuk66-v3: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 6f27deab40 nxp_fmuk66-e: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 434f63d479 mro_x21: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 7c07ce9649 mro_x21-777: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 5703070974 mro_ctrl-zero-f7: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 2247779216 modalai_fc-v1: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 6dba2425c2 intel_aerofc-v1: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane a2a8d2fcf2 holybro_pix32v5: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 2b69fad3ac holybro_kakutef7: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 79744ec156 holybro_durandal-v1: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 55c091e0fc cubepilot_cubeyellow: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 6b93865cfc cubepilot_cubeorange: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 16f388d625 cuav_x7pro: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 26e164c3ba cuav_nora: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 79f177fe94 cuav_can-gps-v1: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 1bb2b0b06c bitcraze_crazyflie: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane a09d240c72 av_x-v1: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 4c5aa12a18 airmind_mindpx-v2: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 52b5856ff0 px4_fmu-v5:Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane a60df85a09 px4_fmu-v5x:Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane e83a00c604 px4_manifest:Add Queries 2020-12-02 20:40:23 -05:00
David Sidrane 68ab736b16 Refactor mtd to make available to board startup 2020-12-02 20:40:23 -05:00
David Sidrane 1b9ab2a3e2 px4_fmu-v5x:Manifest Update Adde Rev 1 HW and fix VER 1
VER is on BASE
   REV is on FMU
     ver|rev
     bas|fmu
    {0x0000, hw_mft_list_v0500, ...(hw_mft_list_v0500)},
    {0x0001, hw_mft_list_v0501, ...(hw_mft_list_v0501)}, <-- was wrong

    This falsly selected the NO I/O version
2020-12-02 19:56:14 -05:00
Daniel Agar 378c0b5093 parameters: find and get perf counters aren't threadsafe 2020-12-02 10:11:42 -05:00
Daniel Agar e69aea0a9b parameters: don't keep in memory if set to default 2020-12-02 10:11:42 -05:00
Daniel Agar c305774fae commander: move vehicle_status into class 2020-12-02 10:20:50 +01:00
Daniel Agar b7de10fca3 commander: move vehicle_status_flags to class 2020-12-02 10:20:50 +01:00
Daniel Agar dc435c4c90 commander: control_status_leds() use _armed directly 2020-12-02 10:20:50 +01:00
Daniel Agar 8ac2581d7b commander: handle_command() use _armed directly 2020-12-02 10:20:50 +01:00
Daniel Agar 741a0b43e8 commander: move mavlink_log_pub into class 2020-12-02 10:20:50 +01:00
Daniel Agar a03b91c01e commander: move answer_command() to class 2020-12-02 10:20:50 +01:00
Daniel Agar d5dc7e2873 commander: move actuator_armed state into class 2020-12-02 10:20:50 +01:00
Matthias Grob de66616341 MulticopterPositionControl: don't switch out of Orbit task
when it got started via vehicle_command
2020-12-01 10:00:46 -05:00
Matthias Grob 8f40558f41 MulticopterPositionControl: reset task when switching mode
to make sure the state is clean between auto mode switches.
2020-12-01 10:00:46 -05:00
Daniel Agar 85f3ab1960 rc_update: only decode if RC input is stable (channel count and source) 2020-12-01 09:40:24 -05:00
Daniel Agar d654be761c ms4525: remove old voltage corrections
- this isn't correct for all boards and we now have airspeed scale
factor estimation
2020-12-01 09:34:47 -05:00
Alex Mikhalev 378b41af6a tunes: Improve logic for interrupting tunes
src/lib/tunes already knows which tunes are interruptable, so add
return values to expose than and use than in tone_alarm.
This fixes the issue that repeating tunes cannot be interrupted without
tune_override set to true.

Signed-off-by: Alex Mikhalev <alex@corvus-robotics.com>
2020-11-30 16:56:13 -05:00
JaeyoungLim bd943d872c Use explicit typemasks for offboard position setpoints (#16296)
This uses enums of the POSITION_TARGET_TYPEMASK in order to separate typemasks that are part of the mavlink specs more explicitly
2020-11-30 22:12:06 +01:00
Beat Küng a63e8cc149 fix mavlink: ensure vehicle_command topic exists
If the first publisher publishes multiple commands right after each other
(e.g. on 'commander takeoff'), mavlink would miss the first and print an
error like 'vehicle_command lost, generation 0 -> 2'.

This is due to a recent uORB behavior change.
2020-11-30 11:53:22 -05:00
Beat Küng 05a3492174 commander: remove low priority thread, run tasks in a worker thread on demand
- removes race conditions
- removes dependencies on static data & methods
- reduces RAM usage by ~3.8KB
2020-11-30 11:53:22 -05:00
Beat Küng 419b336a15 commander: fix ModuleBase usage, remove volatile flag 2020-11-30 11:53:22 -05:00
Antonio Sanjurjo Cortés aa80167b47 mavlink: rename OPTICAL_FLOW header and defines to OPTICAL_FLOW_RAD
Signed-off-by: Antonio Sanjurjo Cortés <74329840+antonio-sc66@users.noreply.github.com>
2020-11-29 20:26:07 -05:00
Antonio Sanjurjo Cortés 7dde298664 mavlink: move COLLISION to streams hpp
Signed-off-by: Antonio Sanjurjo Cortés <74329840+antonio-sc66@users.noreply.github.com>
2020-11-29 20:26:07 -05:00
Antonio Sanjurjo Cortés 2243931abd mavlink: move ATTITUDE_TARGET to streams hpp
Signed-off-by: Antonio Sanjurjo Cortés <74329840+antonio-sc66@users.noreply.github.com>
2020-11-29 20:26:07 -05:00
Antonio Sanjurjo Cortés ce28aa089b mavlink: move ATTITUDE_QUATERNION to streams hpp
Signed-off-by: Antonio Sanjurjo Cortés <74329840+antonio-sc66@users.noreply.github.com>
2020-11-29 20:26:07 -05:00
Antonio Sanjurjo Cortés 8ac2ada0e6 mavlink: move ATTITUDE to streams hpp
Signed-off-by: Antonio Sanjurjo Cortés <74329840+antonio-sc66@users.noreply.github.com>
2020-11-29 20:26:07 -05:00
Antonio Sanjurjo Cortés 0bf622e211 mavlink: move OPTICAL_FLOW to streams hpp
Signed-off-by: Antonio Sanjurjo Cortés <74329840+antonio-sc66@users.noreply.github.com>
2020-11-29 20:26:07 -05:00
斯东Stone 5f0ecc893e boards: holybro/durandal add TELEM3 (/dev/ttyS4) 2020-11-29 10:17:18 -05:00
Jaeyoung-Lim d59ba2032f Handle takeoff waypoints for rover
Fix
2020-11-29 00:08:53 +01:00
TSC21 1d1fbdb1d3 microRTPS: remove byte ordering for nested types 2020-11-28 21:26:50 +01:00
SalimTerryLi 2d0eb4a41a pca9685_pwm_out: small improvement (#16196)
* reduce I2C transfers and enable EXTCLK support
* schedule rate limit arg
* apply state machine and do actual init in Run()
2020-11-27 17:17:45 -05:00
Silvan Fuhrer 3309bf21dd FW att C: do not lock or reset integrator if tailsitter and in hover
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-27 17:28:52 +03:00
Silvan Fuhrer efe42451b6 tailsitter_duo mixer: remove output scaling (that reduced the max deflection of the elevons)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-27 17:28:52 +03:00
Silvan Fuhrer 646b5bb578 L1: Do only check for wrong tangent_vel if in circle_mode
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-27 17:04:06 +03:00
JaeyoungLim c5486ca47e sitl: fix sitl_run to run on macOS (#16287)
This commit removes the readarray command from the Tools/sitl_run.sh.
This fixes the issue where SITL was not able to run due to readarray not being available on macOS
2020-11-27 10:49:22 +01:00
Ricardo Marques 3215c50660 commander: Fix comment typos.
Signed-off-by: Ricardo Marques <marques.ricardo17@gmail.com>
2020-11-27 10:25:32 +01:00
Hamish Willee 336639897e Fix incorrect docs URLs in airframes definitions (#16288) 2020-11-27 07:44:02 +01:00
BazookaJoe1900 bd09be43c0 simulator mavlink actuator limits (#15861)
using unified way to decide which output should be scale as rotor
fixed case that actuator that wasn't set (value 0 "PWM") results output of -3
make default actuator mode to set all actuator to range of -1 to +1
cleanups
2020-11-26 14:42:31 +01:00
Jukka Laitinen fdb4ede6c2 Add topic namespace support for micrortps agent generation
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2020-11-26 12:34:56 +00:00
Matthias Grob ce8f4dece2 rc_update_params: clarify failsafe channel and threshold 2020-11-26 10:55:35 +01:00
Silvan Fuhrer 5382d3b8fb rc.VTOL_defaults: enable wind estimation in EKF by default and remove MPC_LAND_SPEED being, as it's just set to param default
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-26 08:50:49 +01:00
Daniel Agar ec9f8998a7 commander: limit mode switch re-evaluation logic on estimate validity changes
- re-evaluating mode switches on altitude or position validity change can create confusing when also relying on mode changes via mavlink
 - limiting this logic to only apply when disarmed solves the original problem (respecting initial switch position) without introducing potential problems mid-flight
 - fixes https://github.com/PX4/PX4-Autopilot/issues/16235
2020-11-25 21:14:55 -05:00
Paul Riseborough 3e4c38f6e8 ekf2: Fix bug causing excessive lane selection switching 2020-11-25 10:00:07 -05:00
Daniel Agar 5e855c6747 commander: preflightcheck and calibration remove hash (#) from mavlink message
- QGroundControl is reading these as "Hash" and I don't think it's ambiguous if removed
2020-11-23 21:56:23 -05:00
Beat Küng 615333badb logger: log gps_dump if GPS_DUMP_COMM is set 2020-11-20 11:04:52 -05:00
David Sidrane 0db70ea475 nxp_fmurt1062-v1:Track fixes on schematic USDHC CD now correct polarity 2020-11-20 00:48:31 -05:00
David Sidrane 136b6a3509 nxp_fmurt1062-v1:Track fixes on schematic OC/EN had been swapped 2020-11-20 00:48:31 -05:00
Daniel Agar 71306f7f83 update all container tags to 2020-11-18 2020-11-19 13:37:57 -05:00
David Sidrane ee3285a34f Fixed PX4IO uploader debug output 2020-11-19 13:35:36 -05:00
Matthias Grob 65e1b702c9 GPS_GLOBAL_ORIGIN: simplify send logic 2020-11-19 19:00:37 +01:00
Matthias Grob 0ca63120eb mavlink_messages: add GPS_GLOBAL_ORIGIN
sending out local position reference.
Only send as anser to a request message command or
when the origin was changed from externally to verify.
2020-11-19 19:00:37 +01:00
Matthias Grob 41b56f20b8 mavlink_messages: fix raw rpm message size 2020-11-19 19:00:37 +01:00
Matthias Grob c845265b1b mavlink_receiver: use SET_GPS_GLOBAL_ORIGIN to set the origin
The message GPS_GLOBAL_ORIGIN is meant as a telemtry information message
to send out the components reference and not to set it. I had to switch
to listen to SET_GPS_GLOBAL_ORIGIN such that I can implement sending out
GPS_GLOBAL_ORIGIN.
2020-11-19 19:00:37 +01:00
Daniel Agar 1425d87640 boards: px4_fmu-v5 sync all defconfigs 2020-11-19 11:21:47 -05:00
jaeyoung fb3b1f8bd9 Update sitl_gazebo submodule 2020-11-19 10:03:59 -05:00
jaeyoung 68855b5c9b Update mavlink 2020-11-19 10:03:59 -05:00
David Sidrane b6f24eefb2 The PX4IO driver uses DMA but not NuttX's TXDMA 2020-11-19 09:39:08 -05:00
alessandro f18e70029a Correct topic name for thermal corrections
The message used is ./msg/sensor_correction.msg
2020-11-19 08:23:25 +01:00
CUAV_gitfishup 80df04ddca UAVCAN: publish ardupilot::indication::SafetyState (enables CUAV NEO v2 pro GPS) 2020-11-18 10:00:49 -05:00
Jari van Ewijk a246defb68 NXP UCANS32K146: Configure PWM timer for production version 2020-11-18 04:54:38 -08:00
JaeyoungLim 5e693180d9 Fix bash error when running SITL Gazebo (#16221) 2020-11-18 04:23:19 +01:00
Matthias Grob fabeb22ae4 mavlink_receiver: remove unused decode_switch_pos function 2020-11-17 19:48:01 -05:00
Daniel Agar 7baeb78964 mavlink: STATUSTEXT track missed mavlink_log messages 2020-11-17 19:47:06 -05:00
Daniel Agar e1168070d1 mavlink: decrease task stack 2020-11-17 19:47:06 -05:00
Daniel Agar 3f9e5a6934 drivers/device/ringbuffer: move into crazyflie syslink (only remaining user) 2020-11-17 19:47:06 -05:00
Daniel Agar ed8a30d73e mavlink: STATUSTEXT directly use mavlink_log subscription
- ORB_ID(mavlink_log) increase queue depth now that mavlink ringbuffer is gone
2020-11-17 19:47:06 -05:00
Sander Swart 387659d615 Added support for models located in all paths defined in GAZEBO_MODEL_PATH (#16214)
Co-authored-by: Sander Swart <sander.swart@live.nl>
2020-11-17 16:12:31 +01:00
bbworld1 5e6f8a9606 Add typhoon h480 support to gazebo multiple sim (#16210)
* Add typhoon h480 support to gazebo multiple sim

This commit adds support for the typhoon_h480 model for the
gazebo_sitl_multiple_run.sh script.

* Update sitl_gazebo to latest version
2020-11-17 04:20:45 +01:00
Daniel Agar fb1f360724 mavsdk_tests: consistent 180s disarm timeout 2020-11-16 15:55:10 -05:00
Daniel Agar f5660c6b0c mavsdk_tests: adjust px4 and gzserver priority relative to mavsdk_test
- this is to avoid starving the test runner
2020-11-16 15:55:10 -05:00
Daniel Agar 22fbcf98cf Tools/setup: requirements.txt add pymavlink
- needed for Tools/mavlink_shell.py
2020-11-16 12:14:41 -05:00
Daniel Agar ce51a01822 boards: cubepilot orange and yellow start isolated sensor bus (SPI4) first
- this makes the isolated sensors primary by default
2020-11-16 09:31:12 -05:00
Daniel Agar f7452bff4d ROMFS: startup remove bootlog.txt 2020-11-16 09:19:35 -05:00
Silvan Fuhrer b58e270fd4 FW Position Control: remove manual climbout mode trigger via pitch stick
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-16 14:41:01 +01:00
SalimTerryLi ad4068f472 platforms/posix: mlockall() support
* add basic mlock support to increase stability when system is under high load and RAM is almost full
 * mainly about minimizing or completely eliminating RAM page swap time
2020-11-15 23:53:10 -05:00
PX4 BuildBot 37567bbee0 Update submodule sitl_gazebo to latest Mon Nov 16 00:38:40 UTC 2020
- sitl_gazebo in PX4/Firmware (eb3135e79c): https://github.com/PX4/PX4-SITL_gazebo/commit/27e06e2a4906cc0a028d8e688f243dfafa7920a4
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/0a4d0708e839388668575d61623903c297a73a34
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/27e06e2a4906cc0a028d8e688f243dfafa7920a4...0a4d0708e839388668575d61623903c297a73a34

    0a4d070 2020-11-13 BazookaJoe1900 - clean build warning due to wrong string size
2020-11-15 21:32:51 -05:00
Daniel Agar eb3135e79c systemcmds/tests: always build with optimization
- needed to keep Matrix stack usage reasonable
 - split matrix tests to further minimize stack usage
2020-11-15 19:15:56 -05:00
Daniel Agar 963d101375 boards: fmu-v5 debug and stackcheck increase interrupt stack 2020-11-15 17:00:11 -05:00
Daniel Agar 053bf7e732 Jenkins HIL tolerate certain failures
- px4_fmu-v5 debug and stackcheck builds initial configuration is best effort
 - nxp_fmuk66-v3 allow overall tests command to fail due to intermittent serial console issues
2020-11-13 21:50:13 -05:00
Daniel Agar ee9ce1087a IMU_DGYRO_CUTOFF add conservative default (0 Hz -> 30 Hz) 2020-11-13 21:26:35 -05:00
PX4 BuildBot 683fcdc910 Update submodule sitl_gazebo to latest Fri Nov 13 20:14:29 UTC 2020
- sitl_gazebo in PX4/Firmware (40bf460717): https://github.com/PX4/PX4-SITL_gazebo/commit/ee7661eeab1952bb4d2a94e2cb8afd0159a6e1f1
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/27e06e2a4906cc0a028d8e688f243dfafa7920a4
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/ee7661eeab1952bb4d2a94e2cb8afd0159a6e1f1...27e06e2a4906cc0a028d8e688f243dfafa7920a4

    27e06e2 2020-11-12 JaeyoungLim - Add catkin build test (#652)
6f6f420 2020-11-12 JaeyoungLim - Replace water level to ocean model (#649)
2020-11-13 19:00:32 -05:00
Daniel Agar 174c5c5797 Jenkins HIL fmu-v5 debug and stackcheck attempt to config conservative defaults before flashing
- keep minimal rate for expensive fmu-v5 debug and stackcheck builds
2020-11-13 18:03:09 -05:00
Daniel Agar dd3c1a3653 Tools/HIL: relax command retry for now 2020-11-13 18:03:09 -05:00
Jaeyoung-Lim 40bf460717 Update jsbsim bridge to latest
This commit updates the jsbsim bridge to the latest
2020-11-13 12:45:21 -05:00
Daniel Agar 29658961ef mavlink: move DISTANCE_SENSOR to streams header 2020-11-13 10:05:22 -05:00
Daniel Agar 860a7fd1db mavlink: move ALTITUDE to streams header 2020-11-13 10:05:22 -05:00
Daniel Agar a8f0987028 mavlink: move WIND_COV to streams header 2020-11-13 10:05:22 -05:00
Daniel Agar 4a9f293596 mavlink: move MOUNT_ORIENTATION to streams header 2020-11-13 10:05:22 -05:00
Daniel Agar 4a6c90b8ea mavlink: STATUSTEXT check TX buffer before sending
- Note the TX buffer size check is lazily ignoring the possibility of messages that span multiple Mavlink STATUSTEXT. This at least accommodates the calibration use case and it's no worse than before for longer messages.
2020-11-13 09:52:05 -05:00
CUAV_gitfishup e399dbc440 boards: CUAV Nora support cuav_neo_v2_pro and disable CONFIG_STM32H7_BDMA 2020-11-13 09:45:57 -05:00
BazookaJoe1900 66edc822fe boards: px4/fmu-v5 fix DMAmap documentation
- fixed notes and removed none used definitions
 - set defconfig to define UART8_RXDMA and UART8_TXDMA though the DMA is not handled by nuttx, just to clarity
2020-11-12 11:26:45 -05:00
Daniel Agar d14b4221f1 sensor calibration: apply board level adjustment to external sensors (#16127)
- apply SENS_BOARD_{X,Y,Z}_OFF to external sensors to prevent unnecessary misalignment with internal IMU
2020-11-12 10:37:30 -05:00
bresch 5f0c572c61 GPS_YAW_OFFSET: fix param description 2020-11-12 09:35:40 +01:00
Daniel Agar 3cf072debc HIL tests remove deleted smoothz test 2020-11-11 20:22:06 -05:00
Daniel Agar 1659447abb px4_work_queue: reduce INS (ekf2) stack by 1200 bytes 2020-11-11 20:17:52 -05:00
Daniel Agar 5d7ea62190 estimator_innovations: remove unimplemented fake vel & pos fields
- easy to readd if and when they're needed
2020-11-11 20:17:52 -05:00
Daniel Agar 880dc6accd ekf2: compile at MAX_CUSTOM_OPT_LEVEL 2020-11-11 20:17:52 -05:00
Daniel Agar 1e03285405 ekf2: avoid storing in_ground_effect state 2020-11-11 20:17:52 -05:00
Daniel Agar 26de630dc5 ekf2: remove landed flag and use control_status directly 2020-11-11 20:17:52 -05:00
Daniel Agar 89ab6a5dbf ekf2: preflight checks only reset on STANDBY change
- avoid storing unnecessary state and call setVehicleCanObserveHeadingInFlight() directly
2020-11-11 20:17:52 -05:00
Daniel Agar b9fff2c221 ekf2: sensor_selection only updated in non-multi mode
- publish attitude as soon as possible
2020-11-11 20:17:52 -05:00
Daniel Agar 7264577eec ekf2: split perf counters (full update or not) and reorganize Run() slightly 2020-11-11 20:17:52 -05:00
Daniel Agar a68fe4dbd7 ekf2: move parameter update to beginning of cycle 2020-11-11 20:17:52 -05:00
Daniel Agar 5ae7c80a18 ekf2: move rangeSample update to UpdateRangeSample() 2020-11-11 20:17:52 -05:00
Daniel Agar 991015c5c6 ekf2: move magSample update to UpdateMagSample() 2020-11-11 20:17:52 -05:00
Daniel Agar 68f49619b7 ekf2: move gps_message update to UpdateGpsSample() 2020-11-11 20:17:52 -05:00
Daniel Agar 0db706011a ekf2: move FlowSample update to UpdateFlowSample() 2020-11-11 20:17:52 -05:00
Daniel Agar 8ee197acad ekf2: move vehicle_odometry_aligned publication to PublishOdometryAligned() 2020-11-11 20:17:52 -05:00
Daniel Agar b29f3c7ce5 ekf2: move ExtVisionSample update to UpdateExtVisionSample() 2020-11-11 20:17:52 -05:00
Daniel Agar 0f56793116 ekf2: move BaroSample update to UpdateBaroSample() 2020-11-11 20:17:52 -05:00
Daniel Agar 6b30f01daf ekf2: move AuxVelSample update to UpdateAuxVelSample() 2020-11-11 20:17:52 -05:00
Daniel Agar 651e292d42 ekf2: move AirspeedSample update to UpdateAirspeedSample() 2020-11-11 20:17:52 -05:00
Daniel Agar f4f3ba47a2 ekf2: move mag calibration to UpdateMagCalibration() 2020-11-11 20:17:52 -05:00
Daniel Agar 96178a6fb0 ekf2: publish yaw estimator status last 2020-11-11 20:17:52 -05:00
Daniel Agar 05de61ff15 ekf2: move estimator innovations publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar 387186c11d ekf2: move estimator innovation test ratios publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar 3b9965ff8d ekf2: move estimator innovation variances publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar 94415a45fa ekf2: move estimator status publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar 03388f4656 ekf2: move estimator states publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar 98334d1325 ekf2: move local position publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar c09a5e0d9f ekf2: move global position publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar 8616345346 ekf2: move estimator_sensor_bias publication to method
- only publish if there's a change in bias
 - publish current estimated mag bias, including saved mag bias
2020-11-11 20:17:52 -05:00
Daniel Agar e397cbf8bb ekf2: move ekf_gps_drift publication to method 2020-11-11 20:17:52 -05:00
Daniel Agar 0d657c74bf ekf2: rename publish helpers mixed case (google style guide) 2020-11-11 20:17:52 -05:00
Daniel Agar 68f24954cf imu/st/lsm9ds1: refactor to same form as other new IMU drivers
- register configuration captured in table and checked periodically
 - simple state machine
 - all driver sleeps removed
 - driver respects IMU_GYRO_RATEMAX
2020-11-11 19:22:12 -05:00
Silvan Fuhrer 5dd14dfd54 FW Position Control: re-add wrongly removed airspeed_poll()
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-11 19:20:03 -05:00
Daniel Agar a8f665739d mavsdk_tests: manual fly forward for slightly longer 2020-11-11 19:16:39 -05:00
Daniel Agar 756609c3e8 mavsdk_tests: relax corridor radius default for missions 2020-11-11 19:16:39 -05:00
Matthias Grob ff801fbc08 FlightTasks: remove FlightTaskManualPositionSmooth
alias first smooth position control version from 2017.

RIP it served well.
2020-11-11 21:16:18 +01:00
Matthias Grob e6338d8a2f MulticopterPositionControl: default cases with unsupported POS_MODE 2020-11-11 21:16:18 +01:00
Matthias Grob 0b8f092d2b Add acceleration stick mapping for position mode 2020-11-11 21:16:18 +01:00
Daniel Agar b50e6bda69 cmake: NuttX apps build updates
- NuttX Apps no longer generates the .built file
2020-11-11 12:06:39 -05:00
Daniel Agar 9767a73619 ROMFS: silently compare optional parameters
- not all build configurations have these parameters/modules
2020-11-11 08:03:48 +01:00
Daniel Agar 7ba73b46ca uORB: tests decrease stack
- save a bit of memory for running on older boards
2020-11-10 23:44:02 -05:00
Daniel Agar 3924792c20 Jenkins: HIL improve run_tests.py and run_nsh_cmd.py helper
- switch to python3
 - run_nsh_cmd.py return error if command fails
 - decrease timeout in checking for output
 - Jenkins hardware tests tolerate certain command failures that aren't available on all boards (flash constrained, etc)
2020-11-10 22:45:50 -05:00
AlexanderAurora ea09d9ebbf landing_slope: added wrap_pi to getLandingSlope and getFlareCurve
- fixes https://github.com/PX4/PX4-Autopilot/issues/16132
2020-11-10 18:58:14 -05:00
PX4 BuildBot f4964aea52 Update submodule sitl_gazebo to latest Tue Nov 10 19:18:06 UTC 2020
- sitl_gazebo in PX4/Firmware (79ad5eab34b76fbe54c2056974230a122362a62f): https://github.com/PX4/PX4-SITL_gazebo/commit/487f6283f4c0923f52bdc253dbf04d0e66cdb3a5
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/ee7661eeab1952bb4d2a94e2cb8afd0159a6e1f1
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/487f6283f4c0923f52bdc253dbf04d0e66cdb3a5...ee7661eeab1952bb4d2a94e2cb8afd0159a6e1f1

    ee7661e 2020-11-06 Julian Oes - cmake: don't link to protobuf
2020-11-10 18:54:08 -05:00
PX4 BuildBot 824238ecb8 Update submodule devices to latest Tue Nov 10 19:18:16 UTC 2020
- devices in PX4/Firmware (e65317c5fd7440ebb983cb8b07f48d67678ab86e): https://github/commit/592e4289d941eb0b7d84e6da9d72d731083633ee
    - devices current upstream: https://github/commit/0bf63c9820f4af997d0a48743dcc1008d119e49c
    - Changes: https://github/compare/592e4289d941eb0b7d84e6da9d72d731083633ee...0bf63c9820f4af997d0a48743dcc1008d119e49c

    0bf63c9 2020-11-05 Morton Lin - replace non-ascii characters in source code (#61)
2020-11-10 18:53:40 -05:00
PX4 BuildBot 8b9ae49508 Update submodule ecl to latest Tue Nov 10 19:18:21 UTC 2020
- ecl in PX4/Firmware (579a8c3a688e536b1ae4177c3e3edcea438e74d5): https://github/commit/a21092804a784d012939f96cc633e7da5f5e8cde
    - ecl current upstream: https://github/commit/da9f314b69585ba169d033fec293e9ea48b9d1fd
    - Changes: https://github/compare/a21092804a784d012939f96cc633e7da5f5e8cde...da9f314b69585ba169d033fec293e9ea48b9d1fd

    da9f314 2020-11-10 bresch - mag: use strength in Gauss
c4d162f 2020-11-04 Claudio Micheli - EKF: range_finder parameterize range sensor quality hysteresis time
6158d6d 2020-11-02 Daniel Agar - EKF: add const reference getters for status flags
2020-11-10 18:53:03 -05:00
Daniel Agar b491929ad6 Jenkins: HIL tests only finish on PASSED, FAILED, or timeout 2020-11-10 16:41:13 -05:00
Daniel Agar d33a48eb24 systemcmds/topic_listener: remove excludes
- this is a bit wasteful, but we can afford it for now everywhere listener is enabled
2020-11-10 13:46:48 -05:00
Daniel Agar c8dfcf7f0d Github Actions: break up MAVSDK SITL tests
- run only 1 vehicle type per location
2020-11-10 13:11:51 -05:00
SalimTerryLi 6728a3a05a boards: rename AirPi2 to PilotPi, add arm64 support, add to CI
* rename all
* add arm64 support
* change internal ist8310 onto I2C-1
2020-11-10 11:04:47 -05:00
Daniel Agar 38fbb452da vscode add navio2 variant and native debug launch 2020-11-10 10:38:46 -05:00
Nicolas Martin 1965cd38ba arm auth: add parameters migration
should be reverted in v1.13
2020-11-10 09:03:59 +01:00
Nicolas MARTIN 8b96ff57d7 arm auth: split COM_ARM_AUTH in 3 parameters
new params are:
- COM_ARM_AUTH_ID
- COM_ARM_AUTH_MET
- COM_ARM_AUTH_TO
2020-11-10 09:03:59 +01:00
Nicolas MARTIN 6579544fca arm_auth: use ack reception timestamp to compute authorization timeout 2020-11-10 09:03:59 +01:00
Nicolas MARTIN e89c21155a arm_auth: check authorization timestamp to skip old commands 2020-11-10 09:03:59 +01:00
David Sidrane defa437b88 Add HY-SRF05 ultrasonic sensor driver
* nxp_fmuk66-e: Use srf05 distance sensor
 * nxp_fmuk66-v3: Use srf05 distance sensor
2020-11-08 13:25:58 -05:00
Daniel Agar c60743b306 boards: NuttX increase file name max 32 -> 40 2020-11-08 12:51:59 -05:00
PX4 BuildBot 5ce0b5a32c Update submodule matrix to latest Sat Nov 7 19:38:27 EST 2020
- matrix in PX4/Firmware (0c3c9bea0f8466d0c14326d134fd0fa06f480cf5): https://github/commit/ce6b10b99af722a4e653387d40019a8428d2a54f
    - matrix current upstream: https://github/commit/a504b6e88152d88dba936bc74e449f2f281b84e2
    - Changes: https://github/compare/ce6b10b99af722a4e653387d40019a8428d2a54f...a504b6e88152d88dba936bc74e449f2f281b84e2

    a504b6e 2020-11-04 Mitchell-Lee-93 - precision of tol for float has been changed
2020-11-08 12:35:27 +01:00
stou-sandalski 6b23e28971 Fix for missing battery voltage from UAVCAN power modules (#16138)
It seems that battery.voltage_* is no longer used and QGC is getting voltage data from the cell voltage array instead.
2020-11-08 12:34:41 +01:00
Alex Mikhalev 91d1825fcf Fix non-determinstic boot hang with crashdumps
On boot, if board_hardfault_init finds a hardfault stored in BBSRAM, it
checks if there is any data available on stdin to see if there is
somebody there to respond to a prompt. But on boards such as cubeorange
where there is not a serial console by default, the ioctl fails and
bytesWaiting is uninitialized. So it will non-deterministally hang the
boot process with no outside feedback if that value is not zero.

Signed-off-by: Alex Mikhalev <alexmikhalevalex@gmail.com>
2020-11-05 12:41:01 -08:00
Adam Blazczak 149ac16bb4 add support for secondary GPS interface
Useful for navio2 or px4_raspberrypi when attaching a secondary (UART) GPS through one of the USB ports; the default navio2 onboard GPS is running on spi.

Example usage:
gps start -d /dev/spidev0.0 -i spi -e /dev/ttyACM0 -j uart -p ubx
2020-11-05 08:59:11 +01:00
Hamish Willee ffa38f1b4f module markdownout - explicit anchor not heading 2020-11-05 08:56:31 +01:00
Daniel Agar bde5cadba7 ROMFS: replay automatically create replay_params.txt 2020-11-04 11:47:01 -05:00
Daniel Agar 142452f80c replay: print parameter changes and error on mismatch 2020-11-04 11:47:01 -05:00
Daniel Agar 03aa2dd46c ROMFS: create NXP HoverGames airframe (SYS_AUTOSTART 4017)
Co-authored-by: igalloway <iaintravelgalloway@gmail.com>
2020-11-04 11:43:20 -05:00
Beat Küng e6ad321ab2 gps: add GPS_{1,2}_PROTOCOL param to select protocol, default to u-blox
u-blox is the most widely used GPS, so module detection should be a bit
faster in general.
2020-11-04 10:26:49 -05:00
Beat Küng ab43a94224 gps: keep track of RX data rate 2020-11-04 10:26:49 -05:00
Beat Küng c5c521f5e0 gps: add support for u-blox heading with 2 F9P devices 2020-11-04 10:26:49 -05:00
Julian Kent d7fa5c68aa Add support for alpha/beta/rc on the vendor version (#16112)
* Add support for versioning the vendor version

* Make regex only allow either alpha/beta/rc, or vendor versions
2020-11-04 13:48:19 +01:00
Beat Küng 8f72ea9577 Jenkins: push module documentation to PX4 user guide as well 2020-11-04 13:08:05 +01:00
David Sidrane f02d490e89 rddrone-uavcan146:Rename to ucans32k146 2020-11-04 03:37:06 -08:00
David Sidrane e0f6c220b1 hardfault_log:Sanity check stack before dumping it 2020-11-04 08:44:38 +01:00
Hamish Willee 425b8a1733 markdownout - change Firmware to PX4-Autopilot 2020-11-04 08:31:28 +01:00
Daniel Agar ea2fced6ad Tools/check_submodules.sh: always update if within vscode cmake configure
- the interactive portion of check_git_submodule with hang waiting for user input
2020-11-03 23:40:12 -05:00
Silvan Fuhrer 99833eb001 FW Position Control: remove duplicated position_sp_triplet update
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-03 15:47:57 +01:00
Daniel Agar ba5ef28f23 uORB_tests: add uORB::SubscriptionMultiArray tests 2020-11-03 09:10:54 -05:00
JaeyoungLim 9e5cf3a598 Enable multiple rover simulations (#15904)
This commit allows running multiple simulations with rovers
2020-11-03 14:55:32 +01:00
Lorenz Meier a39bead740 Update SITL (compile fix)
This fixes the linker command for protobuf libraries for plugins.
;
2020-11-02 18:39:31 -05:00
Silvan Fuhrer d4d02f449f Improve tailsitter tuning master (#16078)
* tailsitter SITL: improve hover tuning

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>

* Add SITL testing for tailsitter VTOLs

This enables SITL testing for Tailsitter vehicles

Co-authored-by: Jaeyoung-Lim <jaeyoung@auterion.com>
2020-11-02 23:41:12 +01:00
Ricardo Marques fd90387270 README: Cleanup Maintenance Team structure
Changes current Maintenance Team structure in README.md in order to be more organized and with a standard.

Signed-off-by: Ricardo Marques <marques.ricardo17@gmail.com>
2020-11-02 23:31:29 +01:00
Avionics Anonymous 437a1c6db1 Use ModuleParams instead of old param funcs 2020-11-02 23:29:50 +01:00
Avionics Anonymous cc96468fad Extend UAVCAN light control
Adds automatic control of more light types via UAVCAN. Publishes
commands for beacon, strobe, nav, and landings lights. Each is
automatically controlled based on arming state and this behavior is
configurable per light type via params. For example, nav lights can be
set to be always on while beacons turn on when the system is prearmed
and strobes turn on only when armed.
2020-11-02 23:29:50 +01:00
Silvan Fuhrer 67a0e1993a FW Position controller: add option to swap throttle and pitch stick
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-11-02 22:49:05 +01:00
Martin Povišer ad0de67df7 dshot: fix build error
Fixes

  src/drivers/dshot/dshot.cpp:1408:9: error: declaration of
  'struct DShotOutput::custom_command(int, char**)::Command' shadows
  a previous local [-Werror=shadow]
2020-11-02 13:52:42 -05:00
Martin Povišer d2145917e7 setup: add Nix derivation with build environment 2020-11-02 13:52:42 -05:00
Martin Povišer b0a73b5144 platforms/nuttx: change bash references
There is a platform, NixOS Linux, on which '/bin/bash' is not available.
This commit changes the interpreter to '/usr/bin/env bash' in some
scripts essential to firmware building.
2020-11-02 13:52:42 -05:00
CUAVcaijie 77dfd111e2 boards: cuav/x7pro disable BDMA (#16056)
- currently causing a crash, disable for now
2020-11-02 13:14:44 -05:00
Daniel Agar 817285ec64 commander: gyro calibration use MedianFilter 2020-11-02 12:58:46 -05:00
Daniel Agar d14deb0e5a FFT add simple median filter 2020-11-02 12:58:46 -05:00
Daniel Agar 4578b8cdcc Update submodule ecl to latest Mon Nov 2 09:57:32 EST 2020
- ecl in PX4/Firmware (f87b19f31b9918f73d336d10e68d39c659037582): https://github/commit/48a8992caf7a95e09a5e17235133894c072b96bd
    - ecl current upstream: https://github/commit/a21092804a784d012939f96cc633e7da5f5e8cde
    - Changes: https://github/compare/48a8992caf7a95e09a5e17235133894c072b96bd...a21092804a784d012939f96cc633e7da5f5e8cde

    a210928 2020-11-01 Daniel Agar - EKF: remove virtual getters from estimator_interface
2020-11-02 12:44:14 -05:00
Beat Küng d83da4ded4 fix SubscriptionMultiArray: end() iterator needs to point past the end
And ensure not to dereference.
2020-11-02 09:00:04 +01:00
Daniel Agar a1ef4d1469 ekf2: only advertise immediately in multi-EKF mode 2020-11-01 15:48:35 -05:00
PX4 BuildBot 1dd3283fbb Update submodule ecl to latest Sat Oct 31 20:37:40 EDT 2020
- ecl in PX4/Firmware (6bb56ae2b3debb76669a04adb7c64bac74bb87f4): https://github/commit/d85e24d3ca767b48bdbb1594b564d30df5777769
    - ecl current upstream: https://github/commit/48a8992caf7a95e09a5e17235133894c072b96bd
    - Changes: https://github/compare/d85e24d3ca767b48bdbb1594b564d30df5777769...48a8992caf7a95e09a5e17235133894c072b96bd

    48a8992 2020-10-30 Daniel Agar - EKF: move small simple getters to header
defb35d 2020-10-29 Daniel Agar - EKF: pass imuSample by const reference
2020-10-31 21:11:44 -04:00
PX4 BuildBot 4df3931bd1 Update submodule sitl_gazebo to latest Thu Oct 29 20:40:02 EDT 2020
- sitl_gazebo in PX4/Firmware (6b9dde59d6): https://github.com/PX4/PX4-SITL_gazebo/commit/2451437c19ed9fcdf8a79990313e768c98aa15b6
    - sitl_gazebo current upstream: https://github.com/PX4/PX4-SITL_gazebo/commit/06e801fe8b5267e561f00d8847a6343cb2386ab6
    - Changes: https://github.com/PX4/PX4-SITL_gazebo/compare/2451437c19ed9fcdf8a79990313e768c98aa15b6...06e801fe8b5267e561f00d8847a6343cb2386ab6

    06e801f 2020-10-29 Nuno Marques - add missing generated models to git ignore (#644)
eafc98b 2020-10-28 JaeyoungLim - Move boat model to jinja templates (#641)
2020-10-29 22:00:05 -04:00
Daniel Agar 6b9dde59d6 update ecl to latest
- fmu-v5 debug and stackcheck builds now need to be CONSTRAINED_FLASH to fit
 - delete unused holybro_durandal-v1_stackcheck build (also CONSTRAINED_FLASH)
2020-10-29 18:56:52 -04:00
Daniel Agar 81aa8a914f boards: px4_fmu-v2 disable ver command line to save flash 2020-10-29 18:56:52 -04:00
Daniel Agar d5894bea5c cmake: NuttX debug skip SVD print if not found 2020-10-29 15:07:47 -04:00
Daniel Agar 216a0eb3a0 cmake: NuttX redirect libapps build stdout to log file 2020-10-29 15:07:47 -04:00
Daniel Agar b13422dd80 gitmodules update URLs to renamed PX4 repositories 2020-10-29 15:06:59 -04:00
Daniel Agar ecb462f325 ekf2: EKF2.cpp using matrix Eulerf, Quatf, Vector3f 2020-10-29 10:22:57 -04:00
Daniel Agar d1af095c0b ekf2: don't store vehicle_status_s 2020-10-29 10:22:57 -04:00
Daniel Agar d27573b797 ekf2: don't store vehicle_land_detected_s 2020-10-29 10:22:57 -04:00
Daniel Agar 7757aeda94 ekf2: don't store sensor_selection_s copy 2020-10-29 10:22:57 -04:00
Daniel Agar db5235b074 ekf2: avoid storing message copies 2020-10-29 10:22:57 -04:00
Daniel Agar 3f9f2c6fdf ekf2: multi ekf supports up to 4 IMUs 2020-10-28 20:50:58 -04:00
Daniel Agar cf082d7f1c Github actions: SITL tests upgrade MAVSDK v0.30.1 -> v0.33.1 2020-10-28 20:26:47 -04:00
Daniel Agar b5e00cd424 NuttX upgrade branches to px4_firmware_nuttx-10.0.0+ 2020-10-28 17:25:08 -04:00
David Sidrane ff87bc0fda fmu-v6x:Bootloader init NULL console 2020-10-28 14:25:25 -04:00
David Sidrane 39b1d827d2 cubeorange:Bootloader init NULL console 2020-10-28 14:25:25 -04:00
David Sidrane 1fa1f8c2c5 durandal-v1:Bootloader init NULL console 2020-10-28 14:25:25 -04:00
David Sidrane 962b90fd75 cuav:Bootloader init NULL console 2020-10-28 14:25:25 -04:00
David Sidrane 8797823333 px4_init:Split out console init to create null device to be used in non PX4 platform bsp (bootloadres) 2020-10-28 14:25:25 -04:00
David Sidrane 021bc284c1 nxp:imxrt ADC track Rev02 of ref manual change made in upstream 2020-10-28 14:25:25 -04:00
Daniel Agar 233949a377 NuttX upgrade to 10.0.0+ defconfig changes 2020-10-28 14:25:25 -04:00
David Sidrane 850e068aa3 Nuttx 10.0.0+ 2020-10-28 14:25:25 -04:00
Daniel Agar 2c874f1cd9 ekf2 selector fix SITL lockstep
- ekf2 selector don't register lockstep until first attitude publication
 - sensors module register lockstep component
 - enable multi-EKF2 in SITL
2020-10-28 09:42:41 -04:00
TSC21 b1dc1b1ecd msg: rtps: add IDs for missing estimator_* msgs 2020-10-28 11:58:35 +01:00
Thies Lennart Alff 82988b1912 airframes: added BlueROV2 (heavy configuration) airframe (#16004) 2020-10-28 11:07:31 +01:00
TSC21 5b7d1a0496 msg: rtps: add missing ID for orb_test_medium_wrap_around 2020-10-28 10:18:22 +01:00
Daniel Agar 69986affbf commander: calibration restore sleep after CAL_QGC_DONE_MSG/CAL_QGC_FAILED_MSG 2020-10-27 18:54:16 -04:00
Nicolas Martin 171bd6d784 positionControl: add check on sign before sqrtf 2020-10-27 18:52:23 -04:00
SalimTerryLi 05f1efd1a4 load_mon: get mem_usage by reading /proc/meminfo on Linux 2020-10-27 18:49:25 -04:00
Daniel Agar 91da194bd7 sensors/vehicle_gps_position: only register callbacks once topic published
- this avoids creating unnecessary uORB device nodes for GPS instances that might never exist
2020-10-27 18:40:57 -04:00
Daniel Agar df2f26ebdf rename vehicle_visual_odometry_aligned -> estimator_visual_odometry_aligned
- saves a small amount of work for the ekf2 selector in multi-EKF mode (visual_odometry_aligned now ignored)
 - helps to distinguish the origin/purpose from vehicle_odometry and vehicle_visual_odometry
2020-10-27 12:33:39 -04:00
Daniel Agar d5e68bc05a mathlib: NotchFilter delete unused update method 2020-10-27 12:30:59 -04:00
Mathieu Bresciani 050c9dcd3d HTE: fix variance prediction (#16016)
In the predition step, the process variance was erroneously
multiplied by dt instead of dt^2. The default values are adjusted
accordingly to keep the same tuning for the default loop rate of 50Hz
2020-10-27 16:56:32 +01:00
Daniel Agar f36f8928e3 distance_sensor/vl53l1x: fix code style 2020-10-27 11:43:11 -04:00
Alexey 2e98c64853 drivers/distance_sensor: new driver for ST VL53L1x
Co-authored-by: Alexey Matveev <>
2020-10-27 11:26:53 -04:00
Daniel Agar 0f411d6820 Multi-EKF support (ekf2)
- ekf2 can now run in multi-instance mode (currently up to 9 instances)
    - in multi mode all estimates are published to alternate topics (eg estimator_attitude instead of vehicle_attitude)
 - new ekf2 selector runs in multi-instance mode to monitor and compare all instances, selecting a primary (eg N x estimator_attitude => vehicle_attitude)
 - sensors module accel & gyro inconsistency checks are now relative to the mean of all instances, rather than the current primary (when active ekf2 selector is responsible for choosing primary accel & gyro)
 - existing consumers of estimator_status must check estimator_selector_status to select current primary instance status
 - ekf2 single instance mode is still fully supported and the default

Co-authored-by: Paul Riseborough <gncsolns@gmail.com>
2020-10-27 10:56:11 -04:00
Daniel Agar d5245a22d3 logger: limit default estimator_optical_flow_vel logging 2020-10-26 14:10:25 -04:00
bresch 109ed18a3a Flow: adjust default optical flow delay based on pmw3901
This is the correct value for the most common optical flow sensor
2020-10-26 14:10:25 -04:00
bresch 142724748a pmw3901: Adjust scale factor to match gyro data 2020-10-26 14:10:25 -04:00
bresch 09cc3120e2 OpticalFlow: add optical flow velocity logging
This is important to align the flow with the IMU data and verify that
the compensation is properly done
2020-10-26 14:10:25 -04:00
Matthias Grob 8e710294b3 FlightTaskManualAltitudeSmoothVel: fix parameter inheritance chain 2020-10-26 15:55:21 +01:00
Matthias Grob 7ba93d5452 FlightTasks: fix reActivate not calling the parent overrided method 2020-10-26 15:55:21 +01:00
FengShun eac9a6b68b Replace PublicationQueued with Publication to automatically configure ORB_QUEUE_LENGTH 2020-10-26 13:01:13 +01:00
FengShun 90c366f369 uORB::Publication*: template parameter automatically obtains the queue size according to the type 2020-10-26 13:01:13 +01:00
Nicolas Martin 948bed6b5c fix ekf2 saved mag bias comments (mGauss -> Gauss) 2020-10-26 00:43:20 -04:00
Daniel Agar 8435742dd5 logger: double actuator_controls_0 and vehicle_attitude_setpoint default log rate 2020-10-26 00:36:02 -04:00
Daniel Agar 6d2f592c16 logger: add vehicle_constraints to default set 2020-10-26 00:36:02 -04:00
PX4 BuildBot 53b5e2d863 Update submodule sitl_gazebo to latest Sun Oct 25 20:37:27 EDT 2020
- sitl_gazebo in PX4/Firmware (945c17bc3f): https://github.com/PX4/sitl_gazebo/commit/4f03afc7def0b958e7567a35093bacf93dcc824f
    - sitl_gazebo current upstream: https://github.com/PX4/sitl_gazebo/commit/2451437c19ed9fcdf8a79990313e768c98aa15b6
    - Changes: https://github.com/PX4/sitl_gazebo/compare/4f03afc7def0b958e7567a35093bacf93dcc824f...2451437c19ed9fcdf8a79990313e768c98aa15b6

    2451437 2020-10-24 Igor Campos - fix #638 - geotagging plugin not working: subscribed to wrong topic
9f832e5 2020-10-09 JaeyoungLim - Add groundtruth plugin
dcae3ed 2020-09-29 JaeyoungLim - Switch tiltrotor to jinja templates
928169c 2020-09-28 JaeyoungLim - Move where the gps joint is being defined
60897b7 2020-08-24 JaeyoungLim - Fix tiltrotor model
9f82ad4 2020-10-22 JaeyoungLim - Move rover models to jinja templates (#629)
00d6f2f 2020-10-21 Thies Lennart Alff - Adding Model of BlueROV2 (heavy configuration) (#637)
b15784d 2020-10-19 Vojtech Spurny - gazebo_gps_plugin fix and enhancement (#635)
2020-10-25 23:54:33 -04:00
Daniel Agar 614a0ac2a2 experimental/gyro_fft: improve peak detection, add start parameter
- add new parameter `IMU_GYRO_FFT_EN` to start
 - add 75% overlap in buffer to increase FFT update rate
 - space out FFT calls (no more than 1 per cycle)
 - increase `IMU_GYRO_FFT_MIN` default
 - decrease main stack usage
2020-10-25 23:48:21 -04:00
Daniel Agar 945c17bc3f move subsystem_info entirely into commander and remove from uORB
* HealthFlags: define bitfield using 1<<X

Co-authored-by: Matthias Grob <maetugr@gmail.com>
2020-10-25 10:08:15 -04:00
Igor Mišić ea3d202370 spracing_h7extrem: Updated gyros to use icm20602 drivers. 2020-10-24 11:54:13 -04:00
Daniel Agar 6285e06fe2 mc_pos_control: split out header and name consistently 2020-10-23 15:06:04 -04:00
Matthias Grob 1fb4f960cd FlightTaskAuto: Lock down yaw when waypoint is reached
This is done to prevent yawing 180 degrees when switching
to hold mode with high velocity and the overshoot causing a 180°
yaw turn.

The yaw is unlocked on waypoint updates and the yaw
setpoint generation had to be put at the end because otherwise the
first yaw calculation is with the old waypoint and immediately
locks again.
2020-10-23 20:54:01 +02:00
Daniel Agar 81765bc06a commander: PreFlightCheck remove HIL special cases
- skipping these sensor checks in HIL no longer makes sense as each
sensor has a normal publication (sensor_accel/gyro/etc) regardless of
simulation
2020-10-23 11:25:50 -04:00
Matthias Grob 4378254182 Fix NuttX build under Cygwin
after NuttX 9.1.0+ upgrade #15139
2020-10-23 06:56:31 -07:00
David Sidrane d8a03d04a7 nxp_rddrone-uavcan146:Fixed wrong SPI CLK Pin 2020-10-23 09:18:24 +02:00
Beat Küng d2644a3bf7 distance_sensor/sf0x: rename to lightware_laser_serial 2020-10-22 11:30:50 -04:00
Beat Küng a68ac95399 distance_sensor/sf1xx: rename to lightware_laser_i2c 2020-10-22 11:30:50 -04:00
Beat Küng 6d2e306d50 sf1xx: use new protocol for LW20/c
benefits:
- read & validate product name
- sensor configuration with the output we want (raw distance data)
- get signal quality

Protocol description: http://support.lightware.co.za/sf20/#/commands

Other Lightware sensors can easily be moved over to that as well.
2020-10-22 11:30:50 -04:00
Beat Küng c0cf144a5a ll40ls: fix rotation -> orientation 2020-10-22 11:30:50 -04:00
JaeyoungLim 46d79d3050 Remove exception of actuator scaling for airships (#16011)
This removes the exception handling of airship type vehicles when scaling actuators for the simulator
2020-10-22 10:37:03 +02:00
Hamish Willee d91d7e3282 parameter markdown table - remove styling 2020-10-22 08:05:41 +02:00
Lorenz Meier b14d0e4326 Update MAVLink shell default device for modern Mac OS
The enumeration changed from usbmodem1 to usbmodem01 and this tracks this OS-level naming change.
2020-10-21 12:11:31 -04:00
Daniel Agar 0b74076265 msg: only include orb_test messages if PX4_TESTING enabled 2020-10-20 15:17:09 -04:00
Daniel Agar 2201424dfd micrortps_bridge: don't reuse msg_files variable (now global) 2020-10-20 11:05:47 -04:00
Daniel Agar 1eb3c59277 systemcmds/topic_listener: use msg_files list from msg/ 2020-10-20 11:05:47 -04:00
Daniel Agar 16119f0e8c mavlink debug messages disable on CONSTRAINED_FLASH boards
- mavlink messages DEBUG/DEBUG_FLOAT_ARRAY/DEBUG_VECT/NAMED_VALUE_FLOAT move to separate stream headers and don't include if CONSTRAINED_FLASH
 - mavlink receiver DEBUG/DEBUG_FLOAT_ARRAY/DEBUG_VECT/NAMED_VALUE_FLOAT handling excluded if CONSTRAINED_FLASH
 - msg: skip debug_array.msg, debug_key_value.msg, debug_value.msg, debug_vect.msg if CONSTRAINED_FLASH
2020-10-20 11:05:47 -04:00
Julian Kent d9b3db1082 Check that home position is valid in RTL (#15964) 2020-10-20 10:31:44 +02:00
Beat Küng 5f27407acd tests: don't run battery_simulator
The battery migration interferes with the tests.
2020-10-20 09:18:47 +02:00
Beat Küng f776997a07 battery: disable secondary module by default
Avoid a GCS showing 2 battery indicators.
Alternatively we could also check the 'connected' flag, but this is more
explicit.
2020-10-20 09:18:47 +02:00
Beat Küng 83b81fbbef battery: fix isFloatEqual(), use matrix::isEqualF
Fixes param migration, e.g. if BAT_N_CELLS is set, migrates to
BAT1_N_CELLS.
2020-10-20 09:18:47 +02:00
Beat Küng 6ae17eb13c fix EscBattery: remove _battery.publish();
updateBatteryStatus() already publishes
2020-10-20 09:18:47 +02:00
Daniel Agar be0f884dde commander: preflight check don't read mag device_id 2020-10-19 23:01:02 -04:00
Daniel Agar b08b83ba48 logger: logged topics support up to 4 accels/baros/gyros 2020-10-19 18:30:22 -04:00
Tomasz Domański 887486d4fa Tools/setup: Add apt-get update after adding gazebo list 2020-10-19 17:19:18 -04:00
Oleg Kalachev c302514a08 mavlink: expose kill switch status 2020-10-19 10:49:52 -04:00
Beat Küng d0fd60de8d output_limit: use add_library instead of px4_add_library
px4_add_library adds uorb dependencies, which since cf26f24387 added libm.
This in turn led to build failures for px4_io-v2 in the form of:
__aeabi_f2d' wf_sqrt.c:(.text.sqrtf+0x54): undefined reference to
__aeabi_ddiv'
2020-10-19 09:45:46 -04:00
FengShun d19b54481a fix: uORB topics lost messages when publications overflow 2020-10-19 08:52:55 +02:00
PX4 BuildBot b4a22437ab Update submodule sitl_gazebo to latest Sun Oct 18 08:37:29 EDT 2020
- sitl_gazebo in PX4/Firmware (224be8ba24): https://github.com/PX4/sitl_gazebo/commit/b943edaddee2b5e84e7bb489c43ebb13dd70495d
    - sitl_gazebo current upstream: https://github.com/PX4/sitl_gazebo/commit/4f03afc7def0b958e7567a35093bacf93dcc824f
    - Changes: https://github.com/PX4/sitl_gazebo/compare/b943edaddee2b5e84e7bb489c43ebb13dd70495d...4f03afc7def0b958e7567a35093bacf93dcc824f

    4f03afc 2020-10-16 Apurva Joshi - Update typhoon_h480.sdf (#636)
2020-10-18 11:44:54 -04:00
Daniel Agar 224be8ba24 drivers/uavcan: RGB LED support (publish uavcan::equipment::indication::LightsCommand)
Co-authored-by: Alex Mikhalev <alexmikhalevalex@gmail.com>
2020-10-17 12:33:09 -04:00
CUAVcaijie 70b67ddbff Add a USB ardupilot * type 2020-10-17 11:36:36 -04:00
Jaeyoung-Lim 3c20580533 Add support for malolo flying wing in JSBSim SITL
This commit adds SITL target for malolo flying wing and updates the jsbsim_bridge submodule to include the necessary changes.
2020-10-16 13:31:09 +02:00
David Sidrane 7d6f8dc882 mtd:Allow a Board to set the partition sizes.
To define an N way split this define the following:

        #define BOARD_HAS_MTD_PARTITION_OVERRIDE {"/fs/mtd_params", "/fs/mtd_waypoints","/fs/equal_part" }

	OR
        To define a percentage split this define the following:
        #define BOARD_HAS_MTD_PARTITION_OVERRIDE {"/fs/mtd_params", "/fs/mtd_waypoints","/fs/tiny" }
        #define BOARD_MTD_PARTITION_TABLE_SIZES {50.0f, 49.0f, 1.0f}
2020-10-15 17:22:50 -04:00
David Sidrane d4ae3985b3 px4-alias.sh_in:Remove source and add R=${pwd}
px4-alias.sh_in:Remove sh alias
2020-10-15 17:11:08 -04:00
David Sidrane b846ddffd8 Tools:Use . for (source) and ${R} for pathing 2020-10-15 17:11:08 -04:00
David Sidrane b9319b3843 ROMFS:Use . for (source) and ${R} for pathing
init.d-posix:rcS Quiet Shell check warning
2020-10-15 17:11:08 -04:00
David Sidrane 78221ee3d2 s32k1xx:Add PWM LED Support 2020-10-15 12:52:38 -07:00
David Sidrane 37e711c3fd s32k1xx:io_timer: Enable output channels 2020-10-15 12:52:38 -07:00
David Sidrane ddc161a10a nxp_rddrone-uavcan146:Add init to start PWM 2020-10-15 12:52:38 -07:00
David Sidrane 6394e06173 nxp_rddrone-uavcan146:Compresed ROM FS and friends 2020-10-15 12:52:38 -07:00
David Sidrane 59213ed8f6 nxp_rddrone-uavcan146:Add the pwm and suppor 2020-10-15 12:52:38 -07:00
David Sidrane 254ad40ad8 nxp_rddrone-uavcan146:Init the timers 2020-10-15 12:52:38 -07:00
David Sidrane 4099d38ea8 nxp_rddrone-uavcan146: Add arch_io 2020-10-15 12:52:38 -07:00
David Sidrane d3fdb2b6ad nxp_rddrone-uavcan146 add board functions supporting pwm_out 2020-10-15 12:52:38 -07:00
David Sidrane d4fb063651 nxp_rddrone-uavcan146:boards Add KEEP on init_section 2020-10-15 12:52:38 -07:00
Jari van Ewijk 61f9996d6b S32K1XX: Report right MCU version 2020-10-15 12:52:38 -07:00
Jari van Ewijk 35dce9aff6 NXP UCANS32K: Add Support for PWM
S32K1XX HRT: Allow any channel of any FTM timer to be used

NXP UCANS32K: Enable additional FlexTimers and use FTM5 for HRT

NXP UCANS32K - Change FTM clocksource to system oscillator

NXP UCANS32K - Only need one FlexTimer and channel for PWM output

NXP UCANS32K will have only one PWM header by default

S32K1XX support FlexTimers beyond FTM3

S32K1XX io_timer.c - replace references to Kinetis

S32K1XX io_timer.c correct register names

S32K1XX input_capture.c and pwm_servo.c replace references to Kinetis
2020-10-15 12:52:38 -07:00
Silvan Fuhrer 4ed3ecea41 lis2mdl: reduce update rate from 50Hz to 20Hz to reduce spikes
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-10-15 09:55:40 +02:00
Daniel Agar d985887468 ekf2: use new Param<> reset method 2020-10-15 08:32:05 +02:00
Daniel Agar 7255f5feac parameters: add param_reset_no_notification()
- add reset() to Param<>
2020-10-15 08:32:05 +02:00
PX4 BuildBot d8448c0a76 Update submodule v2.0 to latest Wed Oct 14 19:19:57 EDT 2020
- v2.0 in PX4/Firmware (34ced0c26c): https://github.com/mavlink/c_library_v2/commit/894599e6cba3ca6e8a32a68065b15d1a91c35af2
    - v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/1eff57ee1e54fbed0b24617b1d4452d26d8b2221
    - Changes: https://github.com/mavlink/c_library_v2/compare/894599e6cba3ca6e8a32a68065b15d1a91c35af2...1eff57ee1e54fbed0b24617b1d4452d26d8b2221

    1eff57e 2020-10-14 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/162381c6d43db57afcf1f25de403d35c5f5db4b3
075f46c 2020-10-14 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/4413195381eb850aa33b18c539abd68437a9b3ac
e9813d0 2020-10-14 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/e9704daf9a34c64c47c8010033e1c22c0ceaa5a4
b156279 2020-10-14 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/4cf81ef0a3da38f43346ab263422363f6dbbf38b
47b8476 2020-10-13 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/bb1c55d1a598ddb487e309b7a35c70e65234b98b
da412c5 2020-10-11 PX4BuildBot - autogenerated headers for rev https://github.com/mavlink/mavlink/tree/52e3f7842e35c42ee4586fdbd1f1117714d3373c
2020-10-14 20:26:39 -04:00
PX4 BuildBot 22a817d1fc Update submodule nuttx to latest Wed Oct 14 19:20:05 EDT 2020
- nuttx in PX4/Firmware (8c8f594b24bddbb69c95772d80d51d3d62f4ad39): https://github.com/PX4/NuttX/commit/724aa6c1d3dda6cbb86f1461a79d2827870ece47
    - nuttx current upstream: https://github.com/PX4/NuttX/commit/19c831f409c9d8e51e8b41e531cf658f2175a2e9
    - Changes: https://github.com/PX4/NuttX/compare/724aa6c1d3dda6cbb86f1461a79d2827870ece47...19c831f409c9d8e51e8b41e531cf658f2175a2e9

    19c831f 2020-10-14 David Sidrane - [BACKPORT] kinetis:flexcan fixed compile error clock_systimespec->clock_systime_timespec
2020-10-14 20:25:54 -04:00
JaeyoungLim 34ced0c26c Cleanup jsbsim run scripts (#15959)
* Cleanup startup scripts

This commit cleansup the run script for the jsbsim_bridge

* Update jsbsim_bridge submodule
2020-10-14 16:41:11 +02:00
David Sidrane 6416abc817 Nuttx with kinetis BP tix for socketcan 2020-10-14 09:50:24 -04:00
David Sidrane 1e0f3a1e9c px4_fmu-v5x base_phy_DP83848C:Use 32kHz clock for RTC 2020-10-14 14:55:55 +02:00
David Sidrane 7f804b5508 px4_fmu-v5x:Use 32kHz clock for RTC 2020-10-14 14:55:55 +02:00
mcsauder 047531b924 Add MavlinkStreamGPSStatus status class stream via GPS_STATUS.hpp and add PRN code to satellite_info.msg. 2020-10-14 08:26:42 +02:00
David Sidrane de6d31ef3e hardfault_log:Fix hard fault - while hard fault logging 2020-10-13 18:50:43 -04:00
Daniel Agar 8d1b99be31 mavlink: telemetry status only log simple HEARTBEAT validity
* delete telemetry_heartbeat msg
 * delete unused _telemetry_status_mutex
2020-10-13 13:37:10 -04:00
Daniel Agar d71ca37087 navigator: publish navigator mission item changes for logging
- new msg navigator_mission_item for inspecting navigator mission item processing
2020-10-13 12:12:03 -04:00
Jacob Dahl 74c9ba8d55 fix px_uploader bytes and char comparison & remove python 2 support (#15859) 2020-10-13 09:30:37 +02:00
Alex Mikhalev c2af7ba961 uavcan: gnss: Implement RTCM data for RTK (#15921)
Forwards messages on the gps_inject_data uORB topic as
uavcan::equipment::gnss::RTCMStream messages on the UAVCAN bus. This
enables differential/RTK GPS over UAVCAN to work.

Tested with CubePilot Cube Orange, Here+ base and Here3 rover.

Signed-off-by: Alex Mikhalev <alexmikhalevalex@gmail.com>
2020-10-13 09:28:25 +02:00
Daniel Agar 34ad85557e Revert "mavlink: increase stack 2650 -> 2848 bytes (#15821)"
This reverts commit e792c46f20.
2020-10-12 20:58:35 -04:00
Daniel Agar 5c2cc53134 Revert "logger: log_writer_file increase stack 1170 -> 1472 bytes (#15765)"
This reverts commit d676e65294.
2020-10-12 20:58:35 -04:00
David Sidrane 17ada7cf32 Nuttx with arm stack fix backport 2020-10-12 19:56:00 -04:00
Daniel Agar f557fa46e8 gyro_fft improve peak finding, parameterize min/max frequencies, remove debug logging
- add min/max frequency parameters for peak detection (IMU_GYRO_FFT_MIN, IMU_GYRO_FFT_MAX)
 - remove full FFT debug logging
 - fix Quinn's second estimator
 - log sensor_gyro_fft
 - fake_gyro use PX4Gyroscope
2020-10-12 15:19:39 -04:00
Beat Küng ff3008c051 calibration: add SYS_FAC_CAL_MODE parameter
If set, stores calibration parameters in separate storage /fs/mtd_caldata.
2020-10-12 15:22:26 +02:00
Beat Küng f1f6ca21cb rcS: try to load params from secondary storage if available 2020-10-12 15:22:26 +02:00
Beat Küng 3e9692c5bd param_import: add mark_saved argument
Behavior of the 'param import' command:
- if no file provided, parameters are marked as saved (differs from before)
- if a file is provided: parameters are not marked as saved
2020-10-12 15:22:26 +02:00
Beat Küng f6e8ddfaa0 param_export: add optional filter method 2020-10-12 15:22:26 +02:00
Beat Küng f927cacd9c v5x: enable eeprom storage on IMU board 2020-10-12 15:22:26 +02:00
Beat Küng c6cd0536d7 mtd: support multiple instances 2020-10-12 15:22:26 +02:00
Jacob Dahl 2b5b6b9430 fixed dps310 calibration coeffecient for c11 2020-10-12 09:35:27 +02:00
James Goppert 98c30dff44 Fixes for ROS based multi sim with jinja. (#15938) 2020-10-12 09:33:51 +02:00
Benjamin Perseghetti 8350fa702b Tools/setup/ubuntu.sh: fix for Ubuntu 20.04 - use gazebo11 2020-10-11 17:05:32 -04:00
Daniel Agar 0a985638e3 simulator: add inject failure messages for logging 2020-10-10 20:03:50 -04:00
Daniel Agar 76602b3a8f mavsdk_tests: longer climb (5 -> 10 seconds) in fly forward altctl/posctl tests 2020-10-10 20:03:50 -04:00
Daniel Agar da37f63bbd ROMFS: posix adjust standard vtol (1040) tuning 2020-10-10 20:03:50 -04:00
Daniel Agar 5fa1e8e8ba mavlink: stream rename GROUND_TRUTH -> HIL_STATE_QUATERNION 2020-10-10 19:49:41 -04:00
Daniel Agar cb4d974977 mavlink: move GROUND_TRUTH stream to separate file 2020-10-10 19:49:41 -04:00
Daniel Agar 283264603a mavlink: move PING stream to separate file 2020-10-10 19:49:41 -04:00
Daniel Agar 97dc988f86 mavlink: move ORBIT_EXECUTION_STATUS stream to separate file 2020-10-10 19:49:41 -04:00
Daniel Agar 826dfa1941 mavlink: move OBSTACLE_DISTANCE stream to separate file 2020-10-10 19:49:41 -04:00
PX4 BuildBot 68dca4b158 Update submodule sitl_gazebo to latest Sat Oct 10 16:43:28 UTC 2020
- sitl_gazebo in PX4/Firmware (dfbaf6607a): https://github.com/PX4/sitl_gazebo/commit/c3b15b7c9bf217c52f1e12fda0f861f6af5f31a9
    - sitl_gazebo current upstream: https://github.com/PX4/sitl_gazebo/commit/6b9c8f15c24b9ca365f3b13978fe792aa31a2fa3
    - Changes: https://github.com/PX4/sitl_gazebo/compare/c3b15b7c9bf217c52f1e12fda0f861f6af5f31a9...6b9c8f15c24b9ca365f3b13978fe792aa31a2fa3

    6b9c8f1 2020-10-10 Daniel Agar - mavlink interface round double sim time when converting to microseconds
b4cebfc 2020-10-09 JaeyoungLim - Support HIL configurations for generated models (#625)
b4d2d58 2020-10-09 Daniel Agar - mavlink interface poll until actuator received (#631)
2020-10-10 19:12:40 -04:00
PX4 BuildBot 6097ea3fb3 Update submodule CMSIS_5 to latest Sat Oct 10 16:43:35 UTC 2020
- CMSIS_5 in PX4/Firmware (7fc24ccb599b7b890983ee58ab82fcef502851bc): https://github.com/ARM-software/CMSIS_5/commit/03a697980f808120f1b75bfe0a96c2dd31bafbbc
    - CMSIS_5 current upstream: https://github.com/ARM-software/CMSIS_5/commit/4ed5730787a0f98e8858c9998e406c608ab10b28
    - Changes: https://github.com/ARM-software/CMSIS_5/compare/03a697980f808120f1b75bfe0a96c2dd31bafbbc...4ed5730787a0f98e8858c9998e406c608ab10b28

    4ed573078 2020-05-28 Jonatan Antoni - Docs: Updated generated documentation for CMSIS-Zone 1.1.0
c5ff98f52 2020-04-23 Jonatan Antoni - Utilities: Readded PackChk and SVDConv (not using Git-LFS) - PackChk 1.3.89 - SVDConv 3.3.35
5c1547f5d 2020-04-22 Jonatan Antoni - Removed Git-LFS filter from .gitattributes
8be87e257 2020-04-09 Jonatan Antoni - Pack: Purged pre-built library binaries from repo.
a65b7c9a3 2020-04-09 Jonatan Antoni - Bump version and docs for release.
71cca2783 2020-04-09 Jonatan Antoni - Merge branch 'develop/upstream' into master/upstream
4a65d8801 2020-02-26 Jonatan Antoni - Updated published documentation: - Added CMSIS-Build 0.1.1 - Updated CMSIS logo - Reduced nav bar component names
79bc1e065 2019-12-13 Jonatan Antoni - Doc: Update generated documentation for - CMSIS-Zone 1.0.0 - CMSIS-Pack 1.6.1
b5f0603d6 2019-07-10 Jonatan Antoni - Pack: Fixup to version history.
c314b9028 2019-07-10 Jonatan Antoni - docs: Updated generated docs for release 5.6.0
288a1ae6a 2019-07-10 Jonatan Antoni - Merge branch 'develop/upstream' into master/upstream
ca8124215 2019-03-21 Jonatan Antoni - Fixed generated documentation for 5.5.1 - Added general version history.
382cb5993 2019-03-21 Jonatan Antoni - DoxyGen: Fixed version and history of CMSIS 5.5.1 in documentation overview.
08ffc1624 2019-03-20 Jonatan Antoni - Generated documentation for release 5.5.1.
decf9e99d 2019-03-20 Jonatan Antoni - Merge branch 'develop/upstream' into master/upstream
a82c293bf 2019-03-18 Jonatan Antoni - Updated generated documentation.
3c188c8c1 2019-03-18 Jonatan Antoni - Merge branch 'develop/upstream' into master/upstream
607099e7b 2019-03-16 Jonatan Antoni - Device: Fixed device files for Armv8.1-MML
11b17447c 2019-03-15 Joachim Krech - WiFi api definition: file doc added
7a3ff1bba 2019-03-15 Jonatan Antoni - Docs: Updated generated documentation for 5.5.0
9510c40cd 2019-03-15 Jonatan Antoni - Merge branch 'develop/upstream' into master/upstream
cb3fb9a70 2018-09-03 Jonatan Antoni - Revert "Changed 'Serial Viewer Output' to 'Serial Wire Output'"
85f971366 2018-08-23 Florian Behrens - Changed 'Serial Viewer Output' to 'Serial Wire Output'
74b68d2b5 2018-08-23 Robert Rostohar - Merge pull request #411 from ARM-software/revert-410-fix_define
f568cf95d 2018-08-23 Robert Rostohar - Revert "Fix define around EvrRtxKernelInitialized"
cb270c6a7 2018-08-23 Robert Rostohar - Merge pull request #410 from c1728p9/fix_define
707444066 2018-08-22 Russ Butler - Fix define around EvrRtxKernelInitialized
0b5217650 2018-08-01 Jonatan Antoni - Docs: Updated generated documentation for 5.4.0
d8515eb5a 2018-08-01 Jonatan Antoni - Merge branch 'develop/upstream' into master/upstream
49ac527aa 2018-02-22 Jonatan Antoni - Doxygen: Fixed broken link from general revision history to Core(A) history.
ca68d1caa 2018-02-22 Jonatan Antoni - Utilities: Fixed gen_pack.bat to copy genmodel (Javadoc) as part of Zone documentation.
d3be1443d 2018-02-22 Jonatan Antoni - Docs: Updated documentation for release 5.3.0.
1e50f4fb3 2018-02-22 Jonatan Antoni - Merge remote-tracking branch 'remotes/upstream/develop' into master/upstream
9c4c35760 2018-01-23 Jonatan Antoni - Doc: Adding temporary redirect for CMSIS-NN to develop preview on keil.com. This redirect is going to be overwritten with the full documentation at next full release.
80cc44bba 2017-11-16 Jonatan Antoni - Pack: Added release date for 5.2.0
a7da04c26 2017-11-16 Jonatan Antoni - Updated generated documentation for release.
72db7faf6 2017-11-16 Jonatan Antoni - Merge branch 'develop/upstream' into master/upstream
7cd3d4765 2017-09-19 Jonatan Antoni - Updated generated documentation for release 5.1.1
cbdfdd09f 2017-09-19 Jonatan Antoni - Fixed version history for release 5.1.1
8e8312d2b 2017-08-18 Vladimir Umek - RTX5: latest libraries (IAR)
4d4b37265 2017-08-18 Robert Rostohar - RTX5: latest libraries (ARM/GCC)
84e191728 2017-08-18 Robert Rostohar - RTX5: Corrected SysTick and SVC Interrupt Priority for Cortex-M.
c5d6156df 2017-08-04 Jonatan Antoni - CMSIS 5.1.0 online documentation
d92f477be 2017-08-04 Jonatan Antoni - Merge branch 'develop' for release 5.1.0
8a1d9d6ee 2017-02-08 Joachim Krech - updating prebuild documentation for 5.0.1
de96b11d4 2017-02-08 Joachim Krech - Merge branch 'develop' for version 5.0.1
6c0e0c157 2016-11-11 Joachim Krech - CMSIS 5.0.0 online documentation
2020-10-10 13:25:12 -04:00
Daniel Agar 28efc95e29 ROMFS: posix rcS remove airframe specific defaults being applied everywhere
- these need to be set per airframe
2020-10-10 12:49:09 -04:00
Daniel Agar dfbaf6607a sensors/vehicle_imu: continue integrating queued raw data if falling behind 2020-10-10 12:30:26 -04:00
Daniel Agar f26d4f2b6b mavlink: stop unnecessarily passing around time 2020-10-09 10:30:30 -04:00
Daniel Agar 97cf714c7a mavlink: move HIGH_LATENCY2 stream to streams folder in a single header 2020-10-09 10:30:30 -04:00
Daniel Agar 94146a7b16 mavlink: move RAW_RPM stream to separate file 2020-10-09 10:30:30 -04:00
Daniel Agar 9c4abf334b mavlink: move ESC_INFO stream to separate file 2020-10-09 10:30:30 -04:00
Daniel Agar 1ddfd61d34 mavlink: move ESC_STATUS stream to separate file 2020-10-09 10:30:30 -04:00
Daniel Agar b51322e160 mavlink: name existing stream headers consistently and add include guards 2020-10-09 10:30:30 -04:00
Daniel Agar 674cd1e3b5 mavlink: move EXTENDED_SYS_STATE stream to separate file 2020-10-09 10:30:30 -04:00
JaeyoungLim 85e8c4801b Add techpod SITL Gazebo target (#15919)
* Add techpod SITL target

This adds a SITL target forthe techpod fixedwing model

* Update sitl_gazebo submoudle

This submodule update includes the techpod UAV model
2020-10-09 16:20:01 +02:00
Beat Küng 274ccaf57c system: include shutdown lock to BOARD_INDICATE_ARMED_STATE
BOARD_INDICATE_ARMED_STATE was only set during arming, so an external
component might have reset the board during param save, leading to param
loss.

This extends the API to trigger the arming state also while the shutdown
lock is taken.
2020-10-09 08:23:47 +02:00
jaeyoung 908444bd68 Add boat default rc to ROMFS
This adds the missing rc.boat_defautls to ROMFS
2020-10-09 08:11:59 +02:00
Daniel Agar eecf2e7a1e sensors: allow up to 4 accels, gyros, and baros and add configurable rotations for accel & gyro 2020-10-08 19:01:44 -04:00
Daniel Agar 28956e0399 Github actions: MAVSDK SITL tests fix log upload on failure 2020-10-08 13:10:08 -04:00
Daniel Agar 88c4876bac Update submodule mavlink v2.0 to latest Thu Oct 8 12:40:37 UTC 2020
- mavlink v2.0 in PX4/Firmware (3332f77773460a2a1463d6d7a14e5613eab166e7): https://github.com/mavlink/c_library_v2/commit/cc4220a4d4dcdf02ff3521764c120e9a4e974285
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/894599e6cba3ca6e8a32a68065b15d1a91c35af2
    - Changes: https://github.com/mavlink/c_library_v2/compare/cc4220a4d4dcdf02ff3521764c120e9a4e974285...894599e6cba3ca6e8a32a68065b15d1a91c35af2

Co-authored-by: PX4 BuildBot <bot@px4.io>
2020-10-08 09:40:04 -04:00
PX4 BuildBot 9940937636 Update submodule sitl_gazebo to latest Thu Oct 8 12:40:32 UTC 2020
- sitl_gazebo in PX4/Firmware (3f56cfe66e): https://github.com/PX4/sitl_gazebo/commit/9f74919d4db31ca561f28c4c3b8402856c26f01d
    - sitl_gazebo current upstream: https://github.com/PX4/sitl_gazebo/commit/e4e32117df1d8aba00b0685ebd0cc5ffc066a970
    - Changes: https://github.com/PX4/sitl_gazebo/compare/9f74919d4db31ca561f28c4c3b8402856c26f01d...e4e32117df1d8aba00b0685ebd0cc5ffc066a970

    e4e3211 2020-10-07 Daniel Agar - cmake: support ccache explicitly
97b90df 2020-10-07 Thies Lennart Alff - Add buoyancy in uuv_plugin (#627)
5e03a40 2020-10-07 JaeyoungLim - Deprecate xacro macros (#623)
30e3d6a 2020-10-07 JaeyoungLim - Only add accel/gyro turn on bias on startup (#626)
2020-10-08 09:39:06 -04:00
Daniel Agar 3f56cfe66e Update submodule mavlink v2.0 to latest Wed Oct 7 12:40:52 UTC 2020
- mavlink v2.0 in PX4/Firmware (d3ddca8bf3b409abcf7e0b7cc2b979a00cdbec73): https://github.com/mavlink/c_library_v2/commit/e3d00c443602ff81cc57123fbc3b50c250b3e9ad
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/cc4220a4d4dcdf02ff3521764c120e9a4e974285
    - Changes: https://github.com/mavlink/c_library_v2/compare/e3d00c443602ff81cc57123fbc3b50c250b3e9ad...cc4220a4d4dcdf02ff3521764c120e9a4e974285

Co-authored-by: PX4 BuildBot <bot@px4.io>
2020-10-07 14:13:11 -04:00
PX4 BuildBot deee2af7ae Update submodule ecl to latest Wed Oct 7 12:41:05 UTC 2020
- ecl in PX4/Firmware (6a18e45cf8225c6dab2e7c495ed687f449e8c44e): https://github.com/PX4/ecl/commit/4c2355a63821836bf8801e996d4651dcabe0287f
    - ecl current upstream: https://github.com/PX4/ecl/commit/f666ebb99552eed796e82a20bb60e813d45eee03
    - Changes: https://github.com/PX4/ecl/compare/4c2355a63821836bf8801e996d4651dcabe0287f...f666ebb99552eed796e82a20bb60e813d45eee03

    f666ebb 2020-10-06 Paul Riseborough - EKF: Code format fix - replace 1E-x with 1e-x
e82d0af 2020-10-06 Paul Riseborough - EKF: Improve code clarity - non functional change
1a7c68e 2020-10-06 Paul Riseborough - EKF: update change indicator
759d217 2020-10-05 Paul Riseborough - EKF: Improve protection for GSF weight collapse
7c81350 2020-10-04 Paul Riseborough - EKF: Don't yaw reset if not yaw induced nav failure
bf0d70f 2020-10-04 Paul Riseborough - EKF: Protect against collapse of GSF weights
2020-10-07 14:12:10 -04:00
Daniel Agar 378cb155d6 simulator: support accel/gyro instances and stuck failure
- expand simulator to 3 accels and gyros
 - PX4Accelerometer/PX4Gyroscope switch to old param usage due to copy constructor issues with ModuleParams
2020-10-07 13:20:13 -04:00
Daniel Agar c01fabaf11 FW move altitude first order hold (FOH) and loiter to position special cases from navigator to position controller
Co-authored-by: RomanBapst <bapstroman@gmail.com>
2020-10-06 16:57:12 -04:00
Daniel Agar 9838e340e0 systemcmds/tune_control: add play error documentation 2020-10-06 10:21:15 -04:00
JaeyoungLim e0dc9900aa Fix mavros tests by updating sdf version of the iris model
This commit switches the sdf version of the iris model from 1.7 to 1.6 so that it can be run on ROS melodic, which the MAVROS tests were running in
2020-10-06 09:56:32 -04:00
Silvan Fuhrer 84455ac9e3 logger: increase logging rate of airspeed_validated from 1Hz to 5Hz
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-10-06 09:31:58 +02:00
Silvan Fuhrer 5a184d2f5c Commenting and formating fixes
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-10-06 09:31:58 +02:00
Silvan Fuhrer 8f858d95e6 Rename equivalent airspeed (EAS) to calibrated airspeed (CAS)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-10-06 09:31:58 +02:00
Silvan Fuhrer f8d5b09b56 airspeed: remove duplicated comments from cpp (they should only be in header)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2020-10-06 09:31:58 +02:00
Daniel Agar f01c4e769f sensors/vehicle_imu: vehicle_imu_status add mean accel/gyro
- this makes it slightly easier to gather long term data for an Allan Variance
 - fixes https://github.com/PX4/Firmware/issues/6250
2020-10-05 22:18:03 -04:00
Daniel Agar 08bf71b73d drivers/tone_alarm and tune_control small improvements/cleanup
- drivers/tone_alarm: move to ModuleBase and purge CDev (/dev/tone_alarm0)
 - drivers/tone_alarm: only run on tune_control publication (or scheduled note) rather than continuously
 - drivers/tone_alarm: use HRT to schedule tone stop (prevents potential disruption)
 - msg/tune_control: add tune_id numbering
 - systemcmds/tune_control: add "error" special case tune_id
 - move all tune_control publication to new uORB::PublicationQueued<>
 - start tone_alarm immediately after board defaults are loaded to fix potential startup issues
 - for SITL (or other boards with no TONE output) print common messages (startup, error, etc)
2020-10-05 21:39:26 -04:00
jaeyoung c7072b61a3 Update jsbsim bridge to latest master
Update jsbsim bridge to latest master
2020-10-05 20:20:04 -04:00
jaeyoung b7c1f6a857 Update sitl_gazebo to latest master
Update sitl_gazebo to latest master
2020-10-05 20:18:59 -04:00
Daniel Agar 016ee6ea59 battery: fix duplicate uORB publish and minor cleanup
- run battery_status module on adc_report publications rather than a fixed schedule
2020-10-05 11:01:58 -04:00
Daniel Agar be28c4d309 lib/rc: dsm_bind() add debug output for binding
- trivial code style cleanup
2020-10-04 22:23:47 -04:00
Daniel Agar ddce711acb drivers/rc_input: command line bind use vehicle_command 2020-10-04 22:23:47 -04:00
Daniel Agar 1bf0218c87 boards: mRo Control Zero F7 fix RC input and cleanup sensors init 2020-10-04 22:23:47 -04:00
Daniel Agar eabbd19c1c commander: PreFlightCheck param_find all parameters immediately
- this ensures the relevant parameters are marked active immediately
before parameter sync
 - fixes https://github.com/PX4/Firmware/issues/15872
2020-10-03 14:43:21 -04:00
blazczak 57da61dc17 posix-configs/rpi: Fix mavlink over UART (/dev/ttyAMA0)
UART is the primary interface for telemetry radio: https://docs.emlid.com/navio2/ardupilot/hardware-setup/#uart-radio

Check first if /dev/ttyUSB0 exists (https://docs.emlid.com/navio2/ardupilot/hardware-setup/#usb-radio); if not, fall back to configuring over UART (/dev/ttyAMA0).

Use stricter check for character special file (-c) rather than just file (-f).

'console=serial0,115200' needs to be removed from /cmdline.txt as additional configuration step. This should be documented in the Navio2 section of docs.px4.io. Presumably, this is already performed as part of the Raspberry Pi OS prebuilt image Emlid spins.
2020-10-03 10:51:27 -04:00
Beat Küng 91fa2002e3 kakutef7: fix output ordering
Regression from d2254c2e44, I overlooked that they were defined in
reverse order.
2020-10-03 10:45:30 -04:00
Daniel Agar 8ee0c62e57 examples: add Gyro FFT using CMSIS 5 on Cortex-m (#15104)
- this is a work in progress experiment to compute real time FFTs from raw gyro FIFO data on Cortex-m hardware (stm32f4/f7/h7, etc)
2020-10-02 11:47:27 -04:00
Daniel Agar 23aa9ac70f cmake nuttx add STM32H7 debug helpers 2020-10-02 11:31:18 -04:00
Alex Mikhalev c648d52909 uavcan: Increase uavcan main stack size
I observed stack overflows when executing `uavcan params list`, so the
stack size probably needs to be increased.

Signed-off-by: Alex Mikhalev <alexmikhalevalex@gmail.com>
2020-10-02 01:31:27 -04:00
SalimTerryLi 25eca31e3a New board Scumaker AirPi HAT for Raspberry Pi B series 2020-10-01 11:22:47 -04:00
Nicolas MARTIN 967f741a0e commander: add parameter COM_REARM_GRACE to optionally disable re-arming grace period 2020-10-01 11:20:08 -04:00
Daniel Agar c1936dab1f commander: accel & gyro subsystem health set within IMU check 2020-09-30 12:17:48 -04:00
Daniel Agar 25c537bae9 commander: don't impose additional timeouts in sensor checks
- the sensors hub is responsible for sensor timeouts
2020-09-30 12:17:48 -04:00
CarlOlsson 98c8cbb27f ekf2: fix odom body rate sign bug 2020-09-30 11:34:37 -04:00
Julian Oes b454095776 commander: fix switch to loiter
Sometimes, the mission_result timestamp is the same as the
internal_state timestamp which would meant that we would not switch to
LOITER even though the takeoff is clearly done at that point.
2020-09-30 08:23:16 -04:00
David Sidrane 46f0388fc7 Reanable BL Update - Reverts b5267c06073023893d5a11b9011ef009b5291097 2020-09-29 23:44:24 -04:00
David Sidrane 68703135c3 bl_update:Respect page size if it matters
Track Changes in NuttX stm32h7 flash driver:
   The STM32H7 flash driver uses up_progmem_pagesize to
   describe minimum write size to satify the block size
   requierment for ECC.

   Therefore, the image size needs to be padded to a multiple
   of up_progmem_pagesize()
2020-09-29 23:44:24 -04:00
JaeyoungLim ff6b82cb6b Replace xacro macros to jinja templates for multivehicle (#15831)
This commit switches xacro macros to jinja templates for multivehicle simulations.
2020-09-29 15:45:57 +02:00
JaeyoungLim 9d3e159e65 Make mavsdk test runner handle generated sdf files (#15797)
Update sitl_gazebo
Fix indent errors
Fix syntax error
Fix indentation errors
Fix syntax errors
use autopep8
2020-09-29 15:44:58 +02:00
Daniel Agar c9c20666a2 sensors: sanity check differential pressure temperature (#15845)
- if valid temperature unavailable then use ICAO Standard Atmosphere 15 degrees celcius
2020-09-29 09:35:34 -04:00
Nicolas Martin da4d0e650a mc_pos_control: fix acc Z sign 2020-09-29 13:09:51 +02:00
Daniel Agar 24ffed827f ROMFS: 50000_generic_ground_vehicle remove fmu-v2 exclude
- this allows px4_fmu-v2_rover to function until we have a better mechanism for including or excluding ROMFS dependencies #15711
2020-09-28 22:43:28 -04:00
David Sidrane 59f20a26eb motor_params:Move to mixer_module
sensors having mixer_module creates a dependency on sensors for
   the param MOT_SLEW_MAX. Things that do not uses sensors.
   IE. PWM only device should not have to include them.
2020-09-28 20:47:40 -04:00
Daniel Agar f1feaf45d3 EKF2: move vehicle_odometry publish to method 2020-09-28 18:34:49 -04:00
Daniel Agar faccb0d948 Jenkins: HIL script minor improvements
- periodically send newline while checking for output or command completion (back to nsh prompt)
 - mtd test
 - fix adc test (now board_adc)
2020-09-28 16:41:28 -04:00
JaeyoungLim c342ab91b3 Fix the world path being corrupting when spawning none-default world
This fixes a bug, where the world file path was being corrupted when using non-default world paths
2020-09-28 13:07:29 -04:00
JaeyoungLim f7356d0286 Update jsbsim_bridge to latest master 2020-09-28 13:05:20 -04:00
Daniel Agar fe6a1ce882 simulator: fix airspeed temperature
- HIL_SENSOR temperature is only being sent with barometer data
2020-09-28 12:56:56 -04:00
Daniel Agar 828134c56f sensor_calibration: add link dependencies 2020-09-28 12:26:38 -04:00
David Sidrane 529d816a39 px4_fmu-v6x:Support ETM Hardware Trace 2020-09-28 10:59:39 -04:00
PX4 BuildBot 1822a678f6 Update submodule ecl to latest Mon Sep 28 12:39:19 UTC 2020
- ecl in PX4/Firmware (2b34fec0844646d13a57f78dbbed44b53813919e): https://github.com/PX4/ecl/commit/6b99ea2a6038c536f92aaa2b7d24ce7962e55df6
    - ecl current upstream: https://github.com/PX4/ecl/commit/4c2355a63821836bf8801e996d4651dcabe0287f
    - Changes: https://github.com/PX4/ecl/compare/6b99ea2a6038c536f92aaa2b7d24ce7962e55df6...4c2355a63821836bf8801e996d4651dcabe0287f

    4c2355a 2020-09-25 Daniel Agar - EKF: use GPS to lookup declination from WMM before full GPS checks pass
2020-09-28 10:58:33 -04:00
Daniel Agar cf26f24387 msg: add quaternion euler angle pretty print 2020-09-28 10:13:43 -04:00
justas- bb77f55f7b motor_test: Use 1-based motor indexing.
Motors in Px4 ecosystem are indexed using 1-based indexing (Airframe reference, dshot command, etc.) motor_test command is 0-based. This PR changes motor_test to use 1-based indexing.

This PR refers to Github issue #15721.
2020-09-28 10:59:41 +02:00
flochir ec7108892b batt_smbus: fix potential hardfault by checking buffer sizes (#15789)
* Added buffer length check to SMBus::block_read (triggered hardfault in batt_smbus module by writing beyond buffer end due to device returning longer byte_count than requested/expected)

Co-authored-by: Florian Olbrich <florian.olbrich@scarabot.de>
Co-authored-by: Daniel Agar <daniel@agar.ca>
Co-authored-by: BazookaJoe1900 <BazookaJoe1900@gmail.com>
Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2020-09-28 09:41:40 +02:00
Daniel Agar 6a08e16351 Update submodule mavlink v2.0 to latest Sat Sep 26 15:30:19 UTC 2020
- mavlink v2.0 in PX4/Firmware (aab65cdc3261a4ca315d5b91d65e0dd3e39940d0): https://github.com/mavlink/c_library_v2/commit/09524c98db4eb389d3d50f7905a17805b216a9ea
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/e3d00c443602ff81cc57123fbc3b50c250b3e9ad
    - Changes: https://github.com/mavlink/c_library_v2/compare/09524c98db4eb389d3d50f7905a17805b216a9ea...e3d00c443602ff81cc57123fbc3b50c250b3e9ad

Co-authored-by: PX4 BuildBot <bot@px4.io>
2020-09-26 13:14:25 -04:00
PX4 BuildBot 6df50cb74f Update submodule ecl to latest Sat Sep 26 15:30:31 UTC 2020
- ecl in PX4/Firmware (5784cb6e5eb74fcf07f3da058692c7c2320851b9): https://github.com/PX4/ecl/commit/fab242a81f3836de716b0ed96fcc841360c3a867
    - ecl current upstream: https://github.com/PX4/ecl/commit/6b99ea2a6038c536f92aaa2b7d24ce7962e55df6
    - Changes: https://github.com/PX4/ecl/compare/fab242a81f3836de716b0ed96fcc841360c3a867...6b99ea2a6038c536f92aaa2b7d24ce7962e55df6

    6b99ea2 2020-09-24 Daniel Agar - ECL standalone build improve ECL_INFO/WARN/DEBUG
5879eaa 2020-09-25 bresch - ekf: fix variable length array error
99aafba 2020-09-14 Daniel Agar - README: remove obsolete build status
2020-09-26 13:13:51 -04:00
Tanja Baumann b5ebdb8e41 add system command to get and set system time
* add system_time command for all boards
2020-09-26 13:09:01 -04:00
PX4 BuildBot b5df4f76cc Update submodule nuttx to latest Sat Sep 26 15:30:26 UTC 2020
- nuttx in PX4/Firmware (59f5b841a6646a7ae514ae1139ba18c3f787ceb3): https://github.com/PX4/NuttX/commit/a8b7ca869e08e0ca58f20ae1e5732220ef98846f
    - nuttx current upstream: https://github.com/PX4/NuttX/commit/0fe69f6cc0a6f202b61ff81be0560cafb8f3a89d
    - Changes: https://github.com/PX4/NuttX/compare/a8b7ca869e08e0ca58f20ae1e5732220ef98846f...0fe69f6cc0a6f202b61ff81be0560cafb8f3a89d

    0fe69f6cc0 2020-09-25 David Sidrane - [BACKPORT] stm32f7:serial Bug Fix: Ensure next buffer is processed
2020-09-26 09:47:03 -07:00
Jacob Dahl a24488328f Move GPS blending from ekf2 to sensors module
- new sensors work item that subscribes to N x sensor_gps and publishes vehicle_gps_position
 - blending is now configurable with SENS_GPS_MASK and SENS_GPS_TAU

Co-authored-by: Jacob Crabill <jacob@volans-i.com>
Co-authored-by: Jacob Dahl <dahl.jakejacob@gmail.com>
2020-09-25 23:28:31 -04:00
Daniel Agar e792c46f20 mavlink: increase stack 2650 -> 2848 bytes (#15821) 2020-09-25 21:42:02 -04:00
Daniel Agar f37d0a85e2 Jenkins: remove remaining SITL tests (MC_avoidance/MC_safe_landing)
- MC_avoidance and MC_safe_landing are currently failing intermittently and will be migrated to Github Actions
2020-09-25 12:28:26 -04:00
Daniel Agar 861e06dfd7 mavlink: handle receiving GENERATOR_STATUS
- only published (ORB_ID(generator_status)) and logged for now
2020-09-25 11:36:58 -04:00
Daniel Agar c57a48682e Tools: ecl analysis handle estimator_innovations/estimator_innovation_variances size inconsistencies 2020-09-25 10:35:01 -04:00
Daniel Agar 2ccf664e95 commander: disarm from safety relax land detector timeout
- ensure land detector is updated before safety is checked
2020-09-25 09:41:53 -04:00
jaeyoung 1dbd7df83b Switch VERBOSE to VERBOSE_SIM
This changes the environment variable `VERBOSE` to `VERBOSE_SIM`, to explicitly state that it configures the verbose output of the simulation
2020-09-25 10:42:35 +02:00
Daniel Agar 60252dde08 Jenkins: SITL tests disable ninja build to reduce build parallelism
- test slaves have limited memory
2020-09-24 15:56:57 -04:00
Daniel Agar bbdc57a662 cmake: remove sitl_gazebo build -j2
- allow ninja build to automatically determine parallelism
2020-09-24 15:56:57 -04:00
Matthias Grob bcbc761bf6 Revert "Change defaults for MPC_LAND_ALT"
This reverts commit 59bd3e9f6e.
2020-09-24 19:18:58 +02:00
Daniel Agar 0dc8bb9c86 uORB: increase ORB_MULTI_MAX_INSTANCES 4 -> 10
- put more realistic bounds on maximum number of battery instances, gps, etc
2020-09-24 11:01:28 -04:00
Daniel Agar f04f0c89ca boards: CUAV Nora/X7pro fix BOARD_DSHOT_MOTOR_ASSIGNMENT
- BOARD_DSHOT_MOTOR_ASSIGNMENT isn't needed if there's no remapping
2020-09-24 10:53:54 -04:00
Daniel Agar 762d925d20 boards: cubepilot orange/yellow fix BOARD_DSHOT_MOTOR_ASSIGNMENT 2020-09-24 10:53:54 -04:00
Matthias Grob 5d47a4c9e0 Commander: fix rc override threshold scaling (#15807)
Improve parameter description for threshold
and lower the threshold a bit.
2020-09-24 14:52:19 +02:00
Daniel Agar 0a607bdc67 boards: CUAV CAN_GPS v1.2 cannode (stm32f412) with UAVCAN bootloader 2020-09-23 14:30:54 -04:00
Daniel Agar 8579b5dd26 uORB: Subscription add copy/move constructor and assignment 2020-09-23 10:04:54 -04:00
Matthias Grob bf248746ce mavlink_messages: cast rotation types for assert 2020-09-23 09:08:23 -04:00
Daniel Agar d5295ef4e1 mavlink: add static asserts to keep MAV_SENSOR_ROTATION in sync with PX4 ROTATION 2020-09-22 11:10:31 -04:00
Daniel Agar 00e955cc3e rotations: sync rotation enum, SENS_BOARD_ROT, CAL_MAGx_ROT with MAV_SENSOR_ORIENTATION 2020-09-22 11:10:31 -04:00
Daniel Agar 8b26b84fd1 Jenkins: hardware disable holybro durandal bootloader update
- this is currently bricking the board
2020-09-21 22:51:11 -04:00
Daniel Agar 43903dcb79 Jenkins: temporarily disable catkin build on ROS workspace 2020-09-21 22:48:33 -04:00
Daniel Agar d676e65294 logger: log_writer_file increase stack 1170 -> 1472 bytes (#15765) 2020-09-21 22:17:31 -04:00
Yashom Dighe 5daca6c2c4 IntrusiveSortedList.hpp: let operator* return a reference
So that clang 12 does not complain:
loop variable 'child' is always a copy because the range of type 'List<ModuleParams *>' does not return a reference

Co-authored-by: Yashom Dighe <yashom7@gmail.com>
2020-09-21 16:55:04 -04:00
Daniel Agar e4a408bc55 cmake nuttx build modify copied nuttx repo .git to point to actual git dir
- this fixes builds that contain a px4io and use the Makefile generator rather than Ninja
2020-09-21 12:39:29 -04:00
Daniel Agar 4d97772756 vscode: SITL debug add gazebo world select 2020-09-21 11:56:25 -04:00
Daniel Agar 2728af4264 boards: cubeorange and cubeyellow disable serial console (used for ADSB on new carrier boards)
- add console builds (cubepilot_cubeorange_console) for hardware test rack and developers
2020-09-21 11:53:49 -04:00
bresch 1141cfa7c6 ekf2_main: reduce update mag bias minimum learning time to 30s
120 seconds of learning time in 3D fusion mode was too long for most normal flights. The learned bias is usually really good after a shorter period and was not used to update the parameters. 30s seems to be a good compromise.
2020-09-21 15:54:24 +02:00
Beat Küng 5ac0c7c799 List.hpp: let operator* return a reference
So that clang 12 does not complain:
loop variable 'child' is always a copy because the range of type 'List<ModuleParams *>' does not return a reference
2020-09-21 09:23:21 -04:00
Daniel Agar 09af5e0637 commander: mag calibration use expected WMM sphere radius to reject samples if GPS is available 2020-09-20 12:22:56 -04:00
bazooka joe 727b0cf530 moved posix airframe files to folder, same as in regullar init.d folder
and add some debugging info when succeeded/fail to find air-frame file
2020-09-19 21:31:39 -04:00
Daniel Agar 940dc9cca0 cmake NuttX build fix path to git dir
- this relative path was incorrect for the px4io when using the Makefile generator and built for inclusion within another build (eg px4_fmu-v5_default)
2020-09-18 21:18:36 -04:00
Daniel Agar abbd335e4e uavcannode: use correct PYTHON_EXECUTABLE and support stm32h7
- sync CMakeLists.txt with drivers/uavcan
2020-09-18 13:03:07 -04:00
Daniel Agar d61fd0e4ca update all px4-dev-base and px4-dev-nuttx container usage uniformly 2020-09-18 13:03:07 -04:00
Daniel Agar 41a2fe5bdf gitmodules update NuttX branches 2020-09-18 12:10:34 -04:00
Beat Küng 5fdff6a0e4 i2c drivers: add '-k' flag for keep_running directly to BusCLIArguments 2020-09-18 09:45:06 -04:00
Beat Küng 1bf030e8ba lps33hw: refactor and add -k flag to keep running even if no sensor found 2020-09-18 09:45:06 -04:00
jaeyoung 24adf36097 Add jsbsim multirotor targets to cmake 2020-09-18 10:25:52 +02:00
Beat Küng f106e6b266 param: add 'param show-for-airframe' command
- simplifies creation of an airframe config
- could be done from QGC, but it only knows if a param is non-default from
  metadata, which can be incorrect/missing information
- for the list of exceptions we could look at '@category', but we don't have
  that info in the build
- there might be some more exceptions to be added
2020-09-18 09:03:29 +02:00
JaeyoungLim 458420f9cb Add jsbsim bridge to enable jsbsim for px4 SITL on jsbsim (#15748)
* Add jsbsim bridge to enable jsbsim for px4 SITL/HIL on jsbsim

This is a PX4 HIL/SITL integration into JSBSim. JSBSim is an open source flight dynamics model (http://jsbsim.sourceforge.net/)

Currently there are three models available which is the rascal, quadrotor_x, hexarotor_x integrated into the bridge.

The simulation can be run with the firmware with the following command for example
```
make px4_sitl jsbsim_rascal
```

The visualization is done flightgear and is done by the bridge sending UDP packets to flightgear. To disable the visualization `HEADLESS=1` when running the make command.

The simulation can be configured through the configuration files under the `config` directory through a xml file. Senor configurations,  The xml file name should match the name of the model.

* Update Tools/sitl_run.sh

Co-authored-by: Beat Küng <beat-kueng@gmx.net>

Co-authored-by: Beat Küng <beat-kueng@gmx.net>
2020-09-17 20:32:42 +02:00
David Sidrane c5f479dac7 uvify_core: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 240dfaa515 spracing_h7extreme: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane c7642288db px4_fmu-v6x: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 1a51a84130 px4_fmu-v6x: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane b83fdfda37 px4_fmu-v5x: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 733c1b747b px4_fmu-v5x: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 075690af9d px4_fmu-v5: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 8e3ba3b0b3 px4_fmu-v5: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane d2e7542e39 px4_fmu-v5: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane dab2069f53 px4_fmu-v5: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane e3f5af4887 px4_fmu-v5: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 8a3f4f285a px4_fmu-v5: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane ccc439504d px4_fmu-v4pro: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane f5fca39253 px4_fmu-v4: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 3457c30ab3 px4_fmu-v4: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 7a50f00b00 px4_fmu-v4: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 347ab5daaa px4_fmu-v3: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane c620059076 px4_fmu-v3: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 42b466dc45 px4_fmu-v2: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 4bc698e8e3 omnibus_f4sd: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 65ddf98d76 nxp_rddrone-uavcan146: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 94b5c961bc nxp_fmurt1062-v1: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane a7365100f4 nxp_fmuk66-v3: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 1936ead0b4 nxp_fmuk66-v3: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 3f82b19fc7 nxp_fmuk66-e: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane afad60a0bc nxp_fmuk66-e: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 00b4807443 mro_x21: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 4f5c88fc89 mro_x21-777: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 1e55ce0839 mro_ctrl-zero-f7: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 05a415cf4a modalai_fc-v1: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 0727db04a3 intel_aerofc-v1: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 15c8a26a21 holybro_pix32v5: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane f77bf7f475 holybro_kakutef7: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 6681b1ac44 holybro_durandal-v1: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 5dc5ef664f holybro_durandal-v1: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane fc5caf382c cubepilot_cubeyellow: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 0d9d1e79e8 cubepilot_cubeorange: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 5c95d8876a cuav_x7pro: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 9bd88c34a9 cuav_nora: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 9106386613 bitcraze_crazyflie: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane aa463e31b4 av_x-v1: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 34d1fcc704 airmind_mindpx-v2: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane c17a0ebacf holybro_durandal-v1:Add support for DMA on SPI6 2020-09-16 21:32:04 -04:00
David Sidrane 848b0ea88c cuav_x7pro:Add support for DMA on SPI6 2020-09-16 21:32:04 -04:00
David Sidrane 2745ffe946 cuav_nora:Add support for DMA on SPI6 2020-09-16 21:32:04 -04:00
David Sidrane 72c681134d px4_fmu-v6x:Add support for DMA on SPI6 2020-09-16 21:32:04 -04:00
David Sidrane 768ed297f2 uavcan_stm32h7:Support is by Family Not Chip/pacakge 2020-09-16 21:32:04 -04:00
David Sidrane f0b8bc9dd6 run-shellcheck appease shell check 2020-09-16 21:32:04 -04:00
David Sidrane f3c2ed5eb6 ROMFS/CMakeLists appease shell check 2020-09-16 21:32:04 -04:00
David Sidrane 6e1078c96e NuttX-Posix least bad LGD
Nuttx now supports sh and source (.)
   sh will open a new process for each invocation.
   This means the child can not modify the parent
   env. So we must use . to matain how nuttx worked.

   Since rc.vehicle_setup is used in both we use
   source and alis as we did with sh.
2020-09-16 21:32:04 -04:00
David Sidrane 323dd389fe vehicle_imu:VehicleIMU Fix style issues 2020-09-16 21:32:04 -04:00
David Sidrane d437379142 spracing_h7extreme:qspi Fix style issues 2020-09-16 21:32:04 -04:00
David Sidrane 59ba09d73c CI use 2020-08-14 with gcc 9.3.1 2020-09-16 21:32:04 -04:00
David Sidrane 760f2ecb22 LoadMon:track upstream malloc changes 2020-09-16 21:32:04 -04:00
David Sidrane c948d41284 up_cxxinitialize:is now automatic in task start 2020-09-16 21:32:04 -04:00
David Sidrane 185ffe9e13 nsh scripting:source (.) cmd supported 2020-09-16 21:32:04 -04:00
David Sidrane df30f29a55 NuttX/Make.defs.in Support PROBEs 2020-09-16 21:32:04 -04:00
David Sidrane fbf110f6be Use EXTRAFLAGS instead of EXTRADEFINES 2020-09-16 21:32:04 -04:00
David Sidrane b2a31e15da common:board_crashdump.c track upstream API change 2020-09-16 21:32:04 -04:00
David Sidrane f77fc690c7 hott:Fix compiler error array bound is unknown
This fixes error: variable-length array bound is unknown [-Werror=vla-larger-than=]
   with gcc 9.1
2020-09-16 21:32:04 -04:00
David Sidrane e3e7cb4158 PX4 add compiler dependent: disable no-stringop-truncation 2020-09-16 21:32:04 -04:00
David Sidrane c49c767d78 NuttX add compiler dependent: disable no-stringop-truncation 2020-09-16 21:32:04 -04:00
David Sidrane 4d64065422 NuttX:Make.defs.in fix macro to not kill flock 2020-09-16 21:32:04 -04:00
David Sidrane 852d5ceb22 NuttX CMakeLists build .version file in build 2020-09-16 21:32:04 -04:00
David Sidrane 68e3fd9f37 cpuload Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane 06d030b6d9 px4iofirmware Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane b32aab2d0f platform Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane 97c17d5d4a uvify_core Updates for NuttX 9.1.0-
uvify_core: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane f9adf861dc spracing_h7extreme Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane 8cb1fe5a54 px4_io-v2 Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane f870594f1d px4_fmu-v6x Updates for NuttX 9.1.0-
px4_fmu-v6x: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane acea295d5a px4_fmu-v5x Updates for NuttX 9.1.0-
px4_fmu-v5x: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane b52e10720e px4_fmu-v5 Updates for NuttX 9.1.0-
px4_fmu-v5: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane f98d10bf15 px4_fmu-v4pro Updates for NuttX 9.1.0-
px4_fmu-v4pro: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 9986f63321 px4_fmu-v4 Updates for NuttX 9.1.0-
px4_fmu-v4: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 0da14887d0 px4_fmu-v3 Updates for NuttX 9.1.0-
px4_fmu-v3: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 77ce7b2457 px4_fmu-v2 Updates for NuttX 9.1.0-
px4_fmu-v2: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 9a19340dc3 omnibus_f4sd Updates for NuttX 9.1.0-
omnibus_f4sd: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 1285c79b6b kinetis uavcan_drivers Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane ddacf357a7 nxp_rddrone-uavcan146 Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane 5698bc254a nxp_fmurt1062-v1:Track PX4 Sensor changes 2020-09-16 21:32:04 -04:00
David Sidrane 1abe88df61 nxp_fmurt1062-v1 Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane aa67fbdbcb nxp_fmuk66-e: Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane 8a673c8a3d nxp_fmuk66-v3 Updates for NuttX 9.1.0-
nxp_fmuk66-v3: defconfig MMCSD enable multiblock

nxp_fmuk66-v1:Disable multiblock as it fails
2020-09-16 21:32:04 -04:00
David Sidrane aa1cb370e4 mro_x21 Updates for NuttX 9.1.0-
mro_x21: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane c9a323ebcc mro_x21-777 Updates for NuttX 9.1.0-
mro_x21-777: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 2550d6f7c1 mro_ctrl-zero-f7 Updates for NuttX 9.1.0-
mro_ctrl-zero-f7: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane c8ef85c090 modalai_fc-v1 Updates for NuttX 9.1.0-
modalai_fc-v1: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 20398c3933 intel_aerofc-v1 Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane c2419e7f3d holybro_pix32v5: Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane abe9f1a768 holybro_kakutef7 Updates for NuttX 9.1.0-
holybro_kakutef7: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 59f914427c holybro_durandal-v1 Updates for NuttX 9.1.0-
holybro_durandal-v1: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane f21925f976 cubepilot_io-v2: Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane e8e463b875 cubepilot_cubeyellow Updates for NuttX 9.1.0-
cubepilot_cubeyellow: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 5691bf1dee cubepilot_cubeorange Updates for NuttX 9.1.0-
cubepilot_cubeorange: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane e16efd9643 cuav_x7pro Updates for NuttX 9.1.0-
cuav_x7pro: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 93e3b52515 cuav_nora Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane b8db1e6380 bitcraze_crazyflie Updates for NuttX 9.1.0-
bitcraze_crazyflie: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane e487833347 av_x-v1 Updates for NuttX 9.1.0-
av_x-v1: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane 8e97ae323e airmind_mindpx-v2 Updates for NuttX 9.1.0-
airmind_mindpx-v2: defconfig MMCSD enable multiblock
2020-09-16 21:32:04 -04:00
David Sidrane c57024e6bb NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
Julian Oes 720784b9e9 workflows: update MAVSDK used for SITL test 2020-09-16 12:51:56 -04:00
Julian Oes 44b4a6eb74 mavsdk_tests: increase time for manual tests 2020-09-16 12:51:56 -04:00
Julian Oes 9ed07a7873 simulator: fix temperature setting after rebase 2020-09-16 12:51:56 -04:00
Julian Oes e7651c94f6 mavsdk_tests: use custom rootfs, reset it
Instead of messing with existing params, use a separate rootfs for
tests, as suggested by @bkueng.
2020-09-16 12:51:56 -04:00
Julian Oes 517114042a failure: use time literal 2020-09-16 12:51:56 -04:00
Julian Oes a37b839e27 simulator: add missing timestamp 2020-09-16 12:51:56 -04:00
Julian Oes b1219811c5 mavlink: SYS_FAILURE_EN is just a bool
Thanks @bkueng for the review comment.
2020-09-16 12:51:56 -04:00
Julian Oes 012763e5f1 mavsdk_tests: fly forward a bit longer
Hopefully, that's long enough for slow VTOLs.
2020-09-16 12:51:56 -04:00
Julian Oes b4ac50ced4 failure: add missing command usage docstring 2020-09-16 12:51:56 -04:00
Julian Oes 58b4135ab0 mavsdk_tests: wait even longer
Again, hopefully that's enough.
2020-09-16 12:51:56 -04:00
Julian Oes a299e2c57d mavsdk_tests: fly forward even longer
Hopefully that's enough.
2020-09-16 12:51:56 -04:00
Julian Oes 4c00c1f561 mavsdk_tests: add missing switch to POSCTL 2020-09-16 12:51:56 -04:00
Julian Oes bbef07bc80 mavsdk_tests: init RC with throttle centered 2020-09-16 12:51:56 -04:00
Julian Oes c26b769cc0 mavsdk_tests: add missing type annotation 2020-09-16 12:51:56 -04:00
Julian Oes d2cb27e0de mavsdk_tests: try with faster RC rate 2020-09-16 12:51:56 -04:00
Julian Oes f8f03835ad mavsdk_tests: increase timeouts yet again
This is after using PX4 time to check for timeouts.
2020-09-16 12:51:56 -04:00
Julian Oes 3135b94980 mavsdk_tests: use PX4 time for timeouts
This way we are less dependent on CPU load of the host.
2020-09-16 12:51:56 -04:00
Julian Oes ca0f26a003 mavsdk_tests: added posctl/altctl test 2020-09-16 12:51:56 -04:00
Julian Oes 0a7dcf26d5 mavsdk_tests: clean up includes 2020-09-16 12:51:56 -04:00
Julian Oes 630a6f3810 mavsdk_tests: clear params between test cases 2020-09-16 12:51:56 -04:00
Julian Oes a5a577a6c4 mavsdk_tests: use speed factor, increase timeouts
We had not actually properly adjusted the timeout to the lockstep speed
factor. Once we did that, we had to increase the timeouts quite a bit to
have the tests pass.
2020-09-16 12:51:56 -04:00
Julian Oes 4eb1ea10f0 mavsdk_tests: don't block inside of callback
This is required with MAVSDK v0.29.0 and later!
2020-09-16 12:51:56 -04:00
Julian Oes 8d3f1e63f0 mavsdk_tests: use all os env vars by default 2020-09-16 12:51:56 -04:00
Julian Oes 55d2bdc438 mavsdk_tests: adapt to changed inject API
We now need to say which instance, for now it's all instances.
2020-09-16 12:51:56 -04:00
Julian Oes 06ad0de5eb workflows: move to MAVSDK v0.29.0 2020-09-16 12:51:56 -04:00
Julian Oes ed357cf356 mavsdk_tests: move math things to separate header 2020-09-16 12:51:56 -04:00
Julian Oes 1eaceb17dc mavsdk_tests: adjust timeouts by lockstep speed up 2020-09-16 12:51:56 -04:00
Julian Oes 4d76ed34f3 simulator: update temperature in sync with baro
This fixes the case where the baro was not rejected if stuck because the
temperature still varied.
2020-09-16 12:51:56 -04:00
Julian Oes 20621e6744 mavsdk_tests: add tests for GPS as height source 2020-09-16 12:51:56 -04:00
Julian Oes c31246e13a mavsdk_tests: add test for stuck mag 2020-09-16 12:51:56 -04:00
Julian Oes afcfa2fbe0 mavsdk_tests: check for stuck baro 2020-09-16 12:51:56 -04:00
Julian Oes a05ad9c64c mavsdk_tests: add wildcards for case filtering 2020-09-16 12:51:56 -04:00
Julian Oes c4efcbf895 mavsdk_tests: check for baro failure in mission 2020-09-16 12:51:56 -04:00
Julian Oes 8d6ebf15b6 mavsdk_tests: test for losing mag during mission 2020-09-16 12:51:56 -04:00
Julian Oes ef7e4531f9 mavsdk_tests: enable GPS lost test for VTOL
This is in multicopter mode only for now though.
2020-09-16 12:51:56 -04:00
Julian Oes 3c499fc3a2 mavsdk_tests: add first GPS lost failsafe test 2020-09-16 12:51:56 -04:00
Julian Oes db87ba3a1c systemcmds: add new failure command
This adds a new systemcmd to inject failures into the system.
2020-09-16 12:51:56 -04:00
Julian Oes a9c4f269bd simulator: use failure injection to block GPS
This uses the new failure injection system using vehicle_commands
instead of specific parameters. For now it implements GPS only.
2020-09-16 12:51:56 -04:00
Julian Oes 53b14233a2 mavlink: handle failure injection commands
This adds handling of MAVLink failure injection commands. An
additional parameter is added as a guard to prevent triggering any
failures by accident.
2020-09-16 12:51:56 -04:00
Daniel Agar 12ab762adc sensor_calibration: silence error if priority is -1 (uninitialized parameter value) 2020-09-16 12:32:40 -04:00
Daniel Agar 033f74b1c8 sitl_run.sh remove xtrace leftover from debugging 2020-09-16 10:43:29 -04:00
Peter van der Perk aaea6b3f3b Add FMUK66-V3 RTPS target to CI 2020-09-16 09:42:34 -04:00
Peter van der Perk 0caad08dd5 Added RTPS target for FMUK66-V3 2020-09-16 09:42:34 -04:00
Beat Küng abf5c2b301 ROMFS/CMakeLists.txt: change dependencies
- moves process airframe deps to the tar generation, to ensure whenever
  airframes are processed, the tar is extracted first.
  This is required, because if the airframe processing is done on pruned
  ROMFS, it's missing the tags.
- avoid using init.d/rcS in dependencies, use a separate file instead.
  This is because pruning modifies the rcS, and the next rebuild was
  seeing a changed rcS, resulting in unnecessary regeneration.
2020-09-16 09:30:58 -04:00
Daniel Agar 2b18b05a8a vscode updates and improvements
- fix gazebo SITL debug
     - now prompts you to select vehicle
 - devcontainer.json container support https://code.visualstudio.com/docs/remote/containers
     - this allows you to jump straight into working within a container (px4-dev-nuttx) on a fresh machine
     - also helps with Codespaces https://github.com/features/codespaces
 - plugin updates
    - cpp extension pack, spell checking, CTest support
 - cleanup intellisense
     - the backup tag parser was a resource hog and didn't work very well
 - fix problemMatcher support so that you can click on a build failure
2020-09-16 09:07:54 -04:00
Nicolas MARTIN 504730386a fix COM_ARM_AUTH comment 2020-09-15 22:12:55 -04:00
Daniel Agar 0e9a4cc65f boards: px4/sitl sync all build variants and fix none default package 2020-09-15 21:13:04 -04:00
Daniel Agar 5e4e4a4573 boards: aerotenna ocpoc fix package (new ROMFSROOT was missing) 2020-09-15 21:13:04 -04:00
Daniel Agar c41f053c7b vehicle_imu/vehicle_magnetometer add calibration indicator to message
- vehicle_imu/vehicle_magnetometer add monotonically increasing `calibration_count` field so that downstream subscribers are aware of calibration changes
2020-09-15 13:12:57 -04:00
Daniel Agar 87471a988d land_detector: use hover thrust if it was valid recently
- the hover thrust estimate will often invalidate upon ground contact, but before the land detector ground_contact triggers
 - use same time throughout call to avoid subtle timing surprises
2020-09-15 10:17:25 -04:00
Daniel Agar dc507ee544 sensors: add SENS_MAG_MODE to optionally publish all magnetometers 2020-09-15 10:15:39 -04:00
Daniel Agar a04412fc1f sensors: add SENS_IMU_MODE to optionally skip IMU voting/selection 2020-09-15 10:15:39 -04:00
Mirko Denecke 5ebc4d31da CubeOrange and CubeYellow IMU heating fix 2020-09-15 10:08:58 -04:00
Beat Küng ef55680ab1 sitl: enable EMBEDDED_METADATA to add parameter metadata to ROMFS 2020-09-15 09:30:16 +02:00
Beat Küng 0a061160f7 cmake px4_add_board: add EMBEDDED_METADATA
Allowing to put additional metadata into the ROMFS, the first is
parameters.json.gz.
2020-09-15 09:30:16 +02:00
Beat Küng d5b8f6cdf9 sitl_run.sh: cleanup, kill jmavsim only if $program == jmavsim 2020-09-15 09:30:16 +02:00
Beat Küng 055fa768d8 posix: enable ROMFSROOT
This will copy the ROMFS into the build directory under etc/, and thus
needs a change of the PX4 startup parameters and mixer paths.
2020-09-15 09:30:16 +02:00
Beat Küng d3362f38d1 parameters: add parameters.json.gz as output 2020-09-15 09:30:16 +02:00
Beat Küng 809d05053b posix: add support for ROMFSROOT
- add missing ROMFS files to CMakeLists.txt
- rename genromfs to etc, so that it's clearer for SITL use
2020-09-15 09:30:16 +02:00
SalimTerryLi 28a6e82698 Introduce new generic ADC driver for ADS1115 chip (#14437) 2020-09-14 11:03:40 -04:00
Ricardo Marques c15efea429 mavlink: publish ESC_INFO and ESC_STATUS
Signed-off-by: Ricardo Marques <marques.ricardo17@gmail.com>
2020-09-14 09:38:44 -04:00
flbernier 0ece66dc80 Add a internal start for rgbled_ncp5623c on fmu-v2 v3 v4pro 2020-09-14 09:31:31 -04:00
JaeyoungLim 0592f6ba6e Support gliding setpoints for autonomous soaring (#14643)
* Enable offboard gliding position setpoints

Adds a capability to make the vehicle glide when given position setpoints.

Gliding setpoints are enabled by setting POSITION_TARGET_TYPEMASK_Z_IGNORE, POSITION_TARGET_TYPEMASK_VZ_IGNORE,  POSITION_TARGET_TYPEMASK_AZ_IGNORE on the typemask of position setpoints.
Include zero cruising throttle
Invalid setpoints with nan

* Handle nans for curise_throttle
2020-09-14 10:56:29 +02:00
PX4 BuildBot 8bc512dc93 Update submodule sitl_gazebo to latest Mon Sep 14 00:39:41 UTC 2020
- sitl_gazebo in PX4/Firmware (ac732cdeba): https://github.com/PX4/sitl_gazebo/commit/78bba3f25e7e240bf70878bd007dfd77b33440c1
    - sitl_gazebo current upstream: https://github.com/PX4/sitl_gazebo/commit/9d2b19784cb34bf8f397ab2e2f368f682f2d5d5a
    - Changes: https://github.com/PX4/sitl_gazebo/compare/78bba3f25e7e240bf70878bd007dfd77b33440c1...9d2b19784cb34bf8f397ab2e2f368f682f2d5d5a

    9d2b197 2020-09-12 JaeyoungLim - Use jinja templates for standard_vtol and plane model (#590)
01587e6 2020-09-12 Lorenz Meier - Include GLib2 properly The previous approach did not actually search for glib2 in the system but hardcoded the name.
e49fac5 2020-09-12 bazooka joe - cleanups: rename class vars to be with underscore
6fb9bd9 2020-09-12 bazooka joe - move initializers to h file
29999c6 2020-09-12 JaeyoungLim - Update boat gps sensor (#595)
a208640 2020-09-09 petertheprocess - fix the rudder deflection bug. (#588)
2020-09-13 21:41:22 -04:00
PX4 BuildBot 1ad2e85475 Update submodule ecl to latest Mon Sep 14 00:39:58 UTC 2020
- ecl in PX4/Firmware (3011684f9154975f4db1581d9466524a02d4cbf3): https://github.com/PX4/ecl/commit/a204c599903e6a462cab17bee061d4418a8b6b53
    - ecl current upstream: https://github.com/PX4/ecl/commit/fab242a81f3836de716b0ed96fcc841360c3a867
    - Changes: https://github.com/PX4/ecl/compare/a204c599903e6a462cab17bee061d4418a8b6b53...fab242a81f3836de716b0ed96fcc841360c3a867

    fab242a 2020-09-06 Daniel Agar - python generation add shebang, mark executable, ignore cache
2020-09-13 21:37:01 -04:00
Daniel Agar 2b04ae3a05 Update submodule mavlink v2.0 to latest Mon Sep 14 00:39:47 UTC 2020
- mavlink v2.0 in PX4/Firmware (8d63bbe7d06ac13a5e78905886cfa51a53d0de92): https://github.com/mavlink/c_library_v2/commit/efc2a1fa7e1c7814ca7b65f484f6e9968cb8f1c8
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/09524c98db4eb389d3d50f7905a17805b216a9ea
    - Changes: https://github.com/mavlink/c_library_v2/compare/efc2a1fa7e1c7814ca7b65f484f6e9968cb8f1c8...09524c98db4eb389d3d50f7905a17805b216a9ea

Co-authored-by: PX4 BuildBot <bot@px4.io>
2020-09-13 21:23:46 -04:00
Daniel Agar 13db2ebb2b accel/gyro/mag calibration set default priority uninitialized
- this allows the default priority to be set differently for internal/external sensors
 - accel and gyro initialize default priority like mag in preparation for fully supporting external sensors
 - fixes #15652
2020-09-13 21:02:53 -04:00
Daniel Agar d70e183f5b commander: sensor calibration check parameter save success 2020-09-13 21:00:40 -04:00
Daniel Agar 04214a347e lib/sensor_calibration: check param save success and comment helpers 2020-09-13 21:00:40 -04:00
Mirko Denecke ac732cdeba STM32H7 CAN: fix uninitialized pending variable 2020-09-13 18:58:57 -04:00
Beat Küng 2b0396d5df gps: use px4::atomic instead of volatile 2020-09-13 18:31:37 -04:00
Beat Küng e906106ea2 gps: fix memory leak on module exit (delete _helper) 2020-09-13 18:31:37 -04:00
Beat Küng 2956aa340e module: increase max timeout for stopping modules from 2s to 5s
The gps module might take up to 4s to stop (if stopped during module
configuration).
2020-09-13 18:31:37 -04:00
Thies Lennart Alff 531242468e fixed erroneous task_spawn 2020-09-13 18:31:02 -04:00
Daniel Agar 198466306e boards: airmind mindpx-v2 fix internal qmc5883l rotation 2020-09-13 18:28:31 -04:00
Morten Fyhn Amundsen cfe4982023 mavlink_messages: Subscribe to all distance_sensor instances
This will make all distance_sensor messages be published to
mavlink. Previously, if you ran multiple distance_sensor publishers,
typically multiple distance sensors, then you'd only get one of them
on mavlink.

The modifications to MavlinkStreamDistanceSensor are based on
MavlinkStreamBatteryStatus, which already exists with multi-instance
subscription and streaming to mavlink.

Use SubscriptionMultiArray

Co-authored-by: Daniel Agar <daniel@agar.ca>
2020-09-13 12:42:07 -04:00
Jaeyoung-Lim 0d4d21cd67 Allow gzserver verbose options through command line
Allows verbose option for gzserver with VERBOS=1 on command line.
2020-09-12 20:19:21 +02:00
CarlOlsson 2128679ab3 rename templates/module to templates/template_module 2020-09-11 09:21:33 +02:00
Quentin PERROT 9116acc431 change message critical state for arm authorization 2020-09-09 08:59:21 +02:00
Matthias Grob c6e2722b8f param: remove reset_nostart
Since we have reset_excludes and SYS_AUTOSTART and SYS_AUTOCONFIG
can be excluded like every other parameter.
2020-09-08 12:03:41 +02:00
Matthias Grob ce9954a919 param: enable reseting specific parameters from shell
Renaming previous "param reset" to "param reset_all".
2020-09-08 12:03:41 +02:00
Matthias Grob f70dda12a6 failureDetectorCheck: remove string manipulation 2020-09-08 11:42:30 +02:00
Matthias Grob 5eba25d2b5 Commander: remove duplicate flag changes 2020-09-08 11:42:30 +02:00
Matthias Grob ab17b6bad4 failureDetectorCheck: revise messageing 2020-09-08 11:42:30 +02:00
Matthias Grob 981e05c633 FailureDetector: move esc topic check into esc status update 2020-09-08 11:42:30 +02:00
Matthias Grob c180e09b9a FailureDetector: replace resetAttitudeStatus 2020-09-08 11:42:30 +02:00
Matthias Grob 390edb770d Commander: separate failure detector cases
One case could lead to the action for the other!
2020-09-08 11:42:30 +02:00
Matthias Grob f47bb95b26 FailureDetector: remove obsolete bit switch checks 2020-09-08 11:42:30 +02:00
Matthias Grob c9b81eaf08 FailureDetector: simplify updated/changed check 2020-09-08 11:42:30 +02:00
Matthias Grob 2bb5917188 FailureDetector: refactor naming, member order 2020-09-08 11:42:30 +02:00
Matthias Grob 25cdb383c6 Commander: simplify main failure detector condition 2020-09-08 11:42:30 +02:00
SalimTerryLi c037dbef21 Rename and move src/drivers/adc to src/drivers/adc/board_adc 2020-09-07 23:09:20 -04:00
avionicsanonymous df38e3798c UAVCAN Rangefinder Support (#15097) 2020-09-07 19:22:08 -04:00
David Sidrane 6c4a1d01c1 NuttX Critical STM32H7 Interrupt Storm on I2C 2020-09-07 15:15:52 -04:00
Dusan Zivkovic fa1a0b848b FlightTaskAuto: update waypoints on every iteration when in offtrack state 2020-09-07 19:25:10 +02:00
bresch db25f20120 ekf2: move "using" keywords to cpp 2020-09-07 09:42:56 -04:00
Daniel Agar 60d613ea04 sensors: sensor_preflight_imu -> sensors_status_imu and run continuously
- inconsistency checks now run continuously instead of only preflight
 - keep inconsistencies for all sensors
 - add per sensor data validator state as overall health flag
2020-09-06 22:06:13 -04:00
PX4 BuildBot d4ecf24bf2 Update submodule ecl to latest Sun Sep 6 12:39:41 UTC 2020
- ecl in PX4/Firmware (2a6181e31fd47fc99f42c6fea4d2186cda1196f0): https://github.com/PX4/ecl/commit/264c8c4e8681704e4719d0a03b848df8617c0863
    - ecl current upstream: https://github.com/PX4/ecl/commit/a204c599903e6a462cab17bee061d4418a8b6b53
    - Changes: https://github.com/PX4/ecl/compare/264c8c4e8681704e4719d0a03b848df8617c0863...a204c599903e6a462cab17bee061d4418a8b6b53

    a204c59 2020-09-05 rjgritter - WindEstimator: Fix incorrect _state accessing, clarify enums (#906)
2020-09-06 20:08:41 -04:00
Daniel Agar 4e8775a584 Jenkins: temporarily disable MC safe landing SITL test
- the MC safe landing SITL test continues to fail intermittently so I'm disabling it for now
2020-09-06 19:47:10 -04:00
Daniel Agar ca9b6bc137 commander: quick mag cal with fixed heading use MAV_CMD_FIXED_MAG_CAL_YAW message
- use proper Mavlink MAV_CMD_FIXED_MAG_CAL_YAW command for initiating magnetometer quick cal
 - MAV_CMD_FIXED_MAG_CAL_YAW allows specifying the yaw and optionally latitude and longitude if the vehicle doesn't have GPS
2020-09-06 19:25:11 -04:00
Daniel Agar 1ac31100cc commander: HITL skip auto disarm if lockdown
- auto disarm when locked down was added in #14766 to prevent user confusion in regular usage, but also breaks HITL where lockdown is enabled for safety
 - fixes #15686
2020-09-06 18:38:05 -04:00
Daniel Agar 3fa9ff6d20 boards: px4_fmu-v5_debug increase LPWORK stack 1632 -> 1728 bytes 2020-09-06 18:36:30 -04:00
Daniel Agar dfa82b58fd msg/tools/uorb_to_ros_msgs.py set executable 2020-09-06 23:31:52 +02:00
Daniel Agar cea1a19fe6 NuttX sched notes add C linkage 2020-09-06 19:18:42 +02:00
SalimTerryLi af84f449c7 isentek/ist8310: support starting with custom i2c address 2020-09-06 09:06:05 -04:00
Daniel Agar 023f6d3983 NuttX cpuload monitoring optimization
- Nuttx only process all suspend & resume scheduling notes when top is running, otherwise only track IDLE
 - convert cpuload and print load to c++
 - delete unused fields from print_load struct
 - update hrt_store_absolute_time (previous unused)
2020-09-05 14:35:50 -04:00
Nicolas MARTIN a9798454cd temperature compensation: change sensor id not found message 2020-09-05 13:27:42 -04:00
Nicolas MARTIN 4addf8ec3e thermal calibrtation: do not calibrate sensor without temperature sensor 2020-09-05 13:27:42 -04:00
Jonathan Hahn 7e5e8259f3 fw_pos_control_l1: fix swapped TECS time parameters (#15685)
Co-authored-by: Jonathan Hahn <hahn@wingcopter.com>
2020-09-04 15:11:31 -04:00
Daniel Agar f7c364de37 Jenkins hardware print estimator and sensor messages 2020-09-04 10:48:26 -04:00
Daniel Agar e5879f1bb6 estimator_sensor_bias: add bias variance 2020-09-04 10:48:26 -04:00
Daniel Agar c54a0ff0c7 estimator_status: add device ids for accel/baro/gyro/mag 2020-09-04 10:48:26 -04:00
Daniel Agar 20c2fe6d28 estimator messages add explicit timestamp_sample
- timestamp is uORB publication metadata
 - this allows us to see what the system saw at publication time plus the latency in estimation
2020-09-04 10:48:26 -04:00
Daniel Agar 09666c324f msg: add mag device id pretty print decode 2020-09-04 10:48:26 -04:00
Daniel Agar 9215fb57a2 ekf2: advertise immediately to ensure consistent uORB instance numbering 2020-09-04 10:48:26 -04:00
Daniel Agar 9ccc1db649 estimator_status split out estimator_states 2020-09-04 10:48:26 -04:00
Daniel Agar 33a7fed240 ekf2: split out header and rename 2020-09-04 10:48:26 -04:00
Daniel Agar 4879a4e2ef ekf2: use single uORB::Subscription, but change instance 2020-09-03 15:41:33 -04:00
Daniel Agar 59e66e5be9 sensors/vehicle_acceleration: use single uORB::Subscription, but change instance 2020-09-03 15:41:33 -04:00
Daniel Agar ee88561a33 sensors/vehicle_angular_velocity: use single uORB::Subscription, but change instance 2020-09-03 15:41:33 -04:00
Daniel Agar 94f7b50970 uORB: add Subscription method to change instance 2020-09-03 15:41:33 -04:00
Beat Küng 787f9c1213 i2c: use board-specific bus numbering for '-X -b <bus>' CLI
As boards don't have their external buses labeled consistently, it was not
useful to use an abstraction.
2020-09-03 15:32:35 -04:00
David Sidrane fdcd9b2de1 npx_fmurt1062-v1:CONFIG_BOARD_CRASHDUMP is not supported 2020-09-03 14:55:09 +02:00
David Sidrane 5d5a767143 npx_fmuk66:CONFIG_BOARD_CRASHDUMP is not supported 2020-09-03 14:55:09 +02:00
David Sidrane 7f91e41f67 hardfault_log:Add Fault Status registers 2020-09-03 14:55:09 +02:00
Daniel Agar bf41574b1d isentek/ist8308: set sensor_mag error count and fix bitwise AND 2020-09-03 07:50:43 +02:00
Daniel Agar 19b43b5e9c uORB:: SubscriptionMultiArray fix construction argument
- uORB::SubscriptionInterval construction requires the interval THEN the instance
2020-09-03 07:49:57 +02:00
Daniel Agar 24125b3da4 magnetometer/qmc5883l: cleanup/rewrite driver (#14384) 2020-09-02 13:16:27 -04:00
Daniel Agar 7569722821 iSentek IST8310 magnetometer rewrite
- simple state machine to reset, configure, etc
 - checked register mechanism (sensor will reset itself on configuration error)
 - configured in 16 bit mode (1320 LSB/Gauss instead of 330 LSB/Gauss)
 - adjusted orientation handling in driver to match datasheet as closely as possible
     - in many external compass units the rotation was wrong and very difficult to actual determine how to set correctly
2020-09-02 13:14:45 -04:00
Daniel Agar 6ff361479c uORB: introduce SubscriptionMultiArray for working with multi-instances 2020-09-02 12:46:47 -04:00
oneWayOut 71f381ada9 add gazebo VTOL tiltrotor debug target for VSCode SITL 2020-09-02 11:41:01 -04:00
Daniel Agar 5017a7e33a simulator: publish 2 instances of accel/baro/gyro/mag 2020-09-02 10:42:02 -04:00
Daniel Agar 668c16da83 px4_work_queue: reset statistics after each status print 2020-09-02 10:09:13 -04:00
Nuno Marques 86e10afd76 microRTPS agent deploy: split commit subjects and delete src and idl folders before updating them (#15672) 2020-09-02 15:11:25 +02:00
Daniel Agar 7c2bb6a983 Jenkins: hardware increase timeout 2020-09-02 09:00:34 -04:00
TSC21 ba7d19033e replace 'python' with '.' to run the uORB to ROS conversion Python script 2020-09-02 13:38:04 +02:00
TSC21 5ae0291c13 reactivate ROS-related builds 2020-09-02 11:47:34 +02:00
TSC21 ad2b4c81fd update container tags to focal:2020-08-20 2020-09-02 11:47:34 +02:00
gitfishup f3579e473b boards: CUAV Nora enable UAVCAN 2020-09-01 21:16:17 -04:00
Daniel Agar e56dfe6497 rover_pos_control: revert sensor_combined purge
- sensor_combined is only used for scheduling in this module under certain circumstances and should be reviewed and replaced 
 - fixes https://github.com/PX4/Firmware/issues/15628
2020-09-01 21:09:33 -04:00
Daniel Agar dd9676b73e boards: px4/fmu-v5_debug increase interrupt stack 512 -> 768 bytes 2020-09-01 20:04:06 -04:00
Matthias Grob 1d562aaf4a battery: switch to PublicationMulti for battery_status 2020-09-01 10:25:03 +02:00
Matthias Grob d06425d131 analog_battery: fix missing stdio include
This was not a problem before because battery.h
included the adc driver and implicitly snprintf
was defined through there.
2020-09-01 10:25:03 +02:00
Matthias Grob 5bc1df60a2 commander_params: remove some double spaces 2020-09-01 10:25:03 +02:00
Matthias Grob 180c6faf4a syslink_main: remove empty lines and struct keyword 2020-09-01 10:25:03 +02:00
Matthias Grob d82f325f8d ina226/voxlpm: make sure parameter sub is reset
The subscription to parameter updates has to get
copied otherwise the change detection will not get
reset for next time.
2020-09-01 10:25:03 +02:00
Matthias Grob 9c4e26c00c battery: fix parameter migration and clarify 2020-09-01 10:25:03 +02:00
Matthias Grob 0db4881413 BatterySimulator: remove SimulatorBattery
It loads the battery parameters but then overwrites them
with hardcoded values and it breaks the ModuleParams
parent/child hierarchy. Both is undesired.
2020-09-01 10:25:03 +02:00
Daniel Agar 978e35478f logger: add_topic_multi optional specify max multi-instance (#15647) 2020-09-01 09:36:32 +02:00
Daniel Agar cbf21959ab Update submodule mavlink v2.0 to latest Tue Sep 1 00:39:26 UTC 2020
- mavlink v2.0 in PX4/Firmware (0b0d23e8fa): https://github.com/mavlink/c_library_v2/commit/5ad778dea329d40f3cd128aae988986de79d830c
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/7d6be862bca8f733a854bfd6c97f1bb25cdb477c
    - Changes: https://github.com/mavlink/c_library_v2/compare/5ad778dea329d40f3cd128aae988986de79d830c...7d6be862bca8f733a854bfd6c97f1bb25cdb477c
2020-08-31 22:30:52 -04:00
Daniel Agar 0b0d23e8fa process_sensor_caldata.py: skip accel or gyro if temperature is NAN 2020-08-31 07:59:03 -04:00
Daniel Agar fe391c0af8 perf: combine duplicate Knuth/Welford recursive mean 2020-08-31 10:03:56 +02:00
Oleg 172a4e3557 batterry_status: fix checking default v_div 2020-08-30 11:09:59 -04:00
Daniel Agar 9feea0e2fd commander: accel calibration fail early on bad rotations 2020-08-29 11:02:37 -04:00
Daniel Agar 28d52aef1f bosch/bmi088: minor cleanup and consistency improvements
- track consecutive failures and trigger reset aggressively
 - only count missed drdy interrupts, not time
 - reset wait times consistent with other drivers
 - accel improve FIFO count check if DRDY isn't available
2020-08-29 11:01:09 -04:00
Daniel Agar a04d79b810 bosch/bmi055: minor cleanup and consistency improvements
- track consecutive failures and trigger reset aggressively
 - only count missed drdy interrupts, not time
 - reset wait times consistent with other drivers
2020-08-29 11:01:09 -04:00
Daniel Agar 08ad7850fc rotation: combine duplicates 2020-08-28 18:29:09 -04:00
Daniel Agar 08cfea0b6f commander: mag calibration auto rotation skip all duplicates
- add simple rotation test with corresponding blacklist
2020-08-28 18:29:09 -04:00
Nicolas MARTIN 1dec1e6262 process_sensor_caldata.py: add regularly weighted over temperature fit
the option '--no_resample' allows to disable resampling and have the
previous behavior
2020-08-28 16:39:11 -04:00
Daniel Agar eb46a42400 bosch/bmi055: fix accel temperature reading
- single register output is in 2's complement
2020-08-28 16:01:08 -04:00
CUAVcaijie 536877cf0a boards: add UAVCAN timer override mechanism and CUAV X7 add CAN (#15348)
* X7Pro adds CAN driver
* UAVCAN timer selection moved to default.cmake
* Modify some details about @CUAVcaijie UAVCAN timer selection moved to default.cmake
* Put some timer parameters to micro_hal.h from board_config.h. Fix all h7 boards

Co-authored-by: honglang <honglang@cuav.net>
2020-08-28 12:16:48 -04:00
bresch 8c0671e93d ll40ls: set default rotation to downwards facing
All the other distance sensors have their default rotation to downwards
facing as well
2020-08-28 12:00:47 -04:00
bresch 644ede5698 distance_sensor: allow setting no rotation (-R 0) 2020-08-28 12:00:47 -04:00
TSC21 98f53c2bc4 microRTPS: extend verbose arg to the timesync 2020-08-28 09:22:36 +02:00
TSC21 d09cb8d1f0 microRTPS: reduce the number of streams on the bus 2020-08-28 09:22:36 +02:00
TSC21 603a4d8955 microRTPS: transport: fix parsing 2020-08-28 09:22:36 +02:00
Oleg a18f22bd91 batterry_status: fix checking default a_per_v 2020-08-27 21:47:27 -04:00
Daniel Agar 8869cb5e4a Update submodule mavlink v2.0 to latest Fri Aug 28 00:39:46 UTC 2020
- mavlink v2.0 in PX4/Firmware (8e37063c7be7279b004a2eb584144e8a080422a9): https://github.com/mavlink/c_library_v2/commit/171ae1da5e1799235ea7e35f6d34bfe3897d9a9a
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/5ad778dea329d40f3cd128aae988986de79d830c
    - Changes: https://github.com/mavlink/c_library_v2/compare/171ae1da5e1799235ea7e35f6d34bfe3897d9a9a...5ad778dea329d40f3cd128aae988986de79d830c
2020-08-27 21:43:47 -04:00
PX4 BuildBot 8ba7bbf3af Update submodule jMAVSim to latest Fri Aug 28 00:39:40 UTC 2020
- jMAVSim in PX4/Firmware (8eb46b0eb8): https://github.com/PX4/jMAVSim/commit/14ce7868fb29b8b05cdecf4e9a76b318839302e9
    - jMAVSim current upstream: https://github.com/PX4/jMAVSim/commit/358b6cca4093646eb96e0cb075e45efa8f4a0c48
    - Changes: https://github.com/PX4/jMAVSim/compare/14ce7868fb29b8b05cdecf4e9a76b318839302e9...358b6cca4093646eb96e0cb075e45efa8f4a0c48

    358b6cc 2020-08-24 Hamish Willee - Merge pull request #122 from farhangnaderi/patch-1
42b5cd3 2020-08-23 FARHANG - Update README.md
2020-08-27 21:42:36 -04:00
PX4 BuildBot 67c134303c Update submodule nuttx to latest Fri Aug 28 00:39:53 UTC 2020
- nuttx in PX4/Firmware (f0555571047b18fa503eeac18da586f2dd360c12): https://github.com/PX4/NuttX/commit/925b7b513b8f7b683bfea43923a8beb2a0ad5a61
    - nuttx current upstream: https://github.com/PX4/NuttX/commit/863ed53e3fb1cebbb0832ec28fbc11e16566e89e
    - Changes: https://github.com/PX4/NuttX/compare/925b7b513b8f7b683bfea43923a8beb2a0ad5a61...863ed53e3fb1cebbb0832ec28fbc11e16566e89e

    863ed53e3f 2020-06-15 David Sidrane - [BACKPORT] kinetis:Ethernet fixed & better interrupt management
2020-08-27 21:41:09 -04:00
PX4 BuildBot e54df5c57a Update submodule matrix to latest Fri Aug 28 00:40:08 UTC 2020
- matrix in PX4/Firmware (5d014729e6cce9ca5814b5b803347ea561743cec): https://github.com/PX4/Matrix/commit/25c04553488bb86470592a1cdccac56979bf59bb
    - matrix current upstream: https://github.com/PX4/Matrix/commit/ce6b10b99af722a4e653387d40019a8428d2a54f
    - Changes: https://github.com/PX4/Matrix/compare/25c04553488bb86470592a1cdccac56979bf59bb...ce6b10b99af722a4e653387d40019a8428d2a54f

    ce6b10b 2020-08-27 Julian Oes - Fix clang-tidy warnings
13f092a 2020-08-26 Kamil Ritz - sparse quadratic form
3a5bfb2 2020-08-25 Julian Oes - matrix: inline to prevent multiple definitions (#147)
e101edc 2020-08-24 Julian Oes - Matrix: fix warning if M == N (#146)
cd8ad15 2020-08-24 Morten Fyhn Amundsen - Make wrap() work with integer types (#145)
2020-08-27 21:40:26 -04:00
PX4 BuildBot 10e2ccc1cd Update submodule ecl to latest Fri Aug 28 00:40:03 UTC 2020
- ecl in PX4/Firmware (110860c85d6eaca3f5ac5c38a8a65066fc1e0c31): https://github.com/PX4/ecl/commit/bd0c5fbb976b3ae6fb5eff80da5df3d50f18ffbe
    - ecl current upstream: https://github.com/PX4/ecl/commit/264c8c4e8681704e4719d0a03b848df8617c0863
    - Changes: https://github.com/PX4/ecl/compare/bd0c5fbb976b3ae6fb5eff80da5df3d50f18ffbe...264c8c4e8681704e4719d0a03b848df8617c0863

    264c8c4 2020-08-20 bresch - mag_fusion: mag heading and 3d modes are mutually exclusive
9797e4d 2020-08-22 kamilritz - updateYawInRotMat with hidden rotation sequence handling
419b70e 2020-08-17 kamilritz - Add tests for shouldUse321RotationSequence
4fb4e0c 2020-08-17 kamilritz - Clean euler321 and euler312 code and comment
2be738e 2020-08-15 Kamil Ritz - Add helper function to alter heading in rotation matrices
fdc86c2 2020-08-15 Kamil Ritz - add functions to compute yaw (321 and 312 sequence)
15afa8a 2020-08-15 Kamil Ritz - shouldUse321RotationSequence(const Dcmf& R)
4872f2a 2020-08-15 Kamil Ritz - Remove not used code
0fafd4d 2020-08-15 Kamil Ritz - precompute cos and sin of yaw once before mutliple use
114516b 2020-08-15 Kamil Ritz - Use new added matrix functions
1f637af 2020-08-15 Kamil Ritz - Add const modifier
aa2c77f 2020-08-22 kamilritz - Small cleanup in velposfusion
644e903 2020-08-22 kamilritz - Apply measurementUpdate function
404edde 2020-08-22 kamilritz - Add measurementUpdate function
f6252ff 2020-08-22 kamilritz - small cleanup  in limitDeclination
f62662e 2020-08-21 Daniel Agar - update change_indication for newer WMM tables
802a6d9 2020-08-21 PX4 BuildBot - Update geo_lookup WMM  to latest Fri Aug 21 11:48:14 UTC 2020
2020-08-27 21:38:56 -04:00
Oleg Evseev 8eb46b0eb8 mavlink: check type on instance getting by device or network port
otherwise serial mavlink running in first will occupy default net port 14556 and could be wrongly used for stream configuring instead or udp mavlink running in first will occupy default serial "/dev/ttyS1"and could be wrongly used for stream configuring instead

issue #15558
2020-08-27 17:28:12 +02:00
Matthias Grob 16776ff6fb MultirotorMixer: hotfix [-1,1] scaling
After it was mistakenly rescaled in
26bac78eaf274cf58aacbc239cc8f2e865ba864c#diff-899d35a48340c6065702d4fa77b70f0d
#15563
2020-08-26 20:52:16 -04:00
Matthias Grob d4296dbd3f thoneflow: remove unsupported parameter from getopt optsting 2020-08-26 20:25:31 -04:00
Kabir Mohammed c319bbd6f7 drivers/optical_flow: Thoneflow 3901U Driver
* srcparser.py: Add optical flow subcategory for module docs
* thoneflow : Initial support
2020-08-26 13:10:38 -04:00
David Sidrane 8d2ce355f2 Nuttx Backport add RTR 2020-08-26 13:05:23 +02:00
David Sidrane 622903f7de Nuttx Backport add extern C under cpp 2020-08-26 13:05:23 +02:00
Beat Küng 4088c2581f i2c_spi_buses: add '-q' for quiet startup flag (#14969)
* [WIP] i2c_spi_buses: add '-q' for quiet startup flag

And enable for optional board sensors.

* ROMFS: rc.sensors try starting all optional I2C sensors quietly

Co-authored-by: Daniel Agar <daniel@agar.ca>
2020-08-26 08:46:35 +02:00
SalimTerryLi 407ca0a5d3 mavlink command: new option to completely disable hardware flow control (-Z) (#15566) 2020-08-26 08:40:55 +02:00
Daniel Agar 60a7f7f9f2 isentek/ist8308: small style and consistency cleanup 2020-08-25 13:46:04 -04:00
Daniel Agar fb149045e3 drivers/imu/invensense: new ICM42605 IMU driver 2020-08-25 13:07:59 -04:00
Daniel Agar 0ae6da4bb0 Jenkins: microRTPS agent fetch git tags for versioning 2020-08-25 11:12:38 -04:00
Daniel Agar 0e64baa93b parameters: delete unused PARAM_TYPE_STRUCT 2020-08-25 09:59:29 -04:00
Beat Küng b7b23a521a sdp3x: remove reset during init
It is not playing nice with other devices on the same bus.
In particular with the FreeFly RTK GPS: once the reset is sent, the whole
bus is blocked and becomes unusable.
Current understanding is that this device contains another chip on the bus
(apart from the mag+baro+led).

I don't see much use for it either, as we configure everything there is to
configure (just the mode).
2020-08-24 17:55:05 -04:00
Anton Erasmus 1ae579b5d5 Update sitl_run to check for -gen.sdf files (#15232)
Co-authored-by: Anton Erasmus <antonerasm@gmail.com>
2020-08-24 17:01:11 +02:00
Hamish Willee 979243f38f params: make parameter units more consistent (#15502) 2020-08-24 11:33:08 +02:00
px4dev 9cebf3b969 Sbus comment fix, found by George-avy in issue 15253 2020-08-24 09:24:53 +02:00
Daniel Agar 1d0188fc07 logger: add vehicle_acceleration to default topics 2020-08-23 17:38:27 -04:00
Daniel Agar 53b3dfa64e rover_pos_control: remove unused sensor_combined subscription 2020-08-23 17:38:27 -04:00
Daniel Agar a368c7cded muorb: delete unused sensor_combined.h include 2020-08-23 17:38:27 -04:00
Daniel Agar 57721cad9b mavlink: replace sensor_combined with selected vehicle_imu
- check all ORB_MULTI_MAX_INSTANCES possible instances for future expansion
2020-08-23 17:38:27 -04:00
Daniel Agar 1d2e424c4c commander: calibration replace sensor_combined with vehicle_acceleration 2020-08-23 17:38:27 -04:00
Daniel Agar 2c450280d2 examples/uuv_example_app: replace sensor_combined with vehicle_acceleration 2020-08-23 17:38:27 -04:00
Daniel Agar e8a074dc03 examples/px4_simple_app: replace sensor_combined with vehicle_acceleration 2020-08-23 17:38:27 -04:00
Daniel Agar 1bb4c9d05f frsky_telemetry: replace sensor_combined with vehicle_acceleration 2020-08-23 17:38:27 -04:00
JaeyoungLim 5c040582db Update sitl_gazebo 2020-08-21 21:49:42 +02:00
Daniel Agar 64f5c64ce9 Update submodule mavlink v2.0 to latest Fri Aug 21 12:39:56 UTC 2020
- mavlink v2.0 in PX4/Firmware (b1cdf94b680613a982d2d2450d91e27205872030): https://github.com/mavlink/c_library_v2/commit/cc7ed13f41931335c1902da445bbdf12f4d66e63
    - mavlink v2.0 current upstream: https://github.com/mavlink/c_library_v2/commit/171ae1da5e1799235ea7e35f6d34bfe3897d9a9a
    - Changes: https://github.com/mavlink/c_library_v2/compare/cc7ed13f41931335c1902da445bbdf12f4d66e63...171ae1da5e1799235ea7e35f6d34bfe3897d9a9a
2020-08-21 14:22:25 -04:00
PX4 BuildBot 0f27395979 Update submodule ecl to latest Fri Aug 21 12:40:08 UTC 2020
- ecl in PX4/Firmware (a6682c0ce863694761557482556c67747b5d7eeb): https://github.com/PX4/ecl/commit/3ae934544f8b2de01b868d0defea992b1000acc3
    - ecl current upstream: https://github.com/PX4/ecl/commit/bd0c5fbb976b3ae6fb5eff80da5df3d50f18ffbe
    - Changes: https://github.com/PX4/ecl/compare/3ae934544f8b2de01b868d0defea992b1000acc3...bd0c5fbb976b3ae6fb5eff80da5df3d50f18ffbe

    bd0c5fb 2020-08-20 kamilritz - Update change indication for ekf gsf
2020-08-21 14:04:56 -04:00
Angel 3dd9d2e6db Add copyright info to ina226.h 2020-08-21 13:11:39 -04:00
Daniel Agar 2c3441aa90 boards: reduce CONFIG_NFILE_DESCRIPTORS 15 -> 12
- reduced now that calibration uses uORB::Subscription
 - can likely be reduced further (perhaps < 8) with additional testing
2020-08-21 10:12:13 -04:00
Daniel Agar 4dee5d6a1c commander: level calibration print changes 2020-08-21 10:12:13 -04:00
Daniel Agar ea13bf271d lib/sensor_calibration: Magnetometer catch and fix invalid rotations
- improve status print
2020-08-21 10:12:13 -04:00
Daniel Agar c76cdaf8a8 commander: mag calibration add simple offset only quick cal using GPS & attitude 2020-08-21 10:12:13 -04:00
Daniel Agar f6ad9bdb64 commander: don't set RC lost during calibration 2020-08-21 10:12:13 -04:00
Daniel Agar 5242160a26 commander: accel calibration reduce status length
- this keeps the string within a single Mavlink STATUSTEXT
 - fixes #14829
2020-08-21 10:12:13 -04:00
Daniel Agar d824706571 commander: mag calibration keep manually configured special rotations
- ROTATION_PITCH_9_YAW_180 and ROTATION_ROLL_90_PITCH_68_YAW_293 are
kept if manually configured
2020-08-21 10:12:13 -04:00
Daniel Agar 0bb6ad01bd commander: mag calibration rotation also compare other internal mags 2020-08-21 10:12:13 -04:00
Daniel Agar 07d727a4a8 commander: mag calibration auto rotation simplify applying calibration and rotation 2020-08-21 10:12:13 -04:00
Daniel Agar 1a6eb7859c commander: mag calibration auto rotation improvements
- skip rotations that are identical or very close
 - compute mean squared error (MSE) to skip a sqrt
2020-08-21 10:12:13 -04:00
Daniel Agar bc6e4c8a92 commander: accel calibration use all queued data
- print each calibration when finished
2020-08-21 10:12:13 -04:00
Daniel Agar f9aca05ede commander: gyro calibration use all queued data
- print calibration status when finished
2020-08-21 10:12:13 -04:00
Daniel Agar f2c9865c9b sensor mag add minimal queue and calibration check all
- mag calibration acceptance check sphere/ellipsoid fit status
2020-08-21 10:12:13 -04:00
Daniel Agar b2e8f6839f commander: mag calibration improve console and debug output 2020-08-21 10:12:13 -04:00
Daniel Agar 2bb04f2261 commander: increase COM_ARM_MAG_ANG 35 -> 45 degrees
- in practice this is mostly useful for identifying incorrect rotations
which we mostly have in 45 degree increments
 - handling a vehicle on the ground can easily disturb one mag by more than 30 degrees, so this is often distracting noise
2020-08-21 10:12:13 -04:00
Daniel Agar 44c877c603 sensors: size sensor error_count consistently (uint32_t) 2020-08-21 10:12:13 -04:00
Daniel Agar e6fd5a43bc commander: magnetometer calibration automatically set the rotation of external magnetometers relative to the first internal
- see #15120 for more detail
2020-08-21 10:12:13 -04:00
Daniel Agar 27f23ac290 move initial sensor priority to parameters and purge ORB_PRIORITY
- CAL_ACCx_EN -> CAL_ACCx_PRIO
 - CAL_GYROx_EN -> CAL_GYROx_PRIO
 - CAL_MAGx_EN -> CAL_MAGx_PRIO
2020-08-21 10:12:13 -04:00
Daniel Agar 971b1e4b4d sensors: move mag aggregation to new VehicleMagnetometer WorkItem
- purge all reminaing magnetometer IOCTL usage
 - mag calibration add off diagonal (soft iron) scale factors
2020-08-21 10:12:13 -04:00
Daniel Agar ad148af2fd commander: mag_calibration move to Magnetometer calibration helper 2020-08-21 10:12:13 -04:00
Daniel Agar 1867e540b0 lib/sensor_calibration: add Magnetometer helper 2020-08-21 10:12:13 -04:00
Daniel Agar d92ddffa5d commander: add simple accelerometer quick calibration 2020-08-21 10:12:13 -04:00
Daniel Agar e3e8c55e82 accel & gyro calibration helpers 2020-08-21 10:12:13 -04:00
Daniel Agar bae2589fed Jenkins delete Mac compile (replaced by Github Actions) 2020-08-20 18:53:26 -04:00
Julian Kent 7958586f35 Only use roll/pitch not centered for RC override, and increase override threshold 2020-08-20 11:50:16 -04:00
JaeyoungLim cbbde2e4a2 Update sitl_gazebo (#15586) 2020-08-20 15:45:16 +02:00
Julian Kent e2e72fd81e Fix map distortion due to high latitudes (#15449) 2020-08-19 09:55:15 +02:00
TSC21 7b4ae7c658 Jenkins: deploy: build the rtps target before commiting microRTPS agent changes 2020-08-19 08:59:22 +02:00
modaltb d9bbed767c modalai_fc-v1 - power_monitor/voxlpm: add support for voxlpm v3 (INA231 sensors) 2020-08-19 00:01:31 -04:00
Daniel Agar 841f650be4 github actions temporarily remove linux hardware (navio2) test
- until connectivity issues are resolved
2020-08-18 23:55:13 -04:00
bazooka joe 190b96a46c SMbus battery driver - a lot of updates and optimizations
- added support for BQ40Z80 based battery
- added performance counter for interface errors
- added SMART_BATTERY_INFO mavlink message
- general code cleanups and optimization
- fixed: void flooding the log in case of interface error
- fixed: using _batt_startup_capacity instead of _batt_capacity for discharged_mah
- update: read manufacture_date
- update: get _cell_count from parameter and not const 4
- update: avoid re-reading data that has already been read and stored on class already
- currently the battery type defined by BAT_SMBUS_MODEL parameter and not by auto detection
2020-08-18 21:41:19 -04:00
Daniel Agar 372866a22b uORB::DeviceNode replace SubscriptionData with uORB::SubscriptionInterval 2020-08-18 20:48:30 -04:00
Travis Bottalico e325ca25bb modalai-fc-v1 - update default MAVLink configuration 2020-08-18 20:45:20 -04:00
isidroas f4e147964b Tools/setup: ubuntu.sh added jmavsim dependency 2020-08-18 15:09:16 -04:00
PX4 BuildBot 16cd7cc4e9 Update submodule ecl to latest Tue Aug 18 16:42:33 UTC 2020
- ecl in PX4/Firmware (9e9b068f564250f1085954316de789176732ed96): https://github.com/PX4/ecl/commit/1e6c6f2d3ccaed470996c9efe88457299608f1d6
    - ecl current upstream: https://github.com/PX4/ecl/commit/3ae934544f8b2de01b868d0defea992b1000acc3
    - Changes: https://github.com/PX4/ecl/compare/1e6c6f2d3ccaed470996c9efe88457299608f1d6...3ae934544f8b2de01b868d0defea992b1000acc3

    3ae9345 2020-08-17 kamilritz - Add change indication for ekf_gsf_reset
fd849e0 2020-08-16 Paul Riseborough - EKF: Fix specific force observation noise variance
76f393d 2020-08-16 Paul Riseborough - EKF: Use const reference instead of local copy
c43307b 2020-08-16 Paul Riseborough - EKF: convert drag fusion from Matlab to SymPy generated auto-code
2020-08-18 15:07:39 -04:00
TSC21 1eb7809eb5 Jenkins CD: add deploy stage for the microRTPS agent 2020-08-18 17:16:04 +02:00
TSC21 ac9c8bcc09 microRTPS: cmake: fix relative path for IDL files 2020-08-18 17:16:04 +02:00
TSC21 a091a70470 microRTPS: split the microRTPS client and agent dest directories for better visbility and handling 2020-08-18 17:16:04 +02:00
TSC21 cc4cc05dd7 CI/CD: add auto deploy of the microRTPS agent source code to the respective repository 2020-08-18 17:16:04 +02:00
Daniel Agar e9e9556130 ROMFS: remove leftover MC_TPA parameters 2020-08-17 17:07:21 -04:00
Daniel Agar 26bac78eaf mixers: Multirotor remove text roll, pitch, yaw scaling and idle speed 2020-08-17 16:37:08 -04:00
PX4 BuildBot 4afb27411c Update submodule ecl to latest Mon Aug 17 12:39:41 UTC 2020
- ecl in PX4/Firmware (84aeb53ee5847866ecf7698591f00278d12ba770): https://github.com/PX4/ecl/commit/ec934908900b23ee273d1a9f82364b7b38423200
    - ecl current upstream: https://github.com/PX4/ecl/commit/1e6c6f2d3ccaed470996c9efe88457299608f1d6
    - Changes: https://github.com/PX4/ecl/compare/ec934908900b23ee273d1a9f82364b7b38423200...1e6c6f2d3ccaed470996c9efe88457299608f1d6

    1e6c6f2 2020-08-16 Paul Riseborough - EKF: update all output states when aligning output time horizon filter
3bd9415 2020-07-26 kamilritz - Make delayed output stayed not a member variable
da9bfe4 2020-07-26 kamilritz - Update interface of applyCorrectionsToOuputStates
64ab2b0 2020-08-15 Paul Riseborough - EKF: Only record successful sideslip fusion when states updated
0fa7ef3 2020-08-15 Paul Riseborough - EKF: Use ecl::powf for integer exponents
168dbdf 2020-08-15 Paul Riseborough - EKF: Convert sideslip fusion to use SymPy generated auto-code
06aa78a 2020-08-15 Paul Riseborough - EKF: Only record airspeed fusion event when states are updated
486a461 2020-08-15 Paul Riseborough - EKF: airspeed fusion derivation test comparison cleanup
ede6204 2020-08-15 Paul Riseborough - EKF: airspeed fusion cleanup
a5a43db 2020-08-13 Paul Riseborough - EKF: Convert airspeed fusion to use SymPy generated auto-code
5907e81 2020-08-15 Paul Riseborough - EKF: optflow fusion cleanup
7fa9a19 2020-08-15 Paul Riseborough - EKF: optflow fusion cleanup
0e74f3e 2020-08-15 Paul Riseborough - EKF: optflow fusion cleanup
6e992a1 2020-08-15 Paul Riseborough - EKF: optflow fusion cleanup
1ad042d 2020-08-13 Paul Riseborough - EKF: Use ecl::powf in comparison test
274523b 2020-08-13 Paul Riseborough - EKF: Use ecl::powf for integer exponents
f20a5d8 2020-08-13 Paul Riseborough - EKF: Remove redundant tilt check
1592db8 2020-08-13 Paul Riseborough - EKF: Convert optical flow fusion to use SymPy generated equations
1f386c1 2020-08-15 Paul Riseborough - EKF: Add yaw estimate SymPy generated code files
510d938 2020-08-11 Paul Riseborough - EKF: move yaw estimator derivation into main filter derivation
f89c52e 2020-08-13 Paul Riseborough - EKF: use ecl::powf for integer exponents
0aa2f17 2020-08-13 Paul Riseborough - EKF: Convert GPS yaw observation method to use SymPy generated code (#880)
21cc46e 2020-08-11 Paul Riseborough - EKF: Convert magnetic field observation methods to use SymPy generated code (#879)
2020-08-17 16:30:52 -04:00
2612 changed files with 225946 additions and 68199 deletions
-123
View File
@@ -1,123 +0,0 @@
#!/usr/bin/env groovy
pipeline {
agent none
stages {
stage('Build') {
agent {
docker {
image 'px4io/px4-dev-ros-melodic:2020-04-01'
args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw -e HOME=$WORKSPACE'
}
}
steps {
sh 'export'
sh 'make distclean'
sh 'ccache -s'
sh 'git fetch --tags'
sh 'make px4_sitl_default'
sh 'make px4_sitl_default sitl_gazebo'
sh 'make px4_sitl_default package'
sh 'ccache -s'
stash(name: "px4_sitl_package", includes: "build/px4_sitl_default/*.bz2")
archiveArtifacts(artifacts: "build/px4_sitl_default/*.bz2", fingerprint: true, onlyIfSuccessful: true)
}
post {
always {
sh 'make distclean'
}
}
} // stage Build
stage('ROS Tests') {
steps {
script {
def missions = [
[
name: "MC_avoidance",
test: "mavros_posix_test_avoidance.test",
mission: "avoidance",
vehicle: "iris_obs_avoid",
run_script: "rostest_avoidance_run.sh"
],
[
name: "MC_safe_landing",
test: "mavros_posix_test_safe_landing.test",
mission: "MC_safe_landing",
vehicle: "iris_obs_avoid",
run_script: "rostest_avoidance_run.sh"
],
]
def test_nodes = [:]
for (def i = 0; i < missions.size(); i++) {
test_nodes.put(missions[i].name, createTestNode(missions[i]))
}
parallel test_nodes
} // script
} // steps
} // stage ROS Tests
} //stages
environment {
CCACHE_DIR = '/tmp/ccache'
CI = true
}
options {
buildDiscarder(logRotator(numToKeepStr: '10', artifactDaysToKeepStr: '20'))
timeout(time: 60, unit: 'MINUTES')
}
} // pipeline
def createTestNode(Map test_def) {
return {
node {
cleanWs()
docker.image("px4io/px4-dev-ros-melodic:2020-04-01").inside('-e HOME=${WORKSPACE}') {
stage(test_def.name) {
def run_script = test_def.get('run_script', 'rostest_px4_run.sh')
def test_ok = true
sh('export')
unstash('px4_sitl_package')
sh('tar -xjpvf build/px4_sitl_default/px4-px4_sitl_default*.bz2')
// run test
try {
sh('px4-px4_sitl_default*/px4/test/' + run_script + ' ' + test_def.test + ' mission:=' + test_def.mission + ' vehicle:=' + test_def.vehicle)
} catch (exc) {
// save all test artifacts for debugging
archiveArtifacts(allowEmptyArchive: false, artifacts: '.ros/**/*.ulg, .ros/**/rosunit-*.xml, .ros/**/rostest-*.log')
test_ok = false
}
// upload log to flight review (https://logs.px4.io/)
sh('px4-px4_sitl_default*/px4/Tools/upload_log.py -q --description "${JOB_NAME}: ${STAGE_NAME}" --feedback "${JOB_NAME} ${CHANGE_TITLE} ${CHANGE_URL}" --source CI .ros/log/*/*.ulg')
// log analysis
// process ekf log data
try {
sh('px4-px4_sitl_default*/px4/Tools/ecl_ekf/process_logdata_ekf.py .ros/log/*/*.ulg')
} catch (exc) {
// save log analysis artifacts for debugging
archiveArtifacts(allowEmptyArchive: false, artifacts: '.ros/**/*.pdf, .ros/**/*.csv')
// FIXME: don't let the script to fail the build
// test_ok = false
}
if (!test_ok) {
error('ROS Test failed')
}
} // stage
cleanWs()
} // docker.image
} // node
} // return
} // createTestNode
+35 -12
View File
@@ -9,18 +9,25 @@ pipeline {
script {
def build_nodes = [:]
def docker_images = [
armhf: "px4io/px4-dev-armhf:2020-04-01",
base: "px4io/px4-dev-base-bionic:2020-04-01",
nuttx: "px4io/px4-dev-nuttx-bionic:2020-04-01",
armhf: "px4io/px4-dev-armhf:2021-04-29",
arm64: "px4io/px4-dev-aarch64:2021-04-29",
base: "px4io/px4-dev-base-bionic:2021-04-29",
nuttx: "px4io/px4-dev-nuttx-focal:2021-04-29",
snapdragon: "lorenzmeier/px4-dev-snapdragon:2020-04-01"
]
def armhf_builds = [
target: ["aerotenna_ocpoc_default", "beaglebone_blue_default", "emlid_navio2_default", "px4_raspberrypi_default"],
target: ["beaglebone_blue_default", "emlid_navio2_default", "px4_raspberrypi_default", "scumaker_pilotpi_default"],
image: docker_images.armhf,
archive: false
]
def arm64_builds = [
target: ["scumaker_pilotpi_arm64"],
image: docker_images.arm64,
archive: false
]
def base_builds = [
target: ["px4_sitl_rtps"],
image: docker_images.base,
@@ -30,47 +37,63 @@ pipeline {
def nuttx_builds_archive = [
target: [
"airmind_mindpx-v2_default",
"ark_can-flow_canbootloader",
"ark_can-flow_default",
"av_x-v1_default",
"bitcraze_crazyflie_default",
"bitcraze_crazyflie21_default",
"cuav_can-gps-v1_canbootloader",
"cuav_can-gps-v1_default",
"cuav_nora_default",
"cuav_x7pro_default",
"cubepilot_cubeorange_default",
"cubepilot_cubeyellow_default",
"holybro_can-gps-v1_canbootloader",
"holybro_can-gps-v1_default",
"holybro_durandal-v1_default",
"holybro_durandal-v1_stackcheck",
"holybro_kakutef7_default",
"holybro_pix32v5_default",
"intel_aerofc-v1_default",
"modalai_fc-v1_default",
"modalai_fc-v1_rtps",
"mro_ctrl-zero-f7_default",
"mro_ctrl-zero-f7-oem_default",
"mro_ctrl-zero-h7_default",
"mro_ctrl-zero-h7-oem_default",
"mro_pixracerpro_default",
"mro_x21-777_default",
"mro_x21_default",
"nxp_fmuk66-e_default",
"nxp_fmuk66-e_rtps",
"nxp_fmuk66-e_socketcan",
"nxp_fmuk66-v3_default",
"nxp_fmuk66-v3_rtps",
"nxp_fmuk66-v3_socketcan",
"nxp_fmurt1062-v1_default",
"nxp_rddrone-uavcan146_default",
"nxp_ucans32k146_default",
"nxp_ucans32k146_canbootloader",
"omnibus_f4sd_default",
"px4_fmu-v2_default",
"px4_fmu-v2_fixedwing",
"px4_fmu-v2_lpe",
"px4_fmu-v2_multicopter",
"px4_fmu-v2_rover",
"px4_fmu-v2_test",
"px4_fmu-v3_default",
"px4_fmu-v4_cannode",
"px4_fmu-v4_default",
"px4_fmu-v4_optimized",
"px4_fmu-v4pro_default",
"px4_fmu-v5_default",
"px4_fmu-v5_ctrlalloc",
"px4_fmu-v5_debug",
"px4_fmu-v5_default",
"px4_fmu-v5_fixedwing",
"px4_fmu-v5_multicopter",
"px4_fmu-v5_optimized",
"px4_fmu-v5_rover",
"px4_fmu-v5_rtps",
"px4_fmu-v5_stackcheck",
"px4_fmu-v5_uavcanv0periph",
"px4_fmu-v5_uavcanv1",
"px4_fmu-v5x_base_phy_DP83848C",
"px4_fmu-v5x_default",
"px4_fmu-v6u_default",
"px4_fmu-v6x_default",
"px4_io-v2_default",
"spracing_h7extreme_default",
@@ -107,7 +130,7 @@ pipeline {
// TODO: actually upload artifacts to S3
// stage('S3 Upload') {
// agent {
// docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
// docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
// }
// options {
// skipDefaultCheckout()
-90
View File
@@ -1,90 +0,0 @@
#!/usr/bin/env groovy
pipeline {
agent none
stages {
stage('Build') {
parallel {
stage('px4_sitl_default (OSX)') {
agent {
label 'mac'
}
environment {
CCACHE_BASEDIR = "${env.WORKSPACE}"
}
steps {
sh 'export'
sh 'make distclean'
sh 'git fetch --tags'
sh 'ccache -s'
sh 'make px4_sitl_default'
sh 'ccache -s'
}
post {
always {
sh 'make distclean'
}
}
} // stage px4_sitl_default
stage('px4_fmu-v5_default (OSX)') {
agent {
label 'mac'
}
environment {
CCACHE_BASEDIR = "${env.WORKSPACE}"
}
steps {
sh 'export'
sh 'make distclean'
sh 'git fetch --tags'
sh 'ccache -s'
sh 'make px4_fmu-v5_default'
sh 'ccache -s'
}
post {
always {
sh 'make distclean'
}
}
} // stage px4_fmu-v5_default
stage('sitl tests (OSX)') {
agent {
label 'mac'
}
environment {
CCACHE_BASEDIR = "${env.WORKSPACE}"
}
steps {
sh 'export'
sh 'make distclean'
sh 'git fetch --tags'
sh 'ccache -s'
sh 'make tests'
sh 'ccache -s'
}
post {
always {
sh 'make distclean'
}
}
} // stage sitl tests
} // parallel
} // stage Build
} // stages
environment {
CCACHE_CPP2 = '1'
CCACHE_DIR = '/tmp/ccache'
CI = true
}
options {
buildDiscarder(logRotator(numToKeepStr: '10', artifactDaysToKeepStr: '20'))
timeout(time: 120, unit: 'MINUTES')
}
}
+375 -328
View File
File diff suppressed because it is too large Load Diff
+42
View File
@@ -0,0 +1,42 @@
// For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.134.0/containers/cpp
{
"name": "px4-dev-nuttx",
"image": "px4io/px4-dev-nuttx-focal:2021-04-29",
"runArgs": [ "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined" ],
// Set *default* container specific settings.json values on container create.
"settings": {
"terminal.integrated.shell.linux": "/bin/bash"
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"chiehyu.vscode-astyle",
"dan-c-underwood.arm",
"fredericbonnet.cmake-test-adapter",
"github.vscode-pull-request-github",
"marus25.cortex-debug",
"ms-azuretools.vscode-docker",
"ms-iot.vscode-ros",
"ms-python.python",
"ms-vscode.cmake-tools",
"ms-vscode.cpptools",
"ms-vscode.cpptools-extension-pack",
"redhat.vscode-yaml",
"streetsidesoftware.code-spell-checker",
"twxs.cmake",
"uavcan.dsdl",
"wholroyd.jinja",
"zixuanwang.linkerscript"
],
"containerUser": "user",
"containerEnv": {
"LOCAL_USER_ID": "${localEnv:UID}"
},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [14556],
}
+17 -8
View File
@@ -17,6 +17,7 @@ jobs:
check: [
"check_format",
"tests",
"tests_coverage",
"px4_fmu-v2_default stack_check",
"validate_module_configs",
"shellcheck_all",
@@ -26,11 +27,9 @@ jobs:
"module_documentation",
"parameters_metadata",
]
ubuntu_release: [
#bionic,
focal
]
container: px4io/px4-dev-nuttx-${{ matrix.ubuntu_release }}:2020-04-01
container:
image: ghcr.io/px4/px4-dev:2021-05-06
options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined
steps:
- uses: actions/checkout@v1
with:
@@ -53,10 +52,20 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: check environment
run: |
export
ulimit -a
- name: ${{matrix.check}}
run: make ${{matrix.check}}
- name: upload coverage
if: contains(matrix.check, 'coverage')
uses: codecov/codecov-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: unittests
file: coverage/lcov.info
+3 -3
View File
@@ -11,7 +11,7 @@ on:
jobs:
build:
runs-on: ubuntu-latest
container: px4io/px4-dev-clang:2020-04-01
container: px4io/px4-dev-clang:2021-04-29
steps:
- uses: actions/checkout@v1
with:
@@ -34,8 +34,8 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
+4 -4
View File
@@ -11,14 +11,14 @@ on:
jobs:
build:
runs-on: ubuntu-latest
container: px4io/px4-dev-armhf:2020-04-01
container: px4io/px4-dev-armhf:2021-04-29
strategy:
matrix:
config: [
aerotenna_ocpoc_default,
beaglebone_blue_default,
emlid_navio2_default,
px4_raspberrypi_default,
scumaker_pilotpi_default,
]
steps:
- uses: actions/checkout@v1
@@ -42,8 +42,8 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
+50
View File
@@ -0,0 +1,50 @@
name: Linux ARM64 Targets
on:
push:
branches:
- 'master'
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-latest
container: px4io/px4-dev-aarch64:2021-04-29
strategy:
matrix:
config: [
scumaker_pilotpi_arm64,
]
steps:
- uses: actions/checkout@v1
with:
token: ${{secrets.ACCESS_TOKEN}}
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: ccache cache files
uses: actions/cache@v2
with:
path: ~/.ccache
key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}}
restore-keys: ${{matrix.config}}-ccache-
- name: setup ccache
run: |
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: make ${{matrix.config}}
run: make ${{matrix.config}}
- name: ccache post-run
run: ccache -s
+4 -4
View File
@@ -15,7 +15,7 @@ jobs:
matrix:
config: [
px4_fmu-v5_default,
px4_sitl_default,
px4_sitl
#tests, # includes px4_sitl
]
steps:
@@ -24,7 +24,7 @@ jobs:
token: ${{secrets.ACCESS_TOKEN}}
- name: setup
run: ./Tools/setup/macos.sh
run: ./Tools/setup/macos.sh; ./Tools/setup/macos.sh
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
@@ -43,8 +43,8 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
+35 -10
View File
@@ -4,6 +4,7 @@ on:
push:
branches:
- 'master'
- 'github-actions'
pull_request:
branches:
- '*'
@@ -11,43 +12,62 @@ on:
jobs:
build:
runs-on: ubuntu-latest
container: px4io/px4-dev-nuttx-bionic:2020-04-01
container: ghcr.io/px4/px4-dev:2021-05-06
strategy:
matrix:
config: [
airmind_mindpx-v2_default,
ark_can-flow_canbootloader,
ark_can-flow_debug,
ark_can-flow_default,
av_x-v1_default,
bitcraze_crazyflie21_default,
bitcraze_crazyflie_default,
cuav_can-gps-v1_canbootloader,
cuav_can-gps-v1_debug,
cuav_can-gps-v1_default,
cuav_nora_default,
cuav_x7pro_default,
cubepilot_cubeorange_default,
cubepilot_cubeorange_test,
cubepilot_cubeyellow_default,
cubepilot_cubeyellow_test,
cubepilot_io-v2_default,
holybro_can-gps-v1_canbootloader,
holybro_can-gps-v1_debug,
holybro_can-gps-v1_default,
holybro_durandal-v1_default,
holybro_durandal-v1_stackcheck,
holybro_kakutef7_default,
holybro_pix32v5_default,
intel_aerofc-v1_default,
modalai_fc-v1_default,
modalai_fc-v1_rtps,
mro_ctrl-zero-f7-oem_default,
mro_ctrl-zero-f7_default,
mro_ctrl-zero-h7-oem_default,
mro_ctrl-zero-h7_default,
mro_pixracerpro_default,
mro_x21-777_default,
mro_x21_default,
nxp_fmuk66-v3_default,
nxp_fmuk66-e_default,
nxp_fmuk66-e_rtps,
nxp_fmuk66-e_socketcan,
nxp_fmuk66-v3_default,
nxp_fmuk66-v3_rtps,
nxp_fmuk66-v3_socketcan,
nxp_fmurt1062-v1_default,
nxp_rddrone-uavcan146_default,
nxp_ucans32k146_canbootloader,
nxp_ucans32k146_default,
omnibus_f4sd_default,
px4_fmu-v2_default,
px4_fmu-v2_fixedwing,
px4_fmu-v2_lpe,
px4_fmu-v2_multicopter,
px4_fmu-v2_rover,
px4_fmu-v2_test,
px4_fmu-v3_default,
px4_fmu-v4_cannode,
px4_fmu-v4_default,
px4_fmu-v4_optimized,
px4_fmu-v4pro_default,
px4_fmu-v5_ctrlalloc,
px4_fmu-v5_debug,
px4_fmu-v5_default,
px4_fmu-v5_fixedwing,
px4_fmu-v5_multicopter,
@@ -55,8 +75,11 @@ jobs:
px4_fmu-v5_rover,
px4_fmu-v5_rtps,
px4_fmu-v5_stackcheck,
px4_fmu-v5_uavcanv0periph,
px4_fmu-v5_uavcanv1,
px4_fmu-v5x_base_phy_DP83848C,
px4_fmu-v5x_default,
px4_fmu-v6u_default,
px4_fmu-v6x_default,
px4_io-v2_default,
spracing_h7extreme_default,
@@ -84,8 +107,8 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
@@ -101,6 +124,8 @@ jobs:
run: make ${{matrix.config}} bloaty_symbols || true
- name: make ${{matrix.config}} bloaty_templates
run: make ${{matrix.config}} bloaty_templates || true
- name: make ${{matrix.config}} bloaty_ram
run: make ${{matrix.config}} bloaty_ram || true
- name: make ${{matrix.config}} bloaty_compare_master
run: make ${{matrix.config}} bloaty_compare_master || true
- name: ccache post-run
@@ -0,0 +1,61 @@
name: NuttX UAVCAN firmware
on:
push:
branches:
- 'master'
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-latest
container: ghcr.io/px4/px4-dev:2021-05-06
strategy:
matrix:
config: [
ark_can-flow_default,
cuav_can-gps-v1_default,
holybro_can-gps-v1_default,
#nxp_ucans32k146_default,
px4_fmu-v4_cannode
]
steps:
- uses: actions/checkout@v1
with:
token: ${{secrets.ACCESS_TOKEN}}
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: ccache cache files
uses: actions/cache@v2
with:
path: ~/.ccache
key: ${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}}
restore-keys: ${{matrix.config}}-ccache-
- name: setup ccache
run: |
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: make ${{matrix.config}}
run: make ${{matrix.config}}
- name: ccache post-run
run: ccache -s
- name: Upload px4 package
uses: actions/upload-artifact@v2
with:
name: px4_cannode_${{matrix.config}}
path: build/${{matrix.config}}/*.uavcan.bin
+31
View File
@@ -0,0 +1,31 @@
name: Build and publish Docker image
on:
push:
branches:
- 'master'
- 'github-actions'
jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Login to GitHub Container Registry
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push
uses: docker/build-push-action@v2
with:
context: .
platforms: linux/amd64
push: true
tags: |
px4/px4-dev:latest
ghcr.io/px4/px4-dev:latest
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}
-67
View File
@@ -1,67 +0,0 @@
name: Coverage
on:
push:
branches:
- 'master'
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-latest
container: px4io/px4-dev-base-focal:2020-04-01
strategy:
matrix:
config: [
tests,
#python_coverage,
]
steps:
- uses: actions/checkout@v1
with:
token: ${{secrets.ACCESS_TOKEN}}
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: ccache cache files
uses: actions/cache@v2
with:
path: ~/.ccache
key: coverage_${{matrix.config}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}}
restore-keys: coverage_${{matrix.config}}-ccache-
- name: setup ccache
run: |
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: make ${{matrix.config}}
env:
PX4_CMAKE_BUILD_TYPE: "Coverage"
run: make ${{matrix.config}}
# Report test coverage
- name: Upload coverage
run: |
git config --global credential.helper "" # disable the keychain credential helper
git config --global --add credential.helper store # enable the local store credential helper
echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential
git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential
mkdir -p coverage
lcov --directory build/px4_sitl_test --base-directory build/px4_sitl_test --gcov-tool gcov --capture -o coverage/lcov.info
- name: Upload coverage information to Codecov
uses: codecov/codecov-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: ${{matrix.config}}
file: coverage/lcov.info
+77
View File
@@ -0,0 +1,77 @@
name: Deploy metadata for all targets
on:
push:
branches:
- 'master'
- 'release/*'
- 'pr-metadata-test'
jobs:
enumerate_targets:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v1
with:
token: ${{secrets.ACCESS_TOKEN}}
- id: set-matrix
run: echo "::set-output name=matrix::$(./Tools/generate_board_targets_json.py)"
build:
runs-on: ubuntu-latest
needs: enumerate_targets
strategy:
matrix: ${{fromJson(needs.enumerate_targets.outputs.matrix)}}
container: px4io/px4-dev-${{ matrix.container }}:2021-04-29
steps:
- uses: actions/checkout@v1
with:
token: ${{secrets.ACCESS_TOKEN}}
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: ccache cache files
uses: actions/cache@v2
with:
path: ~/.ccache
key: ${{matrix.target}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}}
restore-keys: ${{matrix.target}}-ccache-
- name: setup ccache
run: |
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: make ${{matrix.target}}
run: make ${{matrix.target}}
- name: ccache post-run
run: ccache -s
- name: parameter metadata
run: |
make ${{matrix.target}} ver_gen
./src/lib/version/get_git_tag_or_branch_version.sh build/${{ matrix.target }} >> $GITHUB_ENV
cd build/${{ matrix.target }}
mkdir _metadata || true
cp parameters.* _metadata
- uses: jakejarvis/s3-sync-action@master
with:
args: --acl public-read
env:
AWS_S3_BUCKET: 'px4-travis'
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: 'us-west-1'
SOURCE_DIR: 'build/${{ matrix.target }}/_metadata/'
DEST_DIR: 'Firmware/${{ env.version }}/${{ matrix.target }}/'
@@ -1,29 +0,0 @@
name: Hardware Linux
on:
push:
branches:
- 'master'
jobs:
build:
runs-on: [emlid_navio2]
steps:
- uses: actions/checkout@v1
- name: Build
env:
CCACHE_BASEDIR: ${GITHUB_WORKSPACE}
run: |
make distclean
ccache -z
make emlid_navio2_default
ccache -s
# sanity check
- name: Sanity check
run: cd build/emlid_navio2_default/ && ./bin/px4 -s ../../posix-configs/rpi/px4_test.config
- name: Upload log to flight review
run: find . -name *.ulg
#run: ./Tools/upload_log.py -q --description "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID}" --feedback "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID} ${GITHUB_REPOSITORY} ${GITHUB_REF}" --source CI ./build/px4_sitl_default/tmp/rootfs/log/*/*.ulg
@@ -1,129 +0,0 @@
name: MAVROS Avoidance Tests
on:
push:
branches:
- 'master'
pull_request:
branches:
- '*'
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
config:
- {test_file: "mavros_posix_test_avoidance.test", vehicle: "iris_obs_avoid", mission: "avoidance", build_type: "RelWithDebInfo"}
- {test_file: "mavros_posix_test_safe_landing.test", vehicle: "iris_obs_avoid", mission: "MC_safe_landing", build_type: "RelWithDebInfo"}
container:
image: px4io/px4-dev-ros-melodic:2020-04-01
options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined
steps:
- uses: actions/checkout@v1
with:
token: ${{ secrets.ACCESS_TOKEN }}
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")
- name: ccache cache files
uses: actions/cache@v2
with:
path: ~/.ccache
key: sitl_tests-${{matrix.config.build_type}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}}
restore-keys: sitl_tests-${{matrix.config.build_type}}-ccache-
- name: setup ccache
run: |
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: check environment
run: export
- name: Build PX4 and sitl_gazebo
env:
PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}}
run: |
ccache -z
make px4_sitl_default
make px4_sitl_default sitl_gazebo
ccache -s
- name: Core dump settings
run: |
ulimit -c unlimited
echo "`pwd`/%e.core" > /proc/sys/kernel/core_pattern
- name: Run SITL tests
env:
PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}}
run: |
export
./test/rostest_avoidance_run.sh ${{matrix.config.test_file}} mission:=${{matrix.config.mission}} vehicle:=${{matrix.config.vehicle}} || true
- name: Look at core files
if: failure()
run: gdb build/px4_sitl_default/bin/px4 px4.core -ex "thread apply all bt" -ex "quit"
- name: Upload px4 coredump
if: failure()
uses: actions/upload-artifact@v2-preview
with:
name: coredump
path: px4.core
# - name: ecl EKF analysis
# if: always()
# run: ./Tools/ecl_ekf/process_logdata_ekf.py ~/.ros/log/*/*.ulg
- name: Upload logs to flight review
if: always()
run: ./Tools/upload_log.py -q --description "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID}" --feedback "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID} ${GITHUB_REPOSITORY} ${GITHUB_REF}" --source CI ~/.ros/log/*/*.ulg
- name: Upload px4 binary
if: failure()
uses: actions/upload-artifact@v2
with:
name: binary
path: build/px4_sitl_default/bin/px4
- name: Store PX4 log
if: failure()
uses: actions/upload-artifact@v2
with:
name: px4_log
path: ~/.ros/log/*/*.ulg
- name: Store ROS log
if: failure()
uses: actions/upload-artifact@v2
with:
name: ros_log
path: ~/.ros/**/rostest-*.log
# Report test coverage
- name: Upload coverage
if: contains(matrix.config.build_type, 'Coverage')
run: |
git config --global credential.helper "" # disable the keychain credential helper
git config --global --add credential.helper store # enable the local store credential helper
echo "https://x-access-token:${{ secrets.ACCESS_TOKEN }}@github.com" >> ~/.git-credentials # add credential
git config --global url."https://github.com/".insteadof git@github.com: # credentials add credential
mkdir -p coverage
lcov --directory build/px4_sitl_default --base-directory build/px4_sitl_default --gcov-tool gcov --capture -o coverage/lcov.info
- name: Upload coverage information to Codecov
if: contains(matrix.config.build_type, 'Coverage')
uses: codecov/codecov-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: mavros_avoidance
file: coverage/lcov.info
+11 -9
View File
@@ -17,15 +17,15 @@ jobs:
config:
- {vehicle: "iris", mission: "MC_mission_box", build_type: "RelWithDebInfo"}
- {vehicle: "rover", mission: "rover_mission_1", build_type: "RelWithDebInfo"}
- {vehicle: "plane", mission: "FW_mission_1", build_type: "RelWithDebInfo"}
- {vehicle: "plane_catapult",mission: "FW_mission_1", build_type: "RelWithDebInfo"}
- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "Coverage"}
- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "AddressSanitizer"}
#- {vehicle: "plane", mission: "FW_mission_1", build_type: "RelWithDebInfo"}
#- {vehicle: "plane_catapult",mission: "FW_mission_1", build_type: "RelWithDebInfo"}
#- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "Coverage"}
#- {vehicle: "standard_vtol", mission: "VTOL_mission_1", build_type: "AddressSanitizer"}
#- {vehicle: "tailsitter", mission: "VTOL_mission_1", build_type: "RelWithDebInfo"}
- {vehicle: "tiltrotor", mission: "VTOL_mission_1", build_type: "RelWithDebInfo"}
#- {vehicle: "tiltrotor", mission: "VTOL_mission_1", build_type: "RelWithDebInfo"}
container:
image: px4io/px4-dev-ros-melodic:2020-04-01
image: px4io/px4-dev-ros-melodic:2021-04-29
options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined
steps:
- uses: actions/checkout@v1
@@ -49,13 +49,15 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: check environment
run: export
run: |
export
ulimit -a
- name: Build PX4 and sitl_gazebo
env:
PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}}
+6 -4
View File
@@ -20,7 +20,7 @@ jobs:
#- {test_file: "mavros_posix_tests_offboard_rpyrt_ctl.test", vehicle: "iris", build_type: "RelWithDebInfo"}
container:
image: px4io/px4-dev-ros-melodic:2020-04-01
image: px4io/px4-dev-ros-melodic:2021-04-29
options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined
steps:
- uses: actions/checkout@v1
@@ -44,13 +44,15 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
- name: check environment
run: export
run: |
export
ulimit -a
- name: Build PX4 and sitl_gazebo
env:
PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}}
+36 -14
View File
@@ -4,15 +4,14 @@ on:
push:
branches:
- 'master'
pull_request:
branches:
- '*'
- 'release/*'
- 'pr-metadata-test'
jobs:
airframe:
runs-on: ubuntu-latest
container: px4io/px4-dev-base-focal:2020-04-01
container: ghcr.io/px4/px4-dev:2021-05-06
steps:
- uses: actions/checkout@v1
with:
@@ -23,11 +22,11 @@ jobs:
make airframe_metadata
cd build/px4_sitl_default/docs
ls -ls *
# TODO: deploy to devguide gitbook and s3
# TODO: deploy to userguide gitbook and s3
module:
runs-on: ubuntu-latest
container: px4io/px4-dev-base-focal:2020-04-01
container: ghcr.io/px4/px4-dev:2021-05-06
steps:
- uses: actions/checkout@v1
with:
@@ -38,11 +37,11 @@ jobs:
make module_documentation
cd build/px4_sitl_default/docs
ls -ls *
# TODO: deploy to devguide gitbook and s3
# TODO: deploy to userguide gitbook and s3
parameter:
runs-on: ubuntu-latest
container: px4io/px4-dev-base-focal:2020-04-01
container: ghcr.io/px4/px4-dev:2021-05-06
steps:
- uses: actions/checkout@v1
with:
@@ -51,13 +50,22 @@ jobs:
- name: parameter metadata
run: |
make parameters_metadata
cd build/px4_sitl_default/docs
ls -ls *
# TODO: deploy 'parameters.md, parameters.xml to S3 px4-travis:Firmware/master/
./src/lib/version/get_git_tag_or_branch_version.sh build/px4_sitl_default >> $GITHUB_ENV
- uses: jakejarvis/s3-sync-action@master
with:
args: --acl public-read
env:
AWS_S3_BUCKET: 'px4-travis'
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: 'us-west-1'
SOURCE_DIR: 'build/px4_sitl_default/docs/'
DEST_DIR: 'Firmware/${{ env.version }}/_general/'
uorb_graph:
runs-on: ubuntu-latest
container: px4io/px4-dev-nuttx-focal:2020-04-01
container: ghcr.io/px4/px4-dev:2021-05-06
steps:
- uses: actions/checkout@v1
with:
@@ -70,9 +78,23 @@ jobs:
ls -ls *
# TODO: deploy graph_px4_sitl.json to S3 px4-travis:Firmware/master/
micrortps_agent:
runs-on: ubuntu-latest
container: ghcr.io/px4/px4-dev:2021-05-06
steps:
- uses: actions/checkout@v1
with:
token: ${{ secrets.ACCESS_TOKEN }}
- name: microRTPS agent
run: |
make px4_sitl_rtps
git clone https://github.com/PX4/micrortps_agent.git
cp -R build/px4_sitl_rtps/src/modules/micrortps_bridge/micrortps_agent/* micrortps_agent
ROS_msgs:
runs-on: ubuntu-latest
container: px4io/px4-dev-base-bionic:2020-04-01
container: ghcr.io/px4/px4-dev:2021-05-06
steps:
- uses: actions/checkout@v1
with:
@@ -85,7 +107,7 @@ jobs:
ROS2_bridge:
runs-on: ubuntu-latest
container: px4io/px4-dev-base-bionic:2020-04-01
container: ghcr.io/px4/px4-dev:2021-05-06
steps:
- uses: actions/checkout@v1
with:
+13 -15
View File
@@ -15,12 +15,12 @@ jobs:
fail-fast: false
matrix:
config:
- {latitude: "59.617693", longitude: "-151.145316", altitude: "48", build_type: "RelWithDebInfo"} # Alaska
- {latitude: "-38.071235", longitude: "145.281220", altitude: "31", build_type: "RelWithDebInfo"} # Australia
- {latitude: "29.660316", longitude: "-82.316658", altitude: "30", build_type: "RelWithDebInfo"} # Florida
- {latitude: "47.397742", longitude: "8.545594", altitude: "488", build_type: "Coverage"} # Zurich
- {latitude: "59.617693", longitude: "-151.145316", altitude: "48", build_type: "RelWithDebInfo", model: "iris" } # Alaska
- {latitude: "-38.071235", longitude: "145.281220", altitude: "31", build_type: "RelWithDebInfo", model: "standard_vtol" } # Australia
- {latitude: "29.660316", longitude: "-82.316658", altitude: "30", build_type: "RelWithDebInfo", model: "tailsitter" } # Florida
- {latitude: "47.397742", longitude: "8.545594", altitude: "488", build_type: "Coverage", model: "standard_vtol" } # Zurich
container:
image: px4io/px4-dev-simulation-focal:2020-04-01
image: px4io/px4-dev-simulation-focal:2021-04-29
options: --privileged --ulimit core=-1 --security-opt seccomp=unconfined
steps:
- uses: actions/checkout@v1
@@ -28,9 +28,9 @@ jobs:
token: ${{ secrets.ACCESS_TOKEN }}
- name: Download MAVSDK
run: wget https://github.com/mavlink/MAVSDK/releases/download/v0.27.0/mavsdk_0.27.0_ubuntu18.04_amd64.deb
run: wget "https://github.com/mavlink/MAVSDK/releases/download/v$(cat test/mavsdk_tests/MAVSDK_VERSION)/mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb"
- name: Install MAVSDK
run: dpkg -i mavsdk_0.27.0_ubuntu18.04_amd64.deb
run: dpkg -i "mavsdk_$(cat test/mavsdk_tests/MAVSDK_VERSION)_ubuntu20.04_amd64.deb"
- name: Prepare ccache timestamp
id: ccache_cache_timestamp
@@ -49,8 +49,8 @@ jobs:
mkdir -p ~/.ccache
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf
echo "compression = true" >> ~/.ccache/ccache.conf
echo "compression_level = 6" >> ~/.ccache/ccache.conf
echo "max_size = 400M" >> ~/.ccache/ccache.conf
echo "compression_level = 5" >> ~/.ccache/ccache.conf
echo "max_size = 100M" >> ~/.ccache/ccache.conf
ccache -s
ccache -z
@@ -60,7 +60,9 @@ jobs:
PX4_HOME_LON: ${{matrix.config.longitude}}
PX4_HOME_ALT: ${{matrix.config.altitude}}
PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}}
run: export
run: |
export
ulimit -a
- name: Build PX4
env:
PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}}
@@ -92,7 +94,7 @@ jobs:
PX4_HOME_LON: ${{matrix.config.longitude}}
PX4_HOME_ALT: ${{matrix.config.altitude}}
PX4_CMAKE_BUILD_TYPE: ${{matrix.config.build_type}}
run: test/mavsdk_tests/mavsdk_test_runner.py --speed-factor 20 --abort-early test/mavsdk_tests/configs/sitl.json
run: test/mavsdk_tests/mavsdk_test_runner.py --speed-factor 20 --abort-early --model ${{matrix.config.model}} --upload test/mavsdk_tests/configs/sitl.json
- name: Look at core files
if: failure()
@@ -104,10 +106,6 @@ jobs:
name: coredump
path: px4.core
- name: Upload logs to flight review
if: failure()
run: ./Tools/upload_log.py -q --description "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID}" --feedback "${GITHUB_WORKFLOW} ${GITHUB_RUN_ID} ${GITHUB_REPOSITORY} ${GITHUB_REF}" --source CI ./build/px4_sitl_default/tmp/rootfs/log/*/*.ulg
- name: Upload px4 binary
if: failure()
uses: actions/upload-artifact@v2-preview
-5
View File
@@ -101,11 +101,6 @@ msg/tmp/
msg/topics_sources/
platforms/posix/apps.cpp
platforms/posix/apps.h
src/lib/flight_tasks/FlightTasks_generated.cpp
src/lib/flight_tasks/FlightTasks_generated.hpp
src/lib/parameters/px4_parameters.c
src/lib/parameters/px4_parameters.h
src/lib/parameters/px4_parameters_public.h
src/lib/version/build_git_version.h
src/modules/simulator/simulator_config.h
src/systemcmds/topic_listener/listener_generated.cpp
+28 -9
View File
@@ -4,7 +4,7 @@
branch = master
[submodule "src/drivers/uavcan/libuavcan"]
path = src/drivers/uavcan/libuavcan
url = https://github.com/PX4/uavcan.git
url = https://github.com/PX4/libuavcan.git
branch = px4
[submodule "Tools/jMAVSim"]
path = Tools/jMAVSim
@@ -12,15 +12,15 @@
branch = master
[submodule "Tools/sitl_gazebo"]
path = Tools/sitl_gazebo
url = https://github.com/PX4/sitl_gazebo.git
url = https://github.com/PX4/PX4-SITL_gazebo.git
branch = master
[submodule "src/lib/matrix"]
path = src/lib/matrix
url = https://github.com/PX4/Matrix.git
url = https://github.com/PX4/PX4-Matrix.git
branch = master
[submodule "src/lib/ecl"]
path = src/lib/ecl
url = https://github.com/PX4/ecl.git
url = https://github.com/PX4/PX4-ECL.git
branch = master
[submodule "boards/atlflight/cmake_hexagon"]
path = boards/atlflight/cmake_hexagon
@@ -28,23 +28,42 @@
branch = px4
[submodule "src/drivers/gps/devices"]
path = src/drivers/gps/devices
url = https://github.com/PX4/GpsDrivers.git
url = https://github.com/PX4/PX4-GPSDrivers.git
branch = master
[submodule "src/modules/micrortps_bridge/micro-CDR"]
path = src/modules/micrortps_bridge/micro-CDR
url = https://github.com/PX4/micro-CDR.git
branch = px4
url = https://github.com/PX4/Micro-CDR.git
branch = master
[submodule "platforms/nuttx/NuttX/nuttx"]
path = platforms/nuttx/NuttX/nuttx
url = https://github.com/PX4/NuttX.git
branch = px4_firmware_nuttx-8.2
branch = px4_firmware_nuttx-10.0.0+
[submodule "platforms/nuttx/NuttX/apps"]
path = platforms/nuttx/NuttX/apps
url = https://github.com/PX4/NuttX-apps.git
branch = px4_firmware_nuttx-8.2
branch = px4_firmware_nuttx-10.0.0+
[submodule "platforms/qurt/dspal"]
path = platforms/qurt/dspal
url = https://github.com/ATLFlight/dspal.git
[submodule "Tools/flightgear_bridge"]
path = Tools/flightgear_bridge
url = https://github.com/PX4/PX4-FlightGear-Bridge.git
[submodule "Tools/jsbsim_bridge"]
path = Tools/jsbsim_bridge
url = https://github.com/PX4/px4-jsbsim-bridge.git
[submodule "src/drivers/uavcan_v1/libcanard"]
path = src/drivers/uavcan_v1/libcanard
url = https://github.com/UAVCAN/libcanard.git
[submodule "src/drivers/uavcan_v1/public_regulated_data_types"]
path = src/drivers/uavcan_v1/public_regulated_data_types
url = https://github.com/UAVCAN/public_regulated_data_types.git
[submodule "src/drivers/uavcannode_gps_demo/public_regulated_data_types"]
path = src/drivers/uavcannode_gps_demo/public_regulated_data_types
url = https://github.com/UAVCAN/public_regulated_data_types.git
[submodule "src/drivers/uavcannode_gps_demo/libcanard"]
path = src/drivers/uavcannode_gps_demo/libcanard
url = https://github.com/UAVCAN/libcanard.git
[submodule "src/drivers/uavcan_v1/legacy_data_types"]
path = src/drivers/uavcan_v1/legacy_data_types
url = https://github.com/px4/public_regulated_data_types/
branch = legacy
+8 -67
View File
@@ -1,75 +1,16 @@
{
"configurations": [
{
"name": "Linux",
"browse": {
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": "${workspaceFolder}/.vscode/browse.vc.db"
},
"compileCommands": "${workspaceFolder}/.vscode/compile_commands.json",
"compilerPath": "/usr/bin/g++",
"name": "PX4",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [],
"macFrameworkPath": [],
"configurationProvider": "ms-vscode.cmake-tools",
"cppStandard": "c++14",
"cStandard": "c11",
"defines": [
"__PX4_LINUX",
"__PX4_POSIX"
],
"forcedInclude": [
"${workspaceFolder}/src/include/visibility.h"
],
"includePath": [
"${workspaceFolder}/boards/px4/sitl/src",
"${workspaceFolder}/build/px4_sitl_default",
"${workspaceFolder}/platforms/common/include",
"${workspaceFolder}/platforms/posix/include",
"${workspaceFolder}/platforms/posix/src/px4/common/include",
"${workspaceFolder}/platforms/posix/src/px4/common/include",
"${workspaceFolder}/platforms/posix/src/px4/generic/generic/include",
"${workspaceFolder}/src",
"${workspaceFolder}/src/include",
"${workspaceFolder}/src/lib",
"${workspaceFolder}/src/lib",
"${workspaceFolder}/src/lib/matrix",
"${workspaceFolder}/src/modules"
],
"intelliSenseMode": "${default}"
},
{
"name": "Mac",
"browse": {
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": "${workspaceFolder}/.vscode/browse.vc.db"
},
"compileCommands": "${workspaceFolder}/.vscode/compile_commands.json",
"compilerPath": "/usr/bin/clang++",
"configurationProvider": "ms-vscode.cmake-tools",
"cppStandard": "c++14",
"cStandard": "c11",
"defines": [
"__PX4_DARWIN",
"__PX4_POSIX"
],
"forcedInclude": [
"${workspaceFolder}/src/include/visibility.h"
],
"includePath": [
"${workspaceFolder}/boards/px4/sitl/src",
"${workspaceFolder}/build/px4_sitl_default",
"${workspaceFolder}/platforms/common/include",
"${workspaceFolder}/platforms/posix/include",
"${workspaceFolder}/platforms/posix/src/px4/common/include",
"${workspaceFolder}/platforms/posix/src/px4/common/include",
"${workspaceFolder}/platforms/posix/src/px4/generic/generic/include",
"${workspaceFolder}/src",
"${workspaceFolder}/src/include",
"${workspaceFolder}/src/lib",
"${workspaceFolder}/src/lib",
"${workspaceFolder}/src/lib/matrix",
"${workspaceFolder}/src/modules"
],
"intelliSenseMode": "${default}"
"cStandard": "c11"
}
],
"version": 4
}
}
+50 -10
View File
@@ -56,11 +56,36 @@ CONFIG:
buildType: MinSizeRel
settings:
CONFIG: airmind_mindpx-v2_default
ark_can-flow_default:
short: ark_can-flow_default
buildType: MinSizeRel
settings:
CONFIG: ark_can-flow_default
ark_can-flow_canbootloader:
short: ark_can-flow_canbootloader
buildType: MinSizeRel
settings:
CONFIG: ark_can-flow_canbootloader
av_x-v1_default:
short: av_x-v1
buildType: MinSizeRel
settings:
CONFIG: av_x-v1_default
bitcraze_crazyflie_default:
short: bitcraze_crazyflie
buildType: MinSizeRel
settings:
CONFIG: bitcraze_crazyflie_default
cuav_can-gps-v1_default:
short: cuav_can-gps-v1_default
buildType: MinSizeRel
settings:
CONFIG: cuav_can-gps-v1_default
cuav_can-gps-v1_canbootloader:
short: cuav_can-gps-v1_canbootloader
buildType: MinSizeRel
settings:
CONFIG: cuav_can-gps-v1_canbootloader
cuav_nora_default:
short: cuav_nora
buildType: MinSizeRel
@@ -71,26 +96,31 @@ CONFIG:
buildType: MinSizeRel
settings:
CONFIG: cuav_x7pro_default
cubepilot_cubeorange_default:
cubepilot_cubeorange_test:
short: cubepilot_cubeorange
buildType: MinSizeRel
settings:
CONFIG: cubepilot_orange_default
cubepilot_cubeyellow_default:
short: cubepilot_cubeyellow
CONFIG: cubepilot_orange_test
emlid_navio2_default:
short: emlid_navio2
buildType: MinSizeRel
settings:
CONFIG: cubepilot_cubeyellow_default
CONFIG: emlid_navio2_default
holybro_can-gps-v1_canbootloader:
short: holybro_can-gps-v1_canbootloader
buildType: MinSizeRel
settings:
CONFIG: holybro_can-gps-v1_canbootloader
holybro_can-gps-v1_default:
short: holybro_can-gps-v1_default
buildType: MinSizeRel
settings:
CONFIG: holybro_can-gps-v1_default
holybro_durandal-v1_default:
short: holybro_durandal-v1
buildType: MinSizeRel
settings:
CONFIG: holybro_durandal-v1_default
intel_aerofc-v1_default:
short: intel_aerofc-v1
buildType: MinSizeRel
settings:
CONFIG: intel_aerofc-v1_default
modalai_fc-v1_default:
short: modalai_fc-v1
buildType: MinSizeRel
@@ -101,6 +131,16 @@ CONFIG:
buildType: MinSizeRel
settings:
CONFIG: mro_ctrl-zero-f7_default
mro_pixracerpro_bootloader:
short: mro_pixracerpro_bootloader
buildType: MinSizeRel
settings:
CONFIG: mro_pixracerpro_bootloader
mro_pixracerpro_default:
short: mro_pixracerpro_default
buildType: MinSizeRel
settings:
CONFIG: mro_pixracerpro_default
mro_x21-777_default:
short: mro_x2.1-777
buildType: MinSizeRel
+3 -1
View File
@@ -4,6 +4,7 @@
"recommendations": [
"chiehyu.vscode-astyle",
"dan-c-underwood.arm",
"fredericbonnet.cmake-test-adapter",
"github.vscode-pull-request-github",
"marus25.cortex-debug",
"ms-azuretools.vscode-docker",
@@ -11,8 +12,9 @@
"ms-python.python",
"ms-vscode.cmake-tools",
"ms-vscode.cpptools",
"ms-vscode.cpptools-extension-pack",
"redhat.vscode-yaml",
"timonwong.shellcheck",
"streetsidesoftware.code-spell-checker",
"twxs.cmake",
"uavcan.dsdl",
"wholroyd.jinja",
+19 -60
View File
@@ -3,70 +3,33 @@
"astyle.c.enable": true,
"astyle.cpp.enable": true,
"breadcrumbs.enabled": true,
"cmake.autoRestartBuild": true,
"cmake.buildBeforeRun": true,
"cmake.buildDirectory": "${workspaceFolder}/build/${variant:CONFIG}",
"cmake.configureOnOpen": true,
"cmake.copyCompileCommands": "${workspaceFolder}/.vscode/compile_commands.json",
"cmake.debugConfig": {
"name": "SITL shell (gdb)",
"type": "cppdbg",
"request": "launch",
"program": "${command:cmake.launchTargetPath}",
"args": [
"${workspaceFolder}/ROMFS/px4fmu_common",
"-s",
"etc/init.d-posix/rcS",
"-t",
"${workspaceFolder}/test_data"
],
"stopAtEntry": false,
"cwd": "${command:cmake.buildDirectory}/tmp",
"environment": [
{
"name": "PX4_SIM_MODEL",
"value": "shell"
}
],
"externalConsole": false,
"linux": {
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "PX4 ignore wq signals",
"text": "handle SIGCONT nostop noprint nopass",
"ignoreFailures": true
}
]
},
"osx": {
"MIMode": "lldb",
"setupCommands": [
{
"text": "pro hand -p true -s false -n false SIGCONT",
}
]
}
},
"C_Cpp.autoAddFileAssociations": false,
"C_Cpp.clang_format_fallbackStyle": "none",
"C_Cpp.default.browse.databaseFilename": "${workspaceRoot}/.vscode/browse.vc.db",
"C_Cpp.default.browse.limitSymbolsToIncludedHeaders": true,
"C_Cpp.default.cppStandard": "c++14",
"C_Cpp.default.cStandard": "c11",
"C_Cpp.default.intelliSenseMode": "gcc-x64",
"C_Cpp.default.macFrameworkPath": null,
"C_Cpp.formatting": "Disabled",
"C_Cpp.intelliSenseEngine": "Default",
"C_Cpp.intelliSenseEngineFallback": "Enabled",
"C_Cpp.vcpkg.enabled": false,
"C_Cpp.workspaceParsingPriority": "low",
"cmake.buildBeforeRun": true,
"cmake.buildDirectory": "${workspaceFolder}/build/${variant:CONFIG}",
"cmake.buildTask": true,
"cmake.configureOnOpen": true,
"cmake.ctest.parallelJobs": 1,
"cmake.skipConfigureIfCachePresent": true,
"cmakeExplorer.buildDir": "${workspaceFolder}/build/px4_sitl_test",
"cmakeExplorer.parallelJobs": 1,
"cmakeExplorer.suiteDelimiter": "-",
"cortex-debug.enableTelemetry": false,
"cSpell.allowCompoundWords": true,
"cSpell.diagnosticLevel": "Hint",
"cSpell.showStatus": false,
"cSpell.words": [
"acro",
"nuttx",
"esc"
],
"debug.toolBarLocation": "docked",
"editor.acceptSuggestionOnEnter": "off",
"editor.defaultFormatter": "chiehyu.vscode-astyle",
@@ -88,7 +51,6 @@
"git.ignoreLimitWarning": true,
"githubPullRequests.defaultMergeMethod": "squash",
"githubPullRequests.telemetry.enabled": false,
"gitlens.advanced.telemetry.enabled": false,
"files.associations": {
"*.jinja": "jinja",
"algorithm": "cpp",
@@ -165,18 +127,15 @@
"${workspaceFolder}/build": true
},
"search.showLineNumbers": true,
"search.smartCase": true,
"shellcheck.exclude": [2154],
"telemetry.enableTelemetry": false,
"terminal.integrated.copyOnSelection": true,
"terminal.integrated.rightClickCopyPaste": true,
"terminal.integrated.rightClickBehavior": "paste",
"terminal.integrated.scrollback": 5000,
"window.title": "${dirty} ${activeEditorMedium}${separator}${rootName}",
"workbench.editor.highlightModifiedTabs": true,
"workbench.enableExperiments": false,
"workbench.settings.enableNaturalLanguageSearch": false,
"workbench.statusBar.feedback.visible": false,
"yaml.schemas": {
"${workspaceRoot}/validation/module_schema.yaml": "${workspaceRoot}/src/modules/*/module.yaml"
"${workspaceFolder}/validation/module_schema.yaml": "${workspaceFolder}/src/modules/*/module.yaml"
}
}
+143 -111
View File
@@ -3,12 +3,58 @@
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "/bin/bash",
"args": [
"-c",
"${command:cmake.tasksBuildCommand}"
],
"options": {
"cwd": "${command:cmake.buildDirectory}"
},
"group": {
"kind": "build",
"isDefault": true,
},
"problemMatcher": {
"base": "$gcc",
"fileLocation": ["relative", "${command:cmake.buildDirectory}"]
},
"presentation":{
"echo": false,
"showReuseMessage": false,
"clear": true,
"panel": "shared",
"group": "build"
}
},
{
"label": "test",
"type": "shell",
"command": "make tests",
"options": {
"cwd": "${workspaceFolder}"
},
"group": {
"kind": "test",
"isDefault": true,
},
"presentation":{
"echo": true,
"showReuseMessage": false,
"clear": false,
"panel": "shared",
"group": "test"
}
},
{
"label": "jmavsim build",
"type": "shell",
"command": "ant create_run_jar copy_res",
"options": {
"cwd": "${workspaceRoot}/Tools/jMAVSim"
"cwd": "${workspaceFolder}/Tools/jMAVSim"
},
"problemMatcher": [],
"presentation":{
@@ -17,7 +63,7 @@
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false,
}
},
{
@@ -26,7 +72,7 @@
"dependsOn": "jmavsim build",
"command": "java -Djava.ext.dirs= -jar jmavsim_run.jar -r 250 -lockstep -tcp localhost:4560 -qgc",
"options": {
"cwd": "${workspaceRoot}/Tools/jMAVSim/out/production",
"cwd": "${workspaceFolder}/Tools/jMAVSim/out/production",
"env": {
"PX4_SIM_SPEED_FACTOR": "1"
}
@@ -38,7 +84,7 @@
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false
},
"problemMatcher": [
{
@@ -68,7 +114,7 @@
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false
},
"problemMatcher": []
},
@@ -77,31 +123,31 @@
"type": "shell",
"command": "make px4_sitl_default sitl_gazebo",
"options": {
"cwd": "${workspaceRoot}"
"cwd": "${workspaceFolder}"
},
"problemMatcher": [],
"presentation":{
"echo": true,
"reveal": "never",
"reveal": "always",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false,
}
},
{
"label": "gazebo iris",
"label": "gazebo start",
"type": "shell",
"dependsOn": "gazebo build",
"options": {
"cwd": "${workspaceRoot}",
"cwd": "${workspaceFolder}",
"env": {
"GAZEBO_PLUGIN_PATH": "${workspaceRoot}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceRoot}/Tools/sitl_gazebo/models",
"GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models",
"PX4_SIM_SPEED_FACTOR": "1"
}
},
"command": "gzserver --verbose ${workspaceRoot}/Tools/sitl_gazebo/worlds/iris.world",
"command": "gzserver --verbose ${workspaceFolder}/Tools/sitl_gazebo/worlds/${input:gazeboWorld}.world",
"isBackground": true,
"presentation": {
"echo": true,
@@ -109,7 +155,7 @@
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false
},
"problemMatcher": [
{
@@ -130,106 +176,26 @@
]
},
{
"label": "gazebo plane",
"label": "gazebo",
"type": "shell",
"dependsOn": "gazebo build",
"dependsOn": "gazebo start",
"options": {
"cwd": "${workspaceRoot}",
"cwd": "${workspaceFolder}",
"env": {
"GAZEBO_PLUGIN_PATH": "${workspaceRoot}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceRoot}/Tools/sitl_gazebo/models",
"GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models",
"PX4_SIM_SPEED_FACTOR": "1"
}
},
"command": "gzserver --verbose ${workspaceRoot}/Tools/sitl_gazebo/worlds/plane.world",
"isBackground": true,
"command": "gz model --verbose --spawn-file=${workspaceFolder}/Tools/sitl_gazebo/models/${input:vehicleModel}/${input:vehicleModel}.sdf --model-name=${input:vehicleModel} -x 1.01 -y 0.98 -z 0.83",
"isBackground": false,
"presentation": {
"echo": true,
"reveal": "never",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
},
"problemMatcher": [
{
"pattern": [
{
"regexp": ".",
"file": 1,
"location": 2,
"message": 3
}
],
"background": {
"activeOnStart": true,
"beginsPattern": ".",
"endsPattern": ".",
}
}
]
},
{
"label": "gazebo standard_vtol",
"type": "shell",
"dependsOn": "gazebo build",
"options": {
"cwd": "${workspaceRoot}",
"env": {
"GAZEBO_PLUGIN_PATH": "${workspaceRoot}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceRoot}/Tools/sitl_gazebo/models",
"PX4_SIM_SPEED_FACTOR": "1"
}
},
"command": "gzserver --verbose ${workspaceRoot}/Tools/sitl_gazebo/worlds/standard_vtol.world",
"isBackground": true,
"presentation": {
"echo": true,
"reveal": "never",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
},
"problemMatcher": [
{
"pattern": [
{
"regexp": ".",
"file": 1,
"location": 2,
"message": 3
}
],
"background": {
"activeOnStart": true,
"beginsPattern": ".",
"endsPattern": ".",
}
}
]
},
{
"label": "gazebo tailsitter",
"type": "shell",
"dependsOn": "gazebo build",
"options": {
"cwd": "${workspaceRoot}",
"env": {
"GAZEBO_PLUGIN_PATH": "${workspaceRoot}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceRoot}/Tools/sitl_gazebo/models",
"PX4_SIM_SPEED_FACTOR": "1"
}
},
"command": "gzserver --verbose ${workspaceRoot}/Tools/sitl_gazebo/worlds/tailsitter.world",
"isBackground": true,
"presentation": {
"echo": true,
"reveal": "never",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false
},
"problemMatcher": [
{
@@ -254,10 +220,10 @@
"type": "shell",
"dependsOn": "gazebo build",
"options": {
"cwd": "${workspaceRoot}",
"cwd": "${workspaceFolder}",
"env": {
"GAZEBO_PLUGIN_PATH": "${workspaceRoot}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceRoot}/Tools/sitl_gazebo/models",
"GAZEBO_PLUGIN_PATH": "${workspaceFolder}/build/px4_sitl_default/build_gazebo",
"GAZEBO_MODEL_PATH": "${workspaceFolder}/Tools/sitl_gazebo/models",
"PX4_SIM_SPEED_FACTOR": "1"
}
},
@@ -269,7 +235,7 @@
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false
},
"problemMatcher": [
{
@@ -294,12 +260,42 @@
"type": "shell",
"command": "killall gzserver",
"presentation": {
"echo": false,
"reveal": "never",
"echo": true,
"reveal": "silent",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": true
"clear": false
},
"problemMatcher": [],
"dependsOn":["px4_sitl_cleanup"]
},
{
"label": "px4_sitl_cleanup",
"type": "shell",
"command": "rm -rfv /tmp/px4*",
"presentation": {
"echo": true,
"reveal": "silent",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": false
},
"problemMatcher": [],
"dependsOn":["px4_kill"]
},
{
"label": "px4_kill",
"type": "shell",
"command": "killall px4 || true",
"presentation": {
"echo": true,
"reveal": "silent",
"focus": false,
"panel": "shared",
"showReuseMessage": false,
"clear": false
},
"problemMatcher": []
},
@@ -308,7 +304,7 @@
"type": "shell",
"command": "./Tools/mavlink_shell.py",
"options": {
"cwd": "${workspaceRoot}"
"cwd": "${workspaceFolder}"
},
"presentation": {
"echo": true,
@@ -325,7 +321,7 @@
"type": "shell",
"command": "miniterm.py --raw - 57600",
"options": {
"cwd": "${workspaceRoot}"
"cwd": "${workspaceFolder}"
},
"presentation": {
"echo": true,
@@ -337,5 +333,41 @@
},
"problemMatcher": []
}
],
"inputs": [
{
"type": "pickString",
"id": "vehicleModel",
"description": "gazebo model",
"options": [
"iris",
"typhoon_h480",
"plane",
"plane_catapult",
"plane_lidar",
"standard_vtol",
"tailsitter",
"tiltrotor",
"r1_rover",
"boat"
],
"default": "iris"
},
{
"type": "pickString",
"id": "gazeboWorld",
"description": "gazebo world",
"options": [
"baylands",
"empty",
"ksql_airport",
"mcmillan_airfield",
"sonoma_raceway",
"warehouse",
"windy",
"yosemite"
],
"default": "empty"
}
]
}
+10 -2
View File
@@ -113,7 +113,7 @@ include(px4_parse_function_args)
include(px4_git)
execute_process(
COMMAND git describe --always --tags
COMMAND git describe --exclude ext/* --always --tags
OUTPUT_VARIABLE PX4_GIT_TAG
OUTPUT_STRIP_TRAILING_WHITESPACE
WORKING_DIRECTORY ${PX4_SOURCE_DIR}
@@ -185,6 +185,8 @@ if((CMAKE_BUILD_TYPE STREQUAL "Debug") OR (CMAKE_BUILD_TYPE STREQUAL "Coverage")
set(MAX_CUSTOM_OPT_LEVEL -O0)
elseif(CMAKE_BUILD_TYPE MATCHES "Sanitizer")
set(MAX_CUSTOM_OPT_LEVEL -O1)
elseif(CMAKE_BUILD_TYPE MATCHES "Release")
set(MAX_CUSTOM_OPT_LEVEL -O3)
else()
if(px4_constrained_flash_build)
set(MAX_CUSTOM_OPT_LEVEL -Os)
@@ -406,7 +408,6 @@ add_subdirectory(src/lib EXCLUDE_FROM_ALL)
add_subdirectory(platforms/${PX4_PLATFORM}/src/px4)
add_subdirectory(platforms EXCLUDE_FROM_ALL)
add_subdirectory(src/modules/uORB EXCLUDE_FROM_ALL) # TODO: platform layer
if(EXISTS "${PX4_BOARD_DIR}/CMakeLists.txt")
add_subdirectory(${PX4_BOARD_DIR})
@@ -455,3 +456,10 @@ add_custom_target(size
WORKING_DIRECTORY ${PX4_BINARY_DIR}
USES_TERMINAL
)
# install python requirements using configured python
add_custom_target(install_python_requirements
COMMAND ${PYTHON_EXECUTABLE} -m pip install --requirement ${PX4_SOURCE_DIR}/Tools/setup/requirements.txt
DEPENDS ${PX4_SOURCE_DIR}/Tools/setup/requirements.txt
USES_TERMINAL
)
+29
View File
@@ -0,0 +1,29 @@
#
# PX4 development environment
#
FROM ubuntu:20.04
LABEL maintainer="Daniel Agar <daniel@agar.ca>"
COPY Tools/setup/ubuntu.sh /tmp/ubuntu.sh
COPY Tools/setup/requirements.txt /tmp/requirements.txt
RUN DEBIAN_FRONTEND=noninteractive /tmp/ubuntu.sh --no-sim-tools \
&& apt-get -y autoremove \
&& apt-get clean autoclean \
&& rm -rf /var/lib/apt/lists/{apt,dpkg,cache,log} /tmp/* /var/tmp/*
# create user with id 1001 (jenkins docker workflow default)
RUN useradd --shell /bin/bash -u 1001 -c "" -m user && usermod -a -G dialout user
ENV CCACHE_UMASK=000
ENV PATH="/usr/lib/ccache:$PATH"
# SITL UDP PORTS
EXPOSE 14556/udp
EXPOSE 14557/udp
# create and start as LOCAL_USER_ID
COPY Tools/setup/entrypoint.sh /usr/local/bin/entrypoint.sh
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
CMD ["/bin/bash"]
Vendored
+81 -78
View File
@@ -12,12 +12,10 @@ pipeline {
}
}
parallel {
// TODO: temporarily disabled 2020-06-03 waiting on mavlink update
// stage('Catkin build on ROS workspace') {
// agent {
// docker {
// image 'px4io/px4-dev-ros-melodic:2020-04-01'
// image 'px4io/px4-dev-ros-melodic:2021-04-29'
// args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw -e HOME=$WORKSPACE'
// }
// }
@@ -54,45 +52,44 @@ pipeline {
// checkoutToSubdirectory('catkin_ws/src/Firmware')
// }
// }
//
// stage('Colcon build on ROS2 workspace') {
// agent {
// docker {
// image 'px4io/px4-dev-ros2-dashing:2020-04-01'
// args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw -e HOME=$WORKSPACE'
// }
// }
// steps {
// sh 'ls -l'
// sh '''#!/bin/bash -l
// echo $0;
// unset ROS_DISTRO;
// mkdir -p colcon_ws/src;
// cd colcon_ws;
// git -C ${WORKSPACE}/colcon_ws/src/Firmware submodule update --init --recursive --force Tools/sitl_gazebo
// git clone --recursive ${WORKSPACE}/colcon_ws/src/Firmware/Tools/sitl_gazebo src/mavlink_sitl_gazebo;
// git -C ${WORKSPACE}/colcon_ws/src/Firmware fetch --tags;
// source /opt/ros/bouncy/setup.sh;
// source /opt/ros/melodic/setup.sh;
// colcon build --event-handlers console_direct+ --symlink-install;
// '''
// }
// post {
// always {
// sh 'rm -rf colcon_ws'
// }
// }
// options {
// checkoutToSubdirectory('colcon_ws/src/Firmware')
// }
// }
stage('Colcon build on ROS2 workspace') {
agent {
docker {
image 'px4io/px4-dev-ros2-foxy:2021-04-29'
args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw -e HOME=$WORKSPACE'
}
}
steps {
sh 'ls -l'
sh '''#!/bin/bash -l
echo $0;
unset ROS_DISTRO;
mkdir -p colcon_ws/src;
cd colcon_ws;
git -C ${WORKSPACE}/colcon_ws/src/Firmware submodule update --init --recursive --force Tools/sitl_gazebo;
git -C ${WORKSPACE}/colcon_ws/src/Firmware fetch --tags;
source /opt/ros/foxy/setup.sh;
colcon build --event-handlers console_direct+ --symlink-install;
'''
}
post {
always {
sh 'rm -rf colcon_ws'
}
}
options {
checkoutToSubdirectory('colcon_ws/src/Firmware')
}
}
stage('Airframe') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh 'make distclean'
sh 'git fetch --all --tags'
sh 'make airframe_metadata'
dir('build/px4_sitl_default/docs') {
archiveArtifacts(artifacts: 'airframes.md, airframes.xml')
@@ -108,14 +105,15 @@ pipeline {
stage('Parameter') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh 'make distclean'
sh 'git fetch --all --tags'
sh 'make parameters_metadata'
dir('build/px4_sitl_default/docs') {
archiveArtifacts(artifacts: 'parameters.md, parameters.xml')
stash includes: 'parameters.md, parameters.xml', name: 'metadata_parameters'
archiveArtifacts(artifacts: 'parameters.md, parameters.xml, parameters.json.xz')
stash includes: 'parameters.md, parameters.xml, parameters.json.xz', name: 'metadata_parameters'
}
}
post {
@@ -127,10 +125,11 @@ pipeline {
stage('Module') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh 'make distclean'
sh 'git fetch --all --tags'
sh 'make module_documentation'
dir('build/px4_sitl_default/docs') {
archiveArtifacts(artifacts: 'modules/*.md')
@@ -147,13 +146,14 @@ pipeline {
stage('uORB graphs') {
agent {
docker {
image 'px4io/px4-dev-nuttx-bionic:2020-04-01'
image 'px4io/px4-dev-nuttx-focal:2021-04-29'
args '-e CCACHE_BASEDIR=$WORKSPACE -v ${CCACHE_DIR}:${CCACHE_DIR}:rw'
}
}
steps {
sh 'export'
sh 'make distclean'
sh 'git fetch --all --tags'
sh 'make uorb_graphs'
dir('Tools/uorb_graph') {
archiveArtifacts(artifacts: 'graph_px4_sitl.json')
@@ -174,48 +174,20 @@ pipeline {
parallel {
stage('Devguide') {
stage('Userguide') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh('export')
unstash 'metadata_airframes'
unstash 'metadata_parameters'
unstash 'metadata_module_documentation'
withCredentials([usernamePassword(credentialsId: 'px4buildbot_github_personal_token', passwordVariable: 'GIT_PASS', usernameVariable: 'GIT_USER')]) {
sh('git clone https://${GIT_USER}:${GIT_PASS}@github.com/PX4/Devguide.git')
sh('cp airframes.md Devguide/en/airframes/airframe_reference.md')
sh('cp parameters.md Devguide/en/advanced/parameter_reference.md')
sh('cp -R modules/*.md Devguide/en/middleware/')
sh('cd Devguide; git status; git add .; git commit -a -m "Update PX4 Firmware metadata `date`" || true')
sh('cd Devguide; git push origin master || true')
sh('rm -rf Devguide')
}
}
when {
anyOf {
branch 'master'
branch 'pr-jenkins' // for testing
}
}
options {
skipDefaultCheckout()
}
}
stage('Userguide') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
}
steps {
sh('export')
unstash 'metadata_airframes'
unstash 'metadata_parameters'
withCredentials([usernamePassword(credentialsId: 'px4buildbot_github_personal_token', passwordVariable: 'GIT_PASS', usernameVariable: 'GIT_USER')]) {
sh('git clone https://${GIT_USER}:${GIT_PASS}@github.com/PX4/px4_user_guide.git')
sh('cp airframes.md px4_user_guide/en/airframes/airframe_reference.md')
sh('cp parameters.md px4_user_guide/en/advanced_config/parameter_reference.md')
sh('cp -R modules/*.md px4_user_guide/en/modules/')
sh('cd px4_user_guide; git status; git add .; git commit -a -m "Update PX4 Firmware metadata `date`" || true')
sh('cd px4_user_guide; git push origin master || true')
sh('rm -rf px4_user_guide')
@@ -234,7 +206,7 @@ pipeline {
stage('QGroundControl') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh('export')
@@ -260,9 +232,39 @@ pipeline {
}
}
stage('microRTPS agent') {
agent {
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh('export')
sh('git fetch --all --tags')
sh('make distclean')
sh('make px4_sitl_rtps')
withCredentials([usernamePassword(credentialsId: 'px4buildbot_github_personal_token', passwordVariable: 'GIT_PASS', usernameVariable: 'GIT_USER')]) {
sh("git clone https://${GIT_USER}:${GIT_PASS}@github.com/PX4/micrortps_agent.git -b ${BRANCH_NAME}")
sh("rm -rf micrortps_agent/src micrortps_agent/idl")
sh('cp -R build/px4_sitl_rtps/src/modules/micrortps_bridge/micrortps_agent/* micrortps_agent')
sh('cd micrortps_agent; git status; git add src; git commit -a -m "Update microRTPS agent source code `date`" || true')
sh('cd micrortps_agent; git push origin ${BRANCH_NAME} || true')
sh('cd micrortps_agent; git status; git add idl; git commit -a -m "Update IDL definitions `date`" || true')
sh('cd micrortps_agent; git push origin ${BRANCH_NAME} || true')
sh('cd micrortps_agent; git status; git add CMakeLists.txt; git commit -a -m "Update CMakeLists.txt `date`" || true')
sh('cd micrortps_agent; git push origin ${BRANCH_NAME} || true')
sh('rm -rf micrortps_agent')
}
}
when {
anyOf {
branch 'master'
branch 'pr-jenkins' // for testing
}
}
}
stage('PX4 ROS msgs') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh('export')
@@ -270,12 +272,12 @@ pipeline {
withCredentials([usernamePassword(credentialsId: 'px4buildbot_github_personal_token', passwordVariable: 'GIT_PASS', usernameVariable: 'GIT_USER')]) {
sh("git clone https://${GIT_USER}:${GIT_PASS}@github.com/PX4/px4_msgs.git")
// 'master' branch
sh('python msg/tools/uorb_to_ros_msgs.py msg/ px4_msgs/msg/')
sh('./msg/tools/uorb_to_ros_msgs.py msg/ px4_msgs/msg/')
sh('cd px4_msgs; git status; git add .; git commit -a -m "Update message definitions `date`" || true')
sh('cd px4_msgs; git push origin master || true')
// 'ros1' branch
sh('cd px4_msgs; git checkout ros1')
sh('python msg/tools/uorb_to_ros_msgs.py msg/ px4_msgs/msg/')
sh('./msg/tools/uorb_to_ros_msgs.py msg/ px4_msgs/msg/')
sh('cd px4_msgs; git status; git add .; git commit -a -m "Update message definitions `date`" || true')
sh('cd px4_msgs; git push origin ros1 || true')
sh('rm -rf px4_msgs')
@@ -291,7 +293,7 @@ pipeline {
stage('PX4 ROS2 bridge') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh('export')
@@ -334,7 +336,7 @@ pipeline {
stage('S3') {
agent {
docker { image 'px4io/px4-dev-base-bionic:2020-04-01' }
docker { image 'ghcr.io/px4/px4-dev:2021-05-06' }
}
steps {
sh('export')
@@ -344,6 +346,7 @@ pipeline {
withAWS(credentials: 'px4_aws_s3_key', region: 'us-east-1') {
s3Upload(acl: 'PublicRead', bucket: 'px4-travis', file: 'airframes.xml', path: 'Firmware/master/')
s3Upload(acl: 'PublicRead', bucket: 'px4-travis', file: 'parameters.xml', path: 'Firmware/master/')
s3Upload(acl: 'PublicRead', bucket: 'px4-travis', file: 'parameters.json.xz', path: 'Firmware/master/')
}
}
when {
+1 -1
View File
@@ -1,6 +1,6 @@
BSD 3-Clause License
Copyright (c) 2012 - 2020, PX4 Development Team
Copyright (c) 2012 - 2021, PX4 Development Team
All rights reserved.
Redistribution and use in source and binary forms, with or without
+11 -7
View File
@@ -174,6 +174,8 @@ define cmake-build
@$(call cmake-cache-check)
@# make sure to start from scratch when switching from GNU Make to Ninja
@if [ $(PX4_CMAKE_GENERATOR) = "Ninja" ] && [ -e $(BUILD_DIR)/Makefile ]; then rm -rf $(BUILD_DIR); fi
@# make sure to start from scratch if ninja build file is missing
@if [ $(PX4_CMAKE_GENERATOR) = "Ninja" ] && [ ! -f $(BUILD_DIR)/build.ninja ]; then rm -rf $(BUILD_DIR); fi
@# only excplicitly configure the first build, if cache file already exists the makefile will rerun cmake automatically if necessary
@if [ ! -e $(BUILD_DIR)/CMakeCache.txt ] || [ $(CMAKE_CACHE_CHECK) ]; then \
mkdir -p $(BUILD_DIR) \
@@ -268,9 +270,9 @@ px4fmu_firmware: \
misc_qgc_extra_firmware: \
check_nxp_fmuk66-v3_default \
check_nxp_fmurt1062-v1_default \
check_intel_aerofc-v1_default \
check_mro_x21_default \
check_bitcraze_crazyflie_default \
check_bitcraze_crazyflie21_default \
check_airmind_mindpx-v2_default \
check_px4_fmu-v2_lpe \
sizes
@@ -301,8 +303,7 @@ check_%:
@echo
uorb_graphs:
@./Tools/uorb_graph/create_from_startupscript.sh
@./Tools/uorb_graph/create.py --src-path src --exclude-path src/examples --file Tools/uorb_graph/graph_full
@./Tools/uorb_graph/create.py --src-path src --exclude-path src/examples --exclude-path src/lib --file Tools/uorb_graph/graph_full
@$(MAKE) --no-print-directory px4_fmu-v2_default uorb_graph
@$(MAKE) --no-print-directory px4_fmu-v4_default uorb_graph
@$(MAKE) --no-print-directory px4_sitl_default uorb_graph
@@ -317,7 +318,7 @@ coverity_scan: px4_sitl_default
.PHONY: parameters_metadata airframe_metadata module_documentation px4_metadata doxygen
parameters_metadata:
@$(MAKE) --no-print-directory px4_sitl_default metadata_parameters
@$(MAKE) --no-print-directory px4_sitl_default metadata_parameters ver_gen
airframe_metadata:
@$(MAKE) --no-print-directory px4_sitl_default metadata_airframes
@@ -361,8 +362,10 @@ tests:
tests_coverage:
@$(MAKE) clean
@$(MAKE) --no-print-directory px4_sitl_default test_coverage_genhtml PX4_CMAKE_BUILD_TYPE=Coverage
@echo "Open "$(SRC_DIR)"/build/px4_sitl_default/coverage-html/index.html to see coverage"
@$(MAKE) --no-print-directory tests PX4_CMAKE_BUILD_TYPE=Coverage
@mkdir -p coverage
@lcov --directory build/px4_sitl_test --base-directory build/px4_sitl_test --gcov-tool gcov --capture -o coverage/lcov.info
rostest: px4_sitl_default
@$(MAKE) --no-print-directory px4_sitl_default sitl_gazebo
@@ -466,6 +469,7 @@ validate_module_configs:
clean:
@rm -rf "$(SRC_DIR)"/build
@git submodule foreach git clean -df
submodulesclean:
@git submodule foreach --quiet --recursive git clean -ff -x -d
@@ -483,7 +487,7 @@ gazeboclean:
distclean: gazeboclean
@git submodule deinit -f .
@git clean -ff -x -d -e ".project" -e ".cproject" -e ".idea" -e ".settings" -e ".vscode"
@git clean -ff -x -d -e ".cproject" -e ".idea" -e ".project" -e ".settings" -e ".vscode"
# Help / Error
# --------------------------------------------------------------------
+66 -44
View File
@@ -1,33 +1,37 @@
# PX4 Drone Autopilot
[![Releases](https://img.shields.io/github/release/PX4/Firmware.svg)](https://github.com/PX4/Firmware/releases) [![DOI](https://zenodo.org/badge/22634/PX4/Firmware.svg)](https://zenodo.org/badge/latestdoi/22634/PX4/Firmware)
[![Releases](https://img.shields.io/github/release/PX4/PX4-Autopilot.svg)](https://github.com/PX4/PX4-Autopilot/releases) [![DOI](https://zenodo.org/badge/22634/PX4/PX4-Autopilot.svg)](https://zenodo.org/badge/latestdoi/22634/PX4/PX4-Autopilot)
[![Nuttx Targets](https://github.com/PX4/Firmware/workflows/Nuttx%20Targets/badge.svg)](https://github.com/PX4/Firmware/actions?query=workflow%3A%22Nuttx+Targets%22?branch=master) [![SITL Tests](https://github.com/PX4/Firmware/workflows/SITL%20Tests/badge.svg?branch=master)](https://github.com/PX4/Firmware/actions?query=workflow%3A%22SITL+Tests%22)
[![Nuttx Targets](https://github.com/PX4/PX4-Autopilot/workflows/Nuttx%20Targets/badge.svg)](https://github.com/PX4/PX4-Autopilot/actions?query=workflow%3A%22Nuttx+Targets%22?branch=master) [![SITL Tests](https://github.com/PX4/PX4-Autopilot/workflows/SITL%20Tests/badge.svg?branch=master)](https://github.com/PX4/PX4-Autopilot/actions?query=workflow%3A%22SITL+Tests%22)
[![Slack](https://px4-slack.herokuapp.com/badge.svg)](http://slack.px4.io)
This repository holds the [PX4](http://px4.io) flight control solution for drones, with the main applications located in the [src/modules](https://github.com/PX4/Firmware/tree/master/src/modules) directory. It also contains the PX4 Drone Middleware Platform, which provides drivers and middleware to run drones.
This repository holds the [PX4](http://px4.io) flight control solution for drones, with the main applications located in the [src/modules](https://github.com/PX4/PX4-Autopilot/tree/master/src/modules) directory. It also contains the PX4 Drone Middleware Platform, which provides drivers and middleware to run drones.
* Official Website: http://px4.io (License: BSD 3-clause, [LICENSE](https://github.com/PX4/Firmware/blob/master/LICENSE))
PX4 is highly portable, OS-independent and supports Linux, NuttX and QuRT out of the box.
* Official Website: http://px4.io (License: BSD 3-clause, [LICENSE](https://github.com/PX4/PX4-Autopilot/blob/master/LICENSE))
* [Supported airframes](https://docs.px4.io/master/en/airframes/airframe_reference.html) ([portfolio](http://px4.io/#airframes)):
* [Multicopters](https://docs.px4.io/master/en/airframes/airframe_reference.html#copter)
* [Fixed wing](https://docs.px4.io/master/en/airframes/airframe_reference.html#plane)
* [VTOL](https://docs.px4.io/master/en/airframes/airframe_reference.html#vtol)
* many more experimental types (Rovers, Blimps, Boats, Submarines, Autogyros, etc)
* Releases: [Downloads](https://github.com/PX4/Firmware/releases)
* [Multicopters](https://docs.px4.io/master/en/frames_multicopter/)
* [Fixed wing](https://docs.px4.io/master/en/frames_plane/)
* [VTOL](https://docs.px4.io/master/en/frames_vtol/)
* [Autogyro](https://docs.px4.io/master/en/frames_autogyro/)
* [Rover](https://docs.px4.io/master/en/frames_rover/)
* many more experimental types (Blimps, Boats, Submarines, High altitude balloons, etc)
* Releases: [Downloads](https://github.com/PX4/PX4-Autopilot/releases)
## PX4 Users
## Building a PX4 based drone, rover, boat or robot
The [PX4 User Guide](https://docs.px4.io/master/en/) explains how to assemble [supported vehicles](https://docs.px4.io/master/en/airframes/airframe_reference.html) and fly drones with PX4.
See the [forum and chat](https://docs.px4.io/master/en/#support) if you need help!
## PX4 Developers
## Changing code and contributing
This [Developer Guide](https://dev.px4.io/) is for software developers who want to modify the flight stack and middleware (e.g. to add new flight modes), hardware integrators who want to support new flight controller boards and peripherals, and anyone who wants to get PX4 working on a new (unsupported) airframe/vehicle.
This [Developer Guide](https://docs.px4.io/master/en/development/development.html) is for software developers who want to modify the flight stack and middleware (e.g. to add new flight modes), hardware integrators who want to support new flight controller boards and peripherals, and anyone who wants to get PX4 working on a new (unsupported) airframe/vehicle.
Developers should read the [Guide for Contributions](https://dev.px4.io/master/en/contribute/).
Developers should read the [Guide for Contributions](https://docs.px4.io/master/en/contribute/).
See the [forum and chat](https://dev.px4.io/master/en/#support) if you need help!
@@ -40,56 +44,74 @@ The PX4 Dev Team syncs up on a [weekly dev call](https://dev.px4.io/master/en/co
## Maintenance Team
* Project: Founder - [Lorenz Meier](https://github.com/LorenzMeier), Architecture: [Daniel Agar](https://github.com/dagar)
* [Dev Call](https://github.com/PX4/Firmware/labels/devcall) - [Ramon Roche](https://github.com/mrpollo)
* Project: Founder
* [Lorenz Meier](https://github.com/LorenzMeier)
* Architecture
* [Daniel Agar](https://github.com/dagar)
* [Dev Call](https://github.com/PX4/PX4-Autopilot/labels/devcall)
* [Ramon Roche](https://github.com/mrpollo)
* Communication Architecture
* [Beat Kueng](https://github.com/bkueng)
* [Julian Oes](https://github.com/JulianOes)
* UI in QGroundControl
* [Gus Grubba](https://github.com/dogmaphobic)
* [Multicopter Flight Control](https://github.com/PX4/Firmware/labels/multicopter)
* [Multicopter Flight Control](https://github.com/PX4/PX4-Autopilot/labels/multicopter)
* [Mathieu Bresciani](https://github.com/bresch)
* [Multicopter Software Architecture](https://github.com/PX4/Firmware/labels/multicopter)
* [Multicopter Software Architecture](https://github.com/PX4/PX4-Autopilot/labels/multicopter)
* [Matthias Grob](https://github.com/MaEtUgR)
* [VTOL Flight Control](https://github.com/PX4/Firmware/labels/vtol)
* [VTOL Flight Control](https://github.com/PX4/PX4-Autopilot/labels/vtol)
* [Roman Bapst](https://github.com/RomanBapst)
* [Fixed Wing Flight Control](https://github.com/PX4/Firmware/labels/fixedwing)
* [Fixed Wing Flight Control](https://github.com/PX4/PX4-Autopilot/labels/fixedwing)
* [Roman Bapst](https://github.com/RomanBapst)
* OS / NuttX [David Sidrane](https://github.com/davids5)
* Driver Architecture [Daniel Agar](https://github.com/dagar)
* Commander Architecture [Julian Oes](https://github.com/julianoes)
* [UAVCAN](https://github.com/PX4/Firmware/labels/uavcan) [Daniel Agar](https://github.com/dagar)
* [State Estimation](https://github.com/PX4/Firmware/issues?q=is%3Aopen+is%3Aissue+label%3A%22state+estimation%22) - [Paul Riseborough](https://github.com/priseborough)
* Vision based navigation
* [Julian Kent](https://github.com/jkflying)
* Obstacle Avoidance - [Martina Rivizzigno](https://github.com/mrivi)
* RTPS/ROS2 Interface - [Nuno Marques](https://github.com/TSC21)
* OS / NuttX
* [David Sidrane](https://github.com/davids5)
* Driver Architecture
* [Daniel Agar](https://github.com/dagar)
* Commander Architecture
* [Julian Oes](https://github.com/julianoes)
* [UAVCAN](https://github.com/PX4/PX4-Autopilot/labels/uavcan)
* [Daniel Agar](https://github.com/dagar)
* [State Estimation](https://github.com/PX4/PX4-Autopilot/issues?q=is%3Aopen+is%3Aissue+label%3A%22state+estimation%22)
* [Paul Riseborough](https://github.com/priseborough)
* Vision based navigation and Obstacle Avoidance
* [Markus Achtelik](https://github.com/markusachtelik)
* RTPS/ROS2 Interface
* [Nuno Marques](https://github.com/TSC21)
See also [maintainers list](https://px4.io/community/maintainers/) (px4.io) and the [contributors list](https://github.com/PX4/Firmware/graphs/contributors) (Github).
See also [maintainers list](https://px4.io/community/maintainers/) (px4.io) and the [contributors list](https://github.com/PX4/PX4-Autopilot/graphs/contributors) (Github).
## Supported Hardware
This repository contains code supporting these boards:
* FMUv2
* [Pixhawk](https://docs.px4.io/master/en/flight_controller/pixhawk.html)
* [Pixfalcon](https://docs.px4.io/master/en/flight_controller/pixfalcon.html)
* FMUv3
This repository contains code supporting Pixhawk standard boards (best supported, best tested, recommended choice) and proprietary boards.
### Pixhawk Standard Boards
* FMUv6X and FMUv6U (STM32H7, 2021)
* Various vendors will provide FMUv6X and FMUv6U based designs Q3/2021
* FMUv5 and FMUv5X (STM32F7, 2019/20)
* [Pixhawk 4 (FMUv5)](https://docs.px4.io/master/en/flight_controller/pixhawk4.html)
* [Pixhawk 4 mini (FMUv5)](https://docs.px4.io/master/en/flight_controller/pixhawk4_mini.html)
* [CUAV V5+ (FMUv5)](https://docs.px4.io/master/en/flight_controller/cuav_v5_plus.html)
* [CUAV V5 nano (FMUv5)](https://docs.px4.io/master/en/flight_controller/cuav_v5_nano.html)
* [Auterion Skynode (FMUv5X)](https://docs.px4.io/master/en/flight_controller/auterion_skynode.html)
* FMUv4 (STM32F4, 2015)
* [Pixracer](https://docs.px4.io/master/en/flight_controller/pixracer.html)
* [Pixhawk 3 Pro](https://docs.px4.io/master/en/flight_controller/pixhawk3_pro.html)
* FMUv3 (STM32F4, 2014)
* [Pixhawk 2](https://docs.px4.io/master/en/flight_controller/pixhawk-2.html)
* [Pixhawk Mini](https://docs.px4.io/master/en/flight_controller/pixhawk_mini.html)
* [CUAV Pixhack v3](https://docs.px4.io/master/en/flight_controller/pixhack_v3.html)
* FMUv4
* [Pixracer](https://docs.px4.io/master/en/flight_controller/pixracer.html)
* [Pixhawk 3 Pro](https://docs.px4.io/master/en/flight_controller/pixhawk3_pro.html)
* FMUv5 (ARM Cortex M7)
* [Pixhawk 4](https://docs.px4.io/master/en/flight_controller/pixhawk4.html)
* [Pixhawk 4 mini](https://docs.px4.io/master/en/flight_controller/pixhawk4_mini.html)
* [CUAV V5+](https://docs.px4.io/master/en/flight_controller/cuav_v5_plus.html)
* [CUAV V5 nano](https://docs.px4.io/master/en/flight_controller/cuav_v5_nano.html)
* FMUv2 (STM32F4, 2013)
* [Pixhawk](https://docs.px4.io/master/en/flight_controller/pixhawk.html)
* [Pixfalcon](https://docs.px4.io/master/en/flight_controller/pixfalcon.html)
### Manufacturer and Community supported
* [Holybro Durandal](https://docs.px4.io/master/en/flight_controller/durandal.html)
* [Hex Cube Orange](https://docs.px4.io/master/en/flight_controller/cubepilot_cube_orange.html)
* [Hex Cube Yellow](https://docs.px4.io/master/en/flight_controller/cubepilot_cube_yellow.html)
* [Airmind MindPX V2.8](http://www.mindpx.net/assets/accessories/UserGuide_MindPX.pdf)
* [Airmind MindRacer V1.2](http://mindpx.net/assets/accessories/mindracer_user_guide_v1.2.pdf)
* [Bitcraze Crazyflie 2.0](https://docs.px4.io/master/en/flight_controller/crazyflie2.html)
* [Omnibus F4 SD](https://docs.px4.io/master/en/flight_controller/omnibus_f4_sd.html)
* [Holybro Durandal](https://docs.px4.io/master/en/flight_controller/durandal.html)
* [Holybro Kakute F7](https://docs.px4.io/master/en/flight_controller/kakutef7.html)
* [Raspberry PI with Navio 2](https://docs.px4.io/master/en/flight_controller/raspberry_pi_navio2.html)
@@ -97,4 +119,4 @@ Additional information about supported hardware can be found in [PX4 user Guide
## Project Roadmap
A high level project roadmap is available [here](https://www.dronecode.org/roadmap/).
A high level project roadmap is available [here](https://github.com/orgs/PX4/projects/25).
+156 -39
View File
@@ -31,10 +31,11 @@
#
############################################################################
message(STATUS "ROMFS: ${config_romfs_root}")
set(romfs_src_dir ${PX4_SOURCE_DIR}/ROMFS/${config_romfs_root})
set(romfs_gen_root_dir ${PX4_BINARY_DIR}/genromfs)
set(romfs_gen_root_dir ${PX4_BINARY_DIR}/etc)
file(RELATIVE_PATH romfs_path_relative ${PX4_SOURCE_DIR} ${romfs_src_dir})
message(STATUS "ROMFS: ${romfs_path_relative}")
set_property(GLOBAL PROPERTY PX4_ROMFS_FILES)
set_property(GLOBAL PROPERTY PX4_ROMFS_CMAKE_FILES)
@@ -81,21 +82,51 @@ file(GLOB jinja_templates ${PX4_SOURCE_DIR}/Tools/serial/*.jinja)
if (px4_constrained_flash_build)
set(added_arguments --constrained-flash)
endif()
if(PX4_ETHERNET)
set(added_arguments ${added_arguments} --ethernet)
endif()
# create list of relative romfs file names
set(romfs_copy_files_relative)
foreach(romfs_file IN LISTS romfs_copy_files)
string(REPLACE "${romfs_src_dir}/" "" romfs_file_rel ${romfs_file})
list(APPEND romfs_copy_files_relative ${romfs_file_rel})
endforeach()
# copy the ROMFS files by creating a tar and extracting it to the build
# directory (which preserves the directory structure)
file(MAKE_DIRECTORY ${romfs_gen_root_dir})
set(romfs_tar_file ${PX4_BINARY_DIR}/romfs_files.tar)
add_custom_command(
OUTPUT ${romfs_tar_file}
COMMAND ${CMAKE_COMMAND} -E tar cf ${romfs_tar_file} ${romfs_copy_files_relative}
WORKING_DIRECTORY ${romfs_src_dir}
DEPENDS
${romfs_copy_files}
${jinja_templates}
${module_config_files}
${romfs_cmake_files}
${PX4_SOURCE_DIR}/Tools/px_process_airframes.py
${PX4_SOURCE_DIR}/Tools/px4airframes/markdownout.py
${PX4_SOURCE_DIR}/Tools/px4airframes/rcout.py
${PX4_SOURCE_DIR}/Tools/px4airframes/srcparser.py
${PX4_SOURCE_DIR}/Tools/px4airframes/srcscanner.py
${PX4_SOURCE_DIR}/Tools/px4airframes/xmlout.py
${PX4_SOURCE_DIR}/Tools/serial/generate_config.py
)
set(romfs_extract_stamp ${CMAKE_CURRENT_BINARY_DIR}/romfs_extract.stamp)
add_custom_command(
OUTPUT ${romfs_extract_stamp}
COMMAND ${CMAKE_COMMAND} -E tar xf ${romfs_tar_file}
COMMAND ${CMAKE_COMMAND} -E touch ${romfs_extract_stamp}
WORKING_DIRECTORY ${romfs_gen_root_dir}
DEPENDS ${romfs_tar_file}
)
add_custom_command(
OUTPUT
${romfs_gen_root_dir}/init.d/rcS
${romfs_gen_root_dir}/init.d/rc.serial
${romfs_gen_root_dir}/init.d/rc.autostart
${romfs_gen_root_dir}/init.d/rc.autostart.post
romfs_copy.stamp
COMMAND ${CMAKE_COMMAND} -E remove_directory ${romfs_gen_root_dir}
# TODO: we should only copy the files in ${romfs_copy_files}
COMMAND ${CMAKE_COMMAND} -E copy_directory ${romfs_src_dir} ${romfs_gen_root_dir}
COMMAND ${CMAKE_COMMAND} -E remove_directory ${romfs_gen_root_dir}/init.d-posix
COMMAND ${CMAKE_COMMAND} -E remove_directory ${romfs_gen_root_dir}/mixers-sitl
COMMAND ${CMAKE_COMMAND} -E remove ${romfs_gen_root_dir}/mixers/CMakeLists.txt
COMMAND ${CMAKE_COMMAND} -E remove ${romfs_gen_root_dir}/init.d/CMakeLists.txt
COMMAND ${CMAKE_COMMAND} -E remove ${romfs_gen_root_dir}/init.d/airframes/CMakeLists.txt
COMMAND ${PYTHON_EXECUTABLE} ${PX4_SOURCE_DIR}/Tools/px_process_airframes.py
--airframes-path ${romfs_gen_root_dir}/init.d
--start-script ${romfs_gen_root_dir}/init.d/rc.autostart
@@ -106,47 +137,66 @@ add_custom_command(
--config-files ${module_config_files} #--verbose
COMMAND ${CMAKE_COMMAND} -E touch romfs_copy.stamp
DEPENDS
${jinja_templates}
${module_config_files}
${romfs_cmake_files}
${romfs_copy_files}
${PX4_SOURCE_DIR}/Tools/px_process_airframes.py
${PX4_SOURCE_DIR}/Tools/px4airframes/markdownout.py
${PX4_SOURCE_DIR}/Tools/px4airframes/rcout.py
${PX4_SOURCE_DIR}/Tools/px4airframes/srcparser.py
${PX4_SOURCE_DIR}/Tools/px4airframes/srcscanner.py
${PX4_SOURCE_DIR}/Tools/px4airframes/xmlout.py
${PX4_SOURCE_DIR}/Tools/serial/generate_config.py
${romfs_extract_stamp}
COMMENT "ROMFS: copying, generating airframes"
)
# copy extras into ROMFS
set(extras_dependencies)
if(config_bl_file)
file(MAKE_DIRECTORY ${PX4_BINARY_DIR}/romfs_extras)
configure_file(${config_bl_file} ${PX4_BINARY_DIR}/romfs_extras COPYONLY)
list(APPEND extras_dependencies
${config_bl_file}
)
endif()
# copy px4io binary if configured
if(config_io_board)
list(APPEND extras_dependencies
copy_px4io_bin
${fw_io_bin}
)
file(RELATIVE_PATH iofw_file_relative ${PX4_SOURCE_DIR} ${fw_io_bin})
message(STATUS "ROMFS: Adding ${iofw_file_relative} -> /etc/extras/${config_io_board}.bin")
endif()
if(config_build_bootloader)
# board bootloader (built or included)
if(TARGET copy_bootloader_bin)
if(board_bootloader_firmware)
file(RELATIVE_PATH bl_file_relative ${PX4_SOURCE_DIR} ${board_bootloader_firmware})
message(STATUS "ROMFS: Adding ${bl_file_relative} -> /etc/extras/bootloader.bin")
else()
file(RELATIVE_PATH bl_file_relative ${PX4_SOURCE_DIR} ${bootloader_bin})
message(STATUS "ROMFS: Adding ${bl_file_relative} -> /etc/extras/bootloader.bin")
endif()
list(APPEND extras_dependencies
copy_bootloader_bin
${bootloader_bin}
)
endif()
# optional board architecture defaults
set(board_arch_rc_file "rc.board_arch_defaults")
if(EXISTS "${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/${board_arch_rc_file}")
file(RELATIVE_PATH rc_file_relative ${PX4_SOURCE_DIR} ${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/${board_arch_rc_file})
message(STATUS "ROMFS: Adding ${rc_file_relative} -> /etc/init.d/${board_arch_rc_file}")
add_custom_command(
OUTPUT
${romfs_gen_root_dir}/init.d/${board_arch_rc_file}
${board_arch_rc_file}.stamp
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/${board_arch_rc_file} ${romfs_gen_root_dir}/init.d/${board_arch_rc_file}
COMMAND ${CMAKE_COMMAND} -E touch ${board_arch_rc_file}.stamp
DEPENDS
${PX4_SOURCE_DIR}/platforms/${PX4_PLATFORM}/init/${CONFIG_ARCH_CHIP}/${board_arch_rc_file}
romfs_copy.stamp
COMMENT "ROMFS: copying ${board_arch_rc_file}"
)
list(APPEND extras_dependencies
${board_arch_rc_file}.stamp
)
endif()
set(OPTIONAL_BOARD_RC)
list(APPEND OPTIONAL_BOARD_RC
rc.board_defaults
@@ -158,7 +208,8 @@ list(APPEND OPTIONAL_BOARD_RC
foreach(board_rc_file ${OPTIONAL_BOARD_RC})
if(EXISTS "${PX4_BOARD_DIR}/init/${board_rc_file}")
message(STATUS "ROMFS: Adding ${board_rc_file}")
file(RELATIVE_PATH rc_file_relative ${PX4_SOURCE_DIR} ${PX4_BOARD_DIR}/init/${board_rc_file})
message(STATUS "ROMFS: Adding ${rc_file_relative} -> /etc/init.d/${board_rc_file}")
add_custom_command(
OUTPUT
@@ -179,17 +230,75 @@ foreach(board_rc_file ${OPTIONAL_BOARD_RC})
endforeach()
if(config_uavcan_peripheral_firmware)
include(ExternalProject)
foreach(uavcan_peripheral_config ${config_uavcan_peripheral_firmware})
# include the px4io binary in ROMFS
message(STATUS "ROMFS: Adding UAVCAN peripheral ${uavcan_peripheral_config} -> /etc/uavcan/fw/")
ExternalProject_Add(build_${uavcan_peripheral_config}
SOURCE_DIR ${CMAKE_SOURCE_DIR}
DOWNLOAD_COMMAND ""
UPDATE_COMMAND ""
CMAKE_ARGS -DCONFIG=${uavcan_peripheral_config}
INSTALL_COMMAND ""
USES_TERMINAL_BUILD true
DEPENDS git_nuttx git_nuttx_apps
BUILD_ALWAYS 1
)
ExternalProject_Get_Property(build_${uavcan_peripheral_config} BINARY_DIR)
add_custom_command(
OUTPUT
${romfs_gen_root_dir}/uavcan/fw/_${uavcan_board_id}.bin
${uavcan_peripheral_config}.stamp
COMMAND ${CMAKE_COMMAND} -E make_directory ${romfs_gen_root_dir}/uavcan/fw/
COMMAND ${CMAKE_COMMAND} -E copy ${BINARY_DIR}/deploy/*.bin ${romfs_gen_root_dir}/uavcan/fw/
COMMAND ls -lsa ${romfs_gen_root_dir}/uavcan/fw/
COMMAND ${CMAKE_COMMAND} -E touch ${uavcan_peripheral_config}.stamp
DEPENDS
build_${uavcan_peripheral_config}
COMMENT "ROMFS: copying ${uavcan_peripheral_config}"
)
list(APPEND extras_dependencies
${uavcan_peripheral_config}.stamp
)
endforeach()
endif()
list(APPEND extras_dependencies
${config_romfs_extra_dependencies}
)
if (config_romfs_extra_files)
set(extras_copy_cmd COMMAND ${CMAKE_COMMAND} -E copy_if_different ${config_romfs_extra_files} ${romfs_gen_root_dir}/extras/)
else()
set(extras_copy_cmd "")
endif()
add_custom_command(OUTPUT romfs_extras.stamp
COMMAND ${CMAKE_COMMAND} -E make_directory ${romfs_gen_root_dir}/extras/
COMMAND ${CMAKE_COMMAND} -E make_directory ${PX4_BINARY_DIR}/romfs_extras/
COMMAND ${CMAKE_COMMAND} -E copy_directory ${PX4_BINARY_DIR}/romfs_extras/ ${romfs_gen_root_dir}/extras/
${extras_copy_cmd}
COMMAND ${CMAKE_COMMAND} -E touch romfs_extras.stamp
DEPENDS
romfs_copy.stamp
${config_romfs_extra_files}
${extras_dependencies}
COMMENT "ROMFS: copying extras"
)
add_custom_target(romfs_gen_files_target
DEPENDS
${romfs_extract_stamp}
${romfs_gen_root_dir}/init.d/rc.serial
romfs_extras.stamp
)
add_custom_command(
OUTPUT romfs_pruned.stamp
COMMAND ${PYTHON_EXECUTABLE} ${PX4_SOURCE_DIR}/Tools/px_romfs_pruner.py --folder ${romfs_gen_root_dir} --board ${PX4_BOARD}
@@ -220,7 +329,11 @@ if("${CONFIG_FS_CROMFS}" STREQUAL "y")
COMMENT "ROMFS: generating image"
)
else()
add_library(romfs STATIC nsh_romfsimg.c)
add_dependencies(romfs prebuild_targets)
set_target_properties(romfs PROPERTIES LINKER_LANGUAGE C)
elseif("${CONFIG_FS_ROMFS}" STREQUAL "y")
# create romfs.img
find_program(GENROMFS genromfs)
if(NOT GENROMFS)
@@ -255,13 +368,13 @@ else()
COMMAND ${SED} 's/unsigned/const unsigned/g' nsh_romfsimg.c > nsh_romfsimg.c.tmp && ${CMAKE_COMMAND} -E rename nsh_romfsimg.c.tmp nsh_romfsimg.c
DEPENDS romfs.img
)
add_library(romfs STATIC nsh_romfsimg.c)
add_dependencies(romfs prebuild_targets)
set_target_properties(romfs PROPERTIES LINKER_LANGUAGE C)
endif()
add_library(romfs STATIC nsh_romfsimg.c)
add_dependencies(romfs prebuild_targets)
set_target_properties(romfs PROPERTIES LINKER_LANGUAGE C)
# shellcheck
find_program(SHELLCHECK_PATH shellcheck)
@@ -271,11 +384,15 @@ if(SHELLCHECK_PATH)
# TODO: fix SC2086, SC2166
add_custom_target(shellcheck
COMMAND ${SHELLCHECK_PATH} --shell=sh
--exclude=SC1090 # SC1090: use of source (.) - Can't follow non-constant source. Use a directive to specify location.
--exclude=SC1091 # SC1091: use of source (.) - Not following: xxxx openBinaryFile: does not exist (No such file or directory)
--exclude=SC2121 # SC2121: To assign a variable, use just 'var=value'
--exclude=SC2086 # SC2086: Double quote to prevent globbing and word splitting.
--exclude=SC2166 # SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined.
--exclude=SC2154 # SC2154: <var> is referenced but not assigned (NuttX uses different asssignment)
--exclude=SC2164 # SC2164: Use 'cd ... || exit' or 'cd ... || return' in case cd fails.
--exclude=SC2169 # SC2169: In dash, 'source' in place of '.' is not supported. (we alias it)
--exclude=SC2039 # SC2039: In POSIX sh, 'source' in place of '.' is undefined. (we alias it)
--exclude=SC2181 # SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.
`find ${romfs_gen_root_dir}/init.d -type f`
DEPENDS ${romfs_gen_root_dir}/init.d/rc.autostart
+27 -29
View File
@@ -14,7 +14,7 @@ set +e
# NOTE: COMMENT LINES ARE REMOVED BEFORE STORED IN ROMFS.
#
#------------------------------------------------------------------------------
set R /
#
# Mount the procfs.
#
@@ -30,64 +30,61 @@ sercon
#
ver all
#
# Start the ORB (first app to start)
# tone_alarm and tune_control
# is dependent.
#
uorb start
#
# Set the parameter file if mtd starts successfully.
#
if mtd start
if mft query -q -k MTD -s MTD_PARAMETERS -v /fs/mtd_params
then
set PARAM_FILE /fs/mtd_params
fi
if mft query -q -k MTD -s MTD_PARAMETERS -v /dev/eeeprom0
then
set PARAM_FILE /dev/eeeprom0
fi
#
# Load parameters.
#
param select $PARAM_FILE
if ! param load
then
param reset
param reset_all
fi
#
# Optional board architecture defaults: rc.board_arch_defaults
#
set BOARD_ARCH_RC_DEFAULTS ${R}etc/init.d/rc.board_arch_defaults
if [ -f $BOARD_ARCH_RC_DEFAULTS ]
then
echo "Board architecture defaults: ${BOARD_ARCH_RC_DEFAULTS}"
. $BOARD_ARCH_RC_DEFAULTS
fi
unset BOARD_ARCH_RC_DEFAULTS
#
# Optional board defaults: rc.board_defaults
#
set BOARD_RC_DEFAULTS /etc/init.d/rc.board_defaults
set BOARD_RC_DEFAULTS ${R}etc/init.d/rc.board_defaults
if [ -f $BOARD_RC_DEFAULTS ]
then
echo "Board defaults: ${BOARD_RC_DEFAULTS}"
sh $BOARD_RC_DEFAULTS
. $BOARD_RC_DEFAULTS
fi
unset BOARD_RC_DEFAULTS
#
# Start system state indicator.
#
rgbled start -X
rgbled_ncp5623c start -X
rgbled_pwm start
if param greater LIGHT_EN_BLINKM 0
then
if blinkm start -X
then
blinkm systemstate
fi
fi
rgbled start -X -q
rgbled_ncp5623c start -X -q
#
# board sensors: rc.sensors
#
set BOARD_RC_SENSORS /etc/init.d/rc.board_sensors
set BOARD_RC_SENSORS ${R}etc/init.d/rc.board_sensors
if [ -f $BOARD_RC_SENSORS ]
then
echo "Board sensors: ${BOARD_RC_SENSORS}"
sh $BOARD_RC_SENSORS
. $BOARD_RC_SENSORS
fi
unset BOARD_RC_SENSORS
@@ -95,7 +92,7 @@ unset BOARD_RC_SENSORS
# Start UART/Serial device drivers.
# Note: rc.serial is auto-generated from Tools/serial/generate_config.py
#
sh /etc/init.d/rc.serial
. ${R}etc/init.d/rc.serial
# Check for flow sensor
if param compare SENS_EN_PX4FLOW 1
@@ -104,3 +101,4 @@ then
fi
uavcannode start
unset R
+5
View File
@@ -33,3 +33,8 @@
add_subdirectory(init.d)
add_subdirectory(mixers)
# TODO: make this configurable from the board config, or better combine
if("${PX4_BOARD}" MATCHES "sitl")
add_subdirectory(mixers-sitl)
add_subdirectory(init.d-posix)
endif()
-5
View File
@@ -1,5 +0,0 @@
px4fmuv3_bl.bin: Bootloader binary of the PX4 Bootloader
(https://github.com/PX4/Bootloader)
based on commit 184b813699a9cfd6f43a5a21556a06b4372baf5f
for the target px4fmuv3_bl
@@ -1,17 +0,0 @@
#!/bin/sh
#
# @name IF750A SITL
# InspiredFlight 750 Auterion edition. Gazebo Only.
#
# @type Quadrotor
#
sh /etc/init.d/rc.mc_defaults
if [ $AUTOCNF = yes ]
then
# EKF2: Multi GPS blending (as the model has 2 GPS's)
param set EKF2_GPS_MASK 7 # Uses speed, hpos and vpos accuracy
fi
set MIXER quad_x
@@ -1,22 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Optical Flow)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
# EKF2
param set EKF2_AID_MASK 2
param set EKF2_EVP_NOISE 0.05
param set EKF2_EVA_NOISE 0.05
# LPE: Flow-only mode
param set LPE_FUSION 242
param set LPE_FAKE_ORIGIN 1
param set MPC_ALT_MODE 2
fi
@@ -1,18 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (irlock)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
# enable fusion of landing target velocity
param set LTEST_MODE 1
param set PLD_HACC_RAD 0.1
fi
# Start up Landing Target Estimator module
landing_target_estimator start
@@ -1,13 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (rplidar)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
param set LPE_FUSION 242
fi
@@ -1,21 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Vision)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
# EKF2: Vision position and heading
param set EKF2_AID_MASK 24
param set EKF2_EV_DELAY 5
# LPE: Vision + baro
param set LPE_FUSION 132
# AEQ: External heading set to use vision input
param set ATT_EXT_HDG_M 1
fi
@@ -1,16 +0,0 @@
#!/bin/sh
#
# @name Solo
#
# @type Quadrotor
#
sh /etc/init.d/rc.mc_defaults
if [ $AUTOCNF = yes ]
then
param set MC_PITCHRATE_P 0.1
param set MC_ROLLRATE_P 0.1
fi
set MIXER quad_x
@@ -1,14 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Obstacle Avoidance)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
param set COM_OBS_AVOID 1
param set MPC_XY_CRUISE 5.0
fi
@@ -1,2 +0,0 @@
# shellcheck disable=SC2154
mavlink start -x -u 14558 -r 4000000 -m onboard -o 14541 # add mavlink stream for SDK
@@ -1,21 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Optical Flow)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
# EKF2
param set EKF2_AID_MASK 2
param set SENS_FLOW_ROT 0
# LPE: Flow-only mode
param set LPE_FUSION 242
param set LPE_FAKE_ORIGIN 1
param set MPC_ALT_MODE 2
fi
@@ -1,15 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Vision Velocity)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
# EKF2: Vision velocity and heading
param set EKF2_AID_MASK 272
param set EKF2_EV_DELAY 5
fi
@@ -1,14 +0,0 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Dual GPS)
#
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
if [ $AUTOCNF = yes ]
then
# EKF2: Multi GPS blending
param set EKF2_GPS_MASK 7 # Uses speed, hpos and vpos accuracy
fi
@@ -1,23 +0,0 @@
#!/bin/sh
#
# @name UUV
#
sh /etc/init.d/rc.uuv_defaults
if [ $AUTOCNF = yes ]
then
#Set data link loss failsafe mode (0: disabled)
param set NAV_DLL_ACT 0
# disable circuit breaker for airspeed sensor
param set CBRK_AIRSPD_CHK 162128
#param set CBRK_GPSFAIL 240024
fi
set MAV_TYPE 12
param set MAV_TYPE ${MAV_TYPE}
set MIXER_FILE etc/mixers-sitl/uuv_x_sitl.main.mix
set MIXER custom
@@ -1,23 +0,0 @@
#!/bin/sh
#
# @name Hippocampus UUV
#
sh /etc/init.d/rc.uuv_defaults
if [ $AUTOCNF = yes ]
then
#Set data link loss failsafe mode (0: disabled)
param set NAV_DLL_ACT 0
# disable circuit breaker for airspeed sensor
param set CBRK_AIRSPD_CHK 162128
#param set CBRK_GPSFAIL 240024
fi
set MAV_TYPE 12
param set MAV_TYPE ${MAV_TYPE}
set MIXER_FILE etc/mixers-sitl/uuv_x_sitl.main.mix
set MIXER custom
@@ -1,47 +0,0 @@
#!/bin/sh
#
# @name Plane SITL
#
sh /etc/init.d/rc.fw_defaults
if [ $AUTOCNF = yes ]
then
param set EKF2_ARSP_THR 8
param set EKF2_FUSE_BETA 1
param set EKF2_MAG_ACCLIM 0
param set EKF2_MAG_YAWLIM 0
param set FW_LND_AIRSPD_SC 1
param set FW_LND_ANG 8
param set FW_THR_LND_MAX 0
param set FW_L1_PERIOD 15
param set FW_P_TC 0.5
param set FW_PR_FF 0.40
param set FW_PR_I 0.05
param set FW_PR_P 0.05
param set FW_R_TC 0.7
param set FW_RR_FF 0.20
param set FW_RR_I 0.02
param set FW_RR_P 0.22
param set FW_L1_PERIOD 12
param set FW_W_EN 1
param set MIS_LTRMIN_ALT 30
param set MIS_TAKEOFF_ALT 30
param set NAV_ACC_RAD 15
param set NAV_DLL_ACT 2
param set NAV_LOITER_RAD 50
param set RWTO_TKOFF 1
fi
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -1,14 +0,0 @@
#!/bin/sh
#
# @name Plane SITL with camera
#
sh /etc/init.d-posix/1030_plane
if [ $AUTOCNF = yes ]
then
# Camera trigger interface is MAVLink
param set TRIG_INTERFACE 3
# Distance trigger mode enabled
param set TRIG_MODE 4
fi
@@ -1,12 +0,0 @@
#!/bin/sh
#
# @name Plane SITL with catapult
#
sh /etc/init.d-posix/1030_plane
if [ $AUTOCNF = yes ]
then
param set RWTO_TKOFF 0
fi
@@ -1,12 +0,0 @@
#!/bin/sh
#
# @name Plane SITL with downward facing LIDAR.
#
sh /etc/init.d-posix/1030_plane
if [ $AUTOCNF = yes ]
then
param set FW_LND_USETER 1
fi
@@ -1,58 +0,0 @@
#!/bin/sh
#
# @name Plane SITL
#
sh /etc/init.d/rc.fw_defaults
if [ $AUTOCNF = yes ]
then
param set EKF2_ARSP_THR 8
param set EKF2_FUSE_BETA 1
#param set EKF2_MAG_ACCLIM 0
#param set EKF2_MAG_YAWLIM 0
param set FW_LND_AIRSPD_SC 1.1
param set FW_LND_ANG 5
param set FW_THR_LND_MAX 0
param set FW_LND_HHDIST 30
param set FW_LND_FL_PMIN 9.5
param set FW_LND_FL_PMAX 20
param set FW_LND_FLALT 5
param set FW_LND_TLALT 15
param set FW_L1_PERIOD 25
param set FW_P_TC 0.4
param set FW_PR_FF 0.40
param set FW_PR_I 0.05
param set FW_PR_P 0.05
param set FW_R_TC 0.45
param set FW_RR_FF 0.40
param set FW_RR_I 0.132
param set FW_RR_P 0.085
param set FW_W_EN 1
param set MIS_LTRMIN_ALT 30
param set MIS_TAKEOFF_ALT 20
param set MIS_DIST_1WP 2500
param set MIS_DIST_WPS 10000
param set NAV_ACC_RAD 15
param set NAV_DLL_ACT 2
param set NAV_LOITER_RAD 50
param set RWTO_TKOFF 1
#param set FW_THR_SLEW_MAX 0.3 # fix takeoff failure for JSBsim in autonomous mission mode.
param set RWTO_MAX_PITCH 20
param set RWTO_MAX_ROLL 10
#param set RWTO_MAX_THR 0.6 # fix takeoff failure for JSBsim in autonomous mission mode.
param set RWTO_PSP 8
param set RWTO_AIRSPD_SCL 1.8
fi
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -1,58 +0,0 @@
#!/bin/sh
#
# @name Plane SITL
#
sh /etc/init.d/rc.fw_defaults
if [ $AUTOCNF = yes ]
then
param set EKF2_ARSP_THR 8
param set EKF2_FUSE_BETA 1
#param set EKF2_MAG_ACCLIM 0
#param set EKF2_MAG_YAWLIM 0
param set FW_LND_AIRSPD_SC 1.1
param set FW_LND_ANG 5
param set FW_THR_LND_MAX 0
param set FW_LND_HHDIST 30
param set FW_LND_FL_PMIN 9.5
param set FW_LND_FL_PMAX 20
param set FW_LND_FLALT 5
param set FW_LND_TLALT 15
param set FW_L1_PERIOD 25
param set FW_P_TC 0.4
param set FW_PR_FF 0.40
param set FW_PR_I 0.05
param set FW_PR_P 0.05
param set FW_R_TC 0.45
param set FW_RR_FF 0.40
param set FW_RR_I 0.132
param set FW_RR_P 0.085
param set FW_W_EN 1
param set MIS_LTRMIN_ALT 30
param set MIS_TAKEOFF_ALT 20
param set MIS_DIST_1WP 2500
param set MIS_DIST_WPS 10000
param set NAV_ACC_RAD 15
param set NAV_DLL_ACT 2
param set NAV_LOITER_RAD 50
param set RWTO_TKOFF 1
#param set FW_THR_SLEW_MAX 0.3 # fix takeoff failure for JSBsim in autonomous mission mode.
param set RWTO_MAX_PITCH 20
param set RWTO_MAX_ROLL 10
#param set RWTO_MAX_THR 0.6 # fix takeoff failure for JSBsim in autonomous mission mode.
param set RWTO_PSP 8
param set RWTO_AIRSPD_SCL 1.8
fi
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -1,49 +0,0 @@
#!/bin/sh
#
# @name Standard VTOL
#
# @type Standard VTOL
#
sh /etc/init.d/rc.vtol_defaults
if [ $AUTOCNF = yes ]
then
param set FW_AIRSPD_MAX 25
param set FW_AIRSPD_MIN 14
param set FW_AIRSPD_TRIM 16
param set FW_L1_PERIOD 12
param set MC_ROLLRATE_P 0.3
param set MIS_LTRMIN_ALT 10
param set MIS_TAKEOFF_ALT 10
param set MIS_YAW_TMT 10
param set MPC_ACC_HOR_MAX 2
param set MPC_ACC_HOR_MAX 2
param set MPC_THR_MIN 0.1
param set MPC_TKO_SPEED 1
param set MPC_XY_P 0.8
param set MPC_XY_VEL_P_ACC 3
param set MPC_XY_VEL_I_ACC 4
param set MPC_XY_VEL_D_ACC 0.1
param set MPC_Z_VEL_MAX_DN 1.5
param set NAV_ACC_RAD 5
param set NAV_LOITER_RAD 80
param set VT_F_TRANS_DUR 5
param set VT_F_TRANS_THR 0.75
param set VT_ARSP_TRANS 16
param set VT_MOT_ID 1234
param set VT_FW_MOT_OFFID 1234
param set VT_TYPE 2
param set VT_B_TRANS_DUR 8
fi
set MAV_TYPE 22
set MIXER_FILE etc/mixers-sitl/standard_vtol_sitl.main.mix
set MIXER custom
@@ -1,46 +0,0 @@
#!/bin/sh
#
# @name Quadrotor + Tailsitter
#
# @type VTOL Quad Tailsitter
#
sh /etc/init.d/rc.vtol_defaults
if [ $AUTOCNF = yes ]
then
param set FW_AIRSPD_MAX 25
param set FW_AIRSPD_MIN 14
param set FW_AIRSPD_TRIM 16
param set FW_L1_PERIOD 12
param set MC_ROLLRATE_P 0.3
param set MIS_LTRMIN_ALT 10
param set MIS_TAKEOFF_ALT 10
param set MIS_YAW_TMT 10
param set MPC_ACC_HOR_MAX 2
param set MPC_ACC_HOR_MAX 2
param set MPC_THR_MIN 0.1
param set MPC_TKO_SPEED 1
param set MPC_XY_P 0.15
param set MPC_XY_VEL_D_ACC 0.1
param set MPC_XY_VEL_I_ACC 4
param set MPC_XY_VEL_P_ACC 1
param set MPC_Z_VEL_MAX_DN 1.5
param set MPC_Z_VEL_P_ACC 16
param set NAV_ACC_RAD 5
param set NAV_LOITER_RAD 80
param set VT_F_TRANS_DUR 1.5
param set VT_F_TRANS_THR 0.7
param set VT_TYPE 0
fi
set MAV_TYPE 20
set MIXER_FILE etc/mixers-sitl/quad_x_vtol.main.mix
set MIXER custom
@@ -1,52 +0,0 @@
#!/bin/sh
#
# @name VTOL Tiltrotor
#
# @type VTOL Tiltrotor
#
sh /etc/init.d/rc.vtol_defaults
if [ $AUTOCNF = yes ]
then
param set FW_ARSP_MODE 1
param set FW_AIRSPD_MAX 25
param set FW_AIRSPD_MIN 14
param set FW_AIRSPD_TRIM 16
param set FW_L1_PERIOD 12
param set MC_ROLLRATE_P 0.3
param set MIS_LTRMIN_ALT 10
param set MIS_TAKEOFF_ALT 10
param set MIS_YAW_TMT 10
param set MPC_ACC_HOR_MAX 2
param set MPC_ACC_HOR_MAX 2
param set MPC_THR_MIN 0.1
param set MPC_TKO_SPEED 1
param set MPC_XY_P 0.15
param set MPC_XY_VEL_D_ACC 0.1
param set MPC_XY_VEL_I_ACC 4
param set MPC_XY_VEL_P_ACC 1
param set MPC_Z_VEL_MAX_DN 1.5
param set MPC_Z_VEL_P_ACC 16
param set NAV_ACC_RAD 5
param set NAV_LOITER_RAD 80
param set VT_F_TRANS_DUR 5.0
param set VT_F_TRANS_THR 0.75
param set VT_FWD_THRUST_SC 1.1
param set VT_TILT_FW 1
param set VT_TILT_TRANS 0.6
param set VT_ELEV_MC_LOCK 0
param set VT_TYPE 1
param set VT_B_TRANS_DUR 8
fi
set MAV_TYPE 21
set MIXER_FILE etc/mixers-sitl/tiltrotor_sitl.main.mix
set MIXER custom
@@ -1,37 +0,0 @@
#!/bin/sh
#
# @name Rover
#
sh /etc/init.d/rc.rover_defaults
if [ $AUTOCNF = yes ]
then
param set GND_L1_DIST 5
param set GND_SP_CTRL_MODE 1
param set GND_SPEED_D 0.001
param set GND_SPEED_I 3
param set GND_SPEED_IMAX 0.125
param set GND_SPEED_P 0.25
param set GND_SPEED_THR_SC 1
param set GND_SPEED_TRIM 4
param set GND_THR_CRUISE 0.3
param set GND_THR_IDLE 0
param set GND_THR_MAX 0.5
param set GND_THR_MIN 0
param set MIS_LTRMIN_ALT 0.01
param set MIS_TAKEOFF_ALT 0.01
param set NAV_ACC_RAD 0.5
param set NAV_LOITER_RAD 2
param set CBRK_AIRSPD_CHK 162128
param set GND_MAX_ANG 0.6
param set GND_WHEEL_BASE 2.0
fi
set MAV_TYPE 10
set MIXER_FILE etc/mixers-sitl/rover_ackermann_sitl.main.mix
@@ -1,38 +0,0 @@
#!/bin/sh
#
# @name Aion Robotics R1 Rover
# @type Rover
# @class Rover
sh /etc/init.d/rc.rover_defaults
if [ $AUTOCNF = yes ]
then
param set GND_L1_DIST 5
param set GND_SP_CTRL_MODE 1
param set GND_SPEED_D 3
param set GND_SPEED_I 0.001
param set GND_SPEED_IMAX 0.125
param set GND_SPEED_P 0.25
param set GND_SPEED_THR_SC 1
param set GND_SPEED_TRIM 4
param set GND_THR_CRUISE 0.3
param set GND_THR_IDLE 0
param set GND_THR_MAX 0.5
param set GND_THR_MIN 0
param set MIS_LTRMIN_ALT 0.01
param set MIS_TAKEOFF_ALT 0.01
param set NAV_ACC_RAD 0.5
param set NAV_LOITER_RAD 2
param set CBRK_AIRSPD_CHK 162128
param set GND_MAX_ANG 0.6
param set GND_WHEEL_BASE 2.0
fi
set MAV_TYPE 10
set MIXER_FILE etc/mixers-sitl/rover_diff_sitl.main.mix
@@ -1,43 +0,0 @@
#!/bin/sh
#
# @name ThunderFly TF-R1 UAV Rover
# @type Rover
# @class Rover
#
# @url https://github.com/ThunderFly-aerospace/TF-R1/
# @maintainer ThunderFly s.r.o.
#
sh /etc/init.d/rc.rover_defaults
if [ $AUTOCNF = yes ]
then
param set GND_L1_DIST 5
param set GND_SP_CTRL_MODE 1
param set GND_SPEED_D 3
param set GND_SPEED_I 0.001
param set GND_SPEED_IMAX 0.125
param set GND_SPEED_P 0.25
param set GND_SPEED_THR_SC 1
param set GND_SPEED_TRIM 15
param set GND_SPEED_MAX 25
param set GND_THR_CRUISE 0.3
param set GND_THR_IDLE 0
param set GND_THR_MAX 0.5
param set GND_THR_MIN 0
param set MIS_LTRMIN_ALT 0.01
param set MIS_TAKEOFF_ALT 0.01
param set NAV_ACC_RAD 0.5
param set NAV_LOITER_RAD 2
param set CBRK_AIRSPD_CHK 162128
param set GND_MAX_ANG 0.6
param set GND_WHEEL_BASE 3.0
fi
set MAV_TYPE 10
set MIXER_FILE etc/mixers-sitl/rover_ackermann_sitl.main.mix
@@ -1,37 +0,0 @@
#!/bin/sh
#
# @name Boat
#
sh /etc/init.d/rc.boat_defaults
if [ $AUTOCNF = yes ]
then
param set GND_L1_DIST 5
param set GND_SP_CTRL_MODE 1
param set GND_SPEED_D 0.001
param set GND_SPEED_I 3
param set GND_SPEED_IMAX 0.125
param set GND_SPEED_P 0.25
param set GND_SPEED_THR_SC 1
param set GND_SPEED_TRIM 4
param set GND_THR_CRUISE 0.3
param set GND_THR_IDLE 0
param set GND_THR_MAX 0.5
param set GND_THR_MIN 0
param set MIS_LTRMIN_ALT 0.01
param set MIS_TAKEOFF_ALT 0.01
param set NAV_ACC_RAD 0.5
param set NAV_LOITER_RAD 2
param set CBRK_AIRSPD_CHK 162128
param set GND_MAX_ANG 0.6
param set GND_WHEEL_BASE 2.0
fi
set MAV_TYPE 11
set MIXER_FILE etc/mixers-sitl/boat_sitl.main.mix
@@ -1,64 +0,0 @@
#!/bin/sh
#
# @name ThunderFly TF-G1
# ThunderFly TF-G1 autogyro airframe. Only for FlightGear simulator
#
# @type Autogyro
# @class Autogyro
#
# @url https://github.com/ThunderFly-aerospace/TF-G1/
#
#
sh /etc/init.d/rc.fw_defaults
if [ $AUTOCNF = yes ]
then
param set EKF2_ARSP_THR 8
param set EKF2_FUSE_BETA 1
param set ASPD_STALL 10.0
param set FW_P_RMAX_NEG 20.0
param set FW_P_RMAX_POS 60.0
param set FW_W_RMAX 10
param set FW_W_EN 1
param set FW_PR_IMAX 0.4
param set FW_R_TC 0.4
param set FW_RR_FF 0.5
param set FW_RR_I 0.1
param set FW_RR_IMAX 0.2
param set FW_RR_P 0.08
param set MIS_LTRMIN_ALT 50
param set MIS_TAKEOFF_ALT 3
param set NAV_ACC_RAD 20
param set NAV_DLL_ACT 2
param set NAV_LOITER_RAD 100
param set RWTO_TKOFF 1
param set MAV_BROADCAST 1
param set FW_ARSP_SCALE_EN 0
param set FW_AIRSPD_MAX 35
param set FW_AIRSPD_MIN 7
param set FW_AIRSPD_TRIM 15
param set FW_P_LIM_MAX 25
param set FW_P_LIM_MIN -5
param set FW_R_LIM 30
param set FW_MAN_P_MAX 30.0
param set FW_MAN_R_MAX 30.0
param set FW_THR_CRUISE 0.8
param set FW_THR_IDLE 0
param set COM_DISARM_PRFLT 0
fi
set MIXER_FILE etc/mixers-sitl/autogyro_sitl.main.mix
set MIXER custom
@@ -1,32 +0,0 @@
#!/bin/sh
#
# @name Typhoon H480 SITL
#
# @type Hexarotor x
#
sh /etc/init.d/rc.mc_defaults
if [ $AUTOCNF = yes ]
then
param set MC_PITCHRATE_P 0.1
param set MC_PITCHRATE_I 0.05
param set MC_PITCH_P 6.0
param set MC_ROLLRATE_P 0.15
param set MC_ROLLRATE_I 0.1
param set MC_ROLL_P 6.0
param set MPC_XY_VEL_I_ACC 4
param set MPC_XY_VEL_P_ACC 3
param set RTL_DESCEND_ALT 10
param set RTL_LAND_DELAY 0
param set TRIG_INTERFACE 3
param set TRIG_MODE 4
param set MNT_MODE_IN 0
param set MAV_PROTO_VER 2
fi
set MAV_TYPE 13
set MIXER hexa_x
@@ -0,0 +1,42 @@
############################################################################
#
# Copyright (c) 2020 PX4 Development Team. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
# 3. Neither the name PX4 nor the names of its contributors may be
# used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
############################################################################
add_subdirectory(airframes)
px4_add_romfs_files(
px4-rc.params
px4-rc.simulator
px4-rc.mavlink
rc.replay
rcS
)
@@ -7,7 +7,6 @@
# @maintainer Julian Oes <julian@oes.ch>
#
sh /etc/init.d/rc.mc_defaults
. ${R}etc/init.d/rc.mc_defaults
set MIXER quad_w
@@ -0,0 +1,48 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL
#
# @type Quadrotor Wide
#
# @maintainer Julian Oes <julian@oes.ch>
#
. ${R}etc/init.d/rc.mc_defaults
. ${R}etc/init.d/rc.ctrlalloc
param set-default MPC_USE_HTE 0
param set-default VM_MASS 1.5
param set-default VM_INERTIA_XX 0.03
param set-default VM_INERTIA_YY 0.03
param set-default VM_INERTIA_ZZ 0.05
param set-default CA_AIRFRAME 0
param set-default CA_METHOD 1
param set-default CA_ACT0_MIN 0.0
param set-default CA_ACT1_MIN 0.0
param set-default CA_ACT2_MIN 0.0
param set-default CA_ACT3_MIN 0.0
param set-default CA_ACT0_MAX 1.0
param set-default CA_ACT1_MAX 1.0
param set-default CA_ACT2_MAX 1.0
param set-default CA_ACT3_MAX 1.0
param set-default CA_MC_R0_PX 0.1515
param set-default CA_MC_R0_PY 0.245
param set-default CA_MC_R0_CT 6.5
param set-default CA_MC_R0_KM 0.05
param set-default CA_MC_R1_PX -0.1515
param set-default CA_MC_R1_PY -0.1875
param set-default CA_MC_R1_CT 6.5
param set-default CA_MC_R1_KM 0.05
param set-default CA_MC_R2_PX 0.1515
param set-default CA_MC_R2_PY -0.245
param set-default CA_MC_R2_CT 6.5
param set-default CA_MC_R2_KM -0.05
param set-default CA_MC_R3_PX -0.1515
param set-default CA_MC_R3_PY 0.1875
param set-default CA_MC_R3_CT 6.5
param set-default CA_MC_R3_KM -0.05
set MIXER direct
@@ -0,0 +1,12 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (foggy_lidar)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
param set-default EKF2_RNG_AID 1
param set-default EKF2_RNG_A_HMAX 10
@@ -0,0 +1,19 @@
#!/bin/sh
#
# @name IF750A SITL
# InspiredFlight 750 Auterion edition. Gazebo Only.
#
# @type Quadrotor
#
. ${R}etc/init.d/rc.mc_defaults
# EKF2: Multi GPS blending (as the model has 2 GPS's)
param set-default SENS_GPS_MASK 7
param set-default TRIG_INTERFACE 3
param set-default TRIG_MODE 4
param set-default MNT_MODE_IN 4
param set-default MNT_MODE_OUT 2
param set-default MNT_DO_STAB 2
set MIXER quad_x
@@ -6,6 +6,6 @@
# @type Quadrotor
#
sh /etc/init.d/airframes/4016_holybro_px4vision
. ${R}etc/init.d/airframes/4016_holybro_px4vision
set MIXER quad_x
@@ -0,0 +1,20 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Optical Flow)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
# EKF2
param set-default EKF2_AID_MASK 2
param set-default EKF2_EVP_NOISE 0.05
param set-default EKF2_EVA_NOISE 0.05
# LPE: Flow-only mode
param set-default LPE_FUSION 242
param set-default LPE_FAKE_ORIGIN 1
param set-default MPC_ALT_MODE 2
@@ -0,0 +1,15 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (irlock)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
# enable fusion of landing target velocity
param set-default LTEST_MODE 1
param set-default PLD_HACC_RAD 0.1
# Start up Landing Target Estimator module
landing_target_estimator start
@@ -0,0 +1,11 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (rplidar)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
param set-default LPE_FUSION 242
@@ -0,0 +1,19 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Vision)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
# EKF2: Vision position and heading
param set-default EKF2_AID_MASK 24
param set-default EKF2_EV_DELAY 5
# LPE: Vision + baro
param set-default LPE_FUSION 132
# AEQ: External heading set to use vision input
param set-default ATT_EXT_HDG_M 1
@@ -0,0 +1,13 @@
#!/bin/sh
#
# @name Solo
#
# @type Quadrotor
#
. ${R}etc/init.d/rc.mc_defaults
param set-default MC_PITCHRATE_P 0.1
param set-default MC_ROLLRATE_P 0.1
set MIXER quad_x
@@ -0,0 +1,12 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Obstacle Avoidance)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
param set-default COM_OBS_AVOID 1
param set-default MPC_XY_CRUISE 5.0
@@ -0,0 +1,2 @@
# shellcheck disable=SC2154
mavlink start -x -u 14558 -r 4000000 -m onboard -o 14541 -p # add mavlink stream for SDK
@@ -5,4 +5,4 @@
# @type Quadrotor Wide
#
sh /etc/init.d-posix/10016_iris
. ${R}etc/init.d-posix/airframes/10016_iris
@@ -0,0 +1,18 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Optical Flow)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
# EKF2
param set-default EKF2_AID_MASK 2
param set-default SENS_FLOW_ROT 0
# LPE: Flow-only mode
param set-default LPE_FUSION 242
param set-default LPE_FAKE_ORIGIN 1
param set-default MPC_ALT_MODE 2
@@ -0,0 +1,12 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Vision Velocity)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
# EKF2: Vision velocity and heading
param set-default EKF2_AID_MASK 272
param set-default EKF2_EV_DELAY 5
@@ -0,0 +1,11 @@
#!/bin/sh
#
# @name 3DR Iris Quadrotor SITL (Dual GPS)
#
# @type Quadrotor Wide
#
. ${R}etc/init.d-posix/airframes/10016_iris
# EKF2: Multi GPS blending
param set-default SENS_GPS_MASK 7
@@ -0,0 +1,20 @@
#!/bin/sh
#
# @name UUV
#
. ${R}etc/init.d/rc.uuv_defaults
#Set data link loss failsafe mode (0: disabled)
param set-default NAV_DLL_ACT 0
# disable circuit breaker for airspeed sensor
param set-default CBRK_AIRSPD_CHK 162128
#param set CBRK_GPSFAIL 240024
set MAV_TYPE 12
param set MAV_TYPE ${MAV_TYPE}
set MIXER_FILE etc/mixers-sitl/uuv_x_sitl.main.mix
set MIXER custom
@@ -0,0 +1,20 @@
#!/bin/sh
#
# @name Hippocampus UUV
#
. ${R}etc/init.d/rc.uuv_defaults
#Set data link loss failsafe mode (0: disabled)
param set-default NAV_DLL_ACT 0
# disable circuit breaker for airspeed sensor
param set-default CBRK_AIRSPD_CHK 162128
#param set CBRK_GPSFAIL 240024
set MAV_TYPE 12
param set MAV_TYPE ${MAV_TYPE}
set MIXER_FILE etc/mixers-sitl/uuv_x_sitl.main.mix
set MIXER custom
@@ -0,0 +1,16 @@
#!/bin/sh
#
# @name BlueROV2 Heavy Configuration
#
. ${R}etc/init.d/rc.uuv_defaults
#Set data link loss failsafe mode (0: disabled)
param set-default NAV_DLL_ACT 0
# disable circuit breaker for airspeed sensor
param set-default CBRK_AIRSPD_CHK 162128
set PWM_OUT 12345678
set MIXER_FILE etc/mixers-sitl/vectored6dof_sitl.main.mix
set MIXER custom
@@ -0,0 +1,54 @@
#!/bin/sh
#
# @name Plane SITL
#
. ${R}etc/init.d/rc.fw_defaults
param set-default EKF2_ARSP_THR 8
param set-default EKF2_FUSE_BETA 1
param set-default EKF2_MAG_ACCLIM 0
param set-default EKF2_MAG_YAWLIM 0
param set-default FW_LND_AIRSPD_SC 1
param set-default FW_LND_ANG 8
param set-default FW_THR_LND_MAX 0
param set-default FW_L1_PERIOD 12
param set-default FW_MAN_P_MAX 30
param set-default FW_PR_I 0.4
param set-default FW_PR_P 0.9
param set-default FW_PR_FF 0.2
param set-default FW_PSP_OFF 2
param set-default FW_P_LIM_MAX 32
param set-default FW_P_LIM_MIN -15
param set-default FW_RR_FF 0.1
param set-default FW_RR_P 0.3
param set-default FW_THR_MAX 0.6
param set-default FW_THR_MIN 0.05
param set-default FW_THR_CRUISE 0.25
param set-default FW_T_ALT_TC 2
param set-default FW_T_CLMB_MAX 8
param set-default FW_T_HRATE_FF 0.5
param set-default FW_T_SINK_MAX 2.7
param set-default FW_T_SINK_MIN 2.2
param set-default FW_T_TAS_TC 2
param set-default FW_W_EN 1
param set-default MIS_LTRMIN_ALT 30
param set-default MIS_TAKEOFF_ALT 30
param set-default NAV_ACC_RAD 15
param set-default NAV_DLL_ACT 2
param set-default NAV_LOITER_RAD 50
param set-default RWTO_TKOFF 1
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -0,0 +1,12 @@
#!/bin/sh
#
# @name Plane SITL with camera
#
. ${R}etc/init.d-posix/airframes/1030_plane
# Camera trigger interface is MAVLink
param set-default TRIG_INTERFACE 3
# Distance trigger mode enabled
param set-default TRIG_MODE 4
@@ -0,0 +1,9 @@
#!/bin/sh
#
# @name Plane SITL with catapult
#
. ${R}etc/init.d-posix/airframes/1030_plane
param set-default RWTO_TKOFF 0
@@ -0,0 +1,9 @@
#!/bin/sh
#
# @name Plane SITL with downward facing LIDAR.
#
. ${R}etc/init.d-posix/airframes/1030_plane
param set-default FW_LND_USETER 1
@@ -0,0 +1,59 @@
#!/bin/sh
#
# @name Plane SITL
#
. ${R}etc/init.d/rc.fw_defaults
param set-default EKF2_ARSP_THR 8
param set-default EKF2_FUSE_BETA 1
param set-default FW_LND_AIRSPD_SC 1.1
param set-default FW_LND_ANG 5
param set-default FW_THR_LND_MAX 0
param set-default FW_LND_HHDIST 30
param set-default FW_LND_FL_PMIN 9.5
param set-default FW_LND_FL_PMAX 20
param set-default FW_LND_FLALT 5
param set-default FW_LND_TLALT 15
param set-default FW_L1_PERIOD 25
param set-default FW_P_TC 0.4
param set-default FW_PR_FF 0.40
param set-default FW_PR_I 0.05
param set-default FW_PR_P 0.05
param set-default FW_R_TC 0.45
param set-default FW_RR_FF 0.40
param set-default FW_RR_I 0.132
param set-default FW_RR_P 0.085
param set-default FW_W_EN 1
param set-default MIS_LTRMIN_ALT 30
param set-default MIS_TAKEOFF_ALT 20
param set-default MIS_DIST_1WP 2500
param set-default MIS_DIST_WPS 10000
param set-default NAV_ACC_RAD 15
param set-default NAV_DLL_ACT 2
param set-default NAV_LOITER_RAD 50
param set-default RWTO_TKOFF 1
# fix takeoff failure for JSBsim in autonomous mission mode.
#param set FW_THR_SLEW_MAX 0.3
param set-default RWTO_MAX_PITCH 20
param set-default RWTO_MAX_ROLL 10
# fix takeoff failure for JSBsim in autonomous mission mode.
#param set-default RWTO_MAX_THR 0.6
param set-default RWTO_PSP 8
param set-default RWTO_AIRSPD_SCL 1.8
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -0,0 +1,58 @@
#!/bin/sh
#
# @name Plane SITL
#
. ${R}etc/init.d/rc.fw_defaults
param set-default EKF2_ARSP_THR 8
param set-default EKF2_FUSE_BETA 1
param set-default FW_LND_AIRSPD_SC 1.1
param set-default FW_LND_ANG 5
param set-default FW_THR_LND_MAX 0
param set-default FW_LND_HHDIST 30
param set-default FW_LND_FL_PMIN 9.5
param set-default FW_LND_FL_PMAX 20
param set-default FW_LND_FLALT 5
param set-default FW_LND_TLALT 15
param set-default FW_L1_PERIOD 25
param set-default FW_P_TC 0.4
param set-default FW_PR_FF 0.40
param set-default FW_PR_I 0.05
param set-default FW_PR_P 0.05
param set-default FW_R_TC 0.45
param set-default FW_RR_FF 0.40
param set-default FW_RR_I 0.132
param set-default FW_RR_P 0.085
param set-default FW_W_EN 1
param set-default MIS_LTRMIN_ALT 30
param set-default MIS_TAKEOFF_ALT 20
param set-default MIS_DIST_1WP 2500
param set-default MIS_DIST_WPS 10000
param set-default NAV_ACC_RAD 15
param set-default NAV_DLL_ACT 2
param set-default NAV_LOITER_RAD 50
param set-default RWTO_TKOFF 1
# fix takeoff failure for JSBsim in autonomous mission mode.
#param set FW_THR_SLEW_MAX 0.3
param set-default RWTO_MAX_PITCH 20
param set-default RWTO_MAX_ROLL 10
# fix takeoff failure for JSBsim in autonomous mission mode.
#param set RWTO_MAX_THR 0.6
param set-default RWTO_PSP 8
param set-default RWTO_AIRSPD_SCL 1.8
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -0,0 +1,43 @@
#!/bin/sh
#
# @name Plane SITL
#
. ${R}etc/init.d/rc.fw_defaults
param set-default EKF2_ARSP_THR 8
param set-default EKF2_FUSE_BETA 1
param set-default EKF2_MAG_ACCLIM 0
param set-default EKF2_MAG_YAWLIM 0
param set-default FW_LND_AIRSPD_SC 1
param set-default FW_LND_ANG 8
param set-default FW_THR_LND_MAX 0
param set-default FW_L1_PERIOD 15
param set-default FW_P_TC 0.5
param set-default FW_PR_FF 0.40
param set-default FW_PR_I 0.05
param set-default FW_PR_P 0.05
param set-default FW_R_TC 0.7
param set-default FW_RR_FF 0.20
param set-default FW_RR_I 0.02
param set-default FW_RR_P 0.22
param set-default FW_L1_PERIOD 12
param set-default FW_W_EN 1
param set-default MIS_LTRMIN_ALT 30
param set-default MIS_TAKEOFF_ALT 30
param set-default NAV_ACC_RAD 15
param set-default NAV_DLL_ACT 2
param set-default NAV_LOITER_RAD 50
param set-default RWTO_TKOFF 1
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -0,0 +1,50 @@
#!/bin/sh
#
# @name Plane SITL
#
. ${R}etc/init.d/rc.fw_defaults
param set-default EKF2_ARSP_THR 8
param set-default EKF2_FUSE_BETA 1
param set-default FW_LND_AIRSPD_SC 1.1
param set-default FW_LND_ANG 5
param set-default FW_THR_LND_MAX 0
param set-default FW_LND_HHDIST 30
param set-default FW_LND_FL_PMIN 9.5
param set-default FW_LND_FL_PMAX 20
param set-default FW_LND_FLALT 5
param set-default FW_LND_TLALT 15
param set-default FW_L1_PERIOD 25
param set-default FW_P_TC 0.4
param set-default FW_PR_FF 0.40
param set-default FW_PR_I 0.05
param set-default FW_PR_P 0.05
param set-default FW_R_TC 0.45
param set-default FW_RR_FF 0.40
param set-default FW_RR_I 0.132
param set-default FW_RR_P 0.085
param set-default FW_W_EN 1
param set-default MIS_LTRMIN_ALT 30
param set-default MIS_TAKEOFF_ALT 20
param set-default MIS_DIST_1WP 2500
param set-default MIS_DIST_WPS 10000
param set-default NAV_ACC_RAD 15
param set-default NAV_DLL_ACT 2
param set-default NAV_LOITER_RAD 50
param set-default RWTO_TKOFF 1
param set-default RWTO_MAX_PITCH 20
param set-default RWTO_MAX_ROLL 10
param set-default RWTO_PSP 8
param set-default RWTO_AIRSPD_SCL 1.8
set MIXER_FILE etc/mixers-sitl/plane_sitl.main.mix
set MIXER custom
@@ -0,0 +1,54 @@
#!/bin/sh
#
# @name Standard VTOL
#
# @type Standard VTOL
#
. ${R}etc/init.d/rc.vtol_defaults
param set-default FW_L1_PERIOD 12
param set-default FW_MAN_P_MAX 30
param set-default FW_PR_FF 0.2
param set-default FW_PR_I 0.4
param set-default FW_PR_P 0.9
param set-default FW_PSP_OFF 2
param set-default FW_P_LIM_MAX 32
param set-default FW_P_LIM_MIN -15
param set-default FW_RR_FF 0.1
param set-default FW_RR_P 0.3
param set-default FW_THR_CRUISE 0.25
param set-default FW_THR_MAX 0.6
param set-default FW_THR_MIN 0.05
param set-default FW_T_ALT_TC 2
param set-default FW_T_CLMB_MAX 8
param set-default FW_T_HRATE_FF 0.5
param set-default FW_T_SINK_MAX 2.7
param set-default FW_T_SINK_MIN 2.2
param set-default FW_T_TAS_TC 2
param set-default MC_ROLLRATE_P 0.3
param set-default MC_YAW_P 1.6
param set-default MIS_TAKEOFF_ALT 10
param set-default MPC_ACC_HOR_MAX 2
param set-default MPC_XY_P 0.8
param set-default MPC_XY_VEL_P_ACC 3
param set-default MPC_XY_VEL_I_ACC 4
param set-default MPC_XY_VEL_D_ACC 0.1
param set-default NAV_ACC_RAD 5
param set-default NAV_LOITER_RAD 80
param set-default VT_FWD_THRUST_EN 4
param set-default VT_F_TRANS_THR 0.75
param set-default VT_MOT_ID 1234
param set-default VT_FW_MOT_OFFID 1234
param set-default VT_B_TRANS_DUR 8
param set-default VT_TYPE 2
set MAV_TYPE 22
set MIXER_FILE etc/mixers-sitl/standard_vtol_sitl.main.mix
set MIXER custom
@@ -0,0 +1,48 @@
#!/bin/sh
#
# @name Quadrotor + Tailsitter
#
# @type VTOL Quad Tailsitter
#
. ${R}etc/init.d/rc.vtol_defaults
param set-default FW_L1_PERIOD 12
param set-default FW_MAN_P_MAX 30
param set-default FW_PR_I 0.2
param set-default FW_PR_P 0.3
param set-default FW_PSP_OFF 2
param set-default FW_P_LIM_MAX 32
param set-default FW_P_LIM_MIN -15
param set-default FW_RR_P 0.3
param set-default FW_THR_CRUISE 0.33
param set-default FW_THR_MAX 0.6
param set-default FW_THR_MIN 0.05
param set-default FW_T_ALT_TC 2
param set-default FW_T_CLMB_MAX 8
param set-default FW_T_HRATE_FF 0.5
param set-default FW_T_SINK_MAX 2.7
param set-default FW_T_SINK_MIN 2.2
param set-default FW_T_TAS_TC 2
param set-default MC_ROLLRATE_P 0.3
param set-default MPC_ACC_HOR_MAX 2
param set-default MPC_XY_P 0.8
param set-default MPC_XY_VEL_P_ACC 3
param set-default MPC_XY_VEL_I_ACC 4
param set-default MPC_XY_VEL_D_ACC 0.1
param set-default NAV_ACC_RAD 5
param set-default NAV_LOITER_RAD 80
param set-default VT_F_TRANS_DUR 1.5
param set-default VT_F_TRANS_THR 0.7
param set-default VT_TYPE 0
param set-default WV_EN 0
set MAV_TYPE 20
set MIXER_FILE etc/mixers-sitl/quad_x_vtol.main.mix
set MIXER custom
@@ -0,0 +1,52 @@
#!/bin/sh
#
# @name VTOL Tiltrotor
#
# @type VTOL Tiltrotor
#
. ${R}etc/init.d/rc.vtol_defaults
param set-default FW_L1_PERIOD 12
param set-default FW_MAN_P_MAX 30
param set-default FW_PR_FF 0.2
param set-default FW_PR_I 0.4
param set-default FW_PR_P 0.9
param set-default FW_PSP_OFF 2
param set-default FW_P_LIM_MAX 32
param set-default FW_P_LIM_MIN -15
param set-default FW_RR_FF 0.1
param set-default FW_RR_P 0.3
param set-default FW_THR_CRUISE 0.38
param set-default FW_THR_MAX 0.6
param set-default FW_THR_MIN 0.05
param set-default FW_T_ALT_TC 2
param set-default FW_T_CLMB_MAX 8
param set-default FW_T_HRATE_FF 0.5
param set-default FW_T_SINK_MAX 2.7
param set-default FW_T_SINK_MIN 2.2
param set-default FW_T_TAS_TC 2
param set-default MC_YAW_P 1.6
param set-default MIS_TAKEOFF_ALT 10
param set-default MPC_ACC_HOR_MAX 2
param set-default MPC_XY_P 0.8
param set-default MPC_XY_VEL_P_ACC 3
param set-default MPC_XY_VEL_I_ACC 4
param set-default MPC_XY_VEL_D_ACC 0.1
param set-default NAV_ACC_RAD 5
param set-default NAV_LOITER_RAD 80
param set-default VT_B_TRANS_DUR 8
param set-default VT_FWD_THRUST_EN 4
param set-default VT_MOT_ID 1234
param set-default VT_TILT_TRANS 0.6
param set-default VT_TYPE 1
set MAV_TYPE 21
set MIXER_FILE etc/mixers-sitl/tiltrotor_sitl.main.mix
set MIXER custom

Some files were not shown because too many files have changed in this diff Show More