Alessandro Simovic
06f69cd469
Add SITL tests for control allocation
2022-05-12 07:58:56 +02:00
Silvan Fuhrer
ea2c1095c2
ROMFS: SITL tiltrotor: enable control allocaton and only tilt front motors
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2022-05-11 10:19:37 +02:00
Daniel Agar
a71d101869
ROMFS: delete 3037_parrot_disco_mod airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
42d7fb0b66
ROMFS: delete 3035_viper airframe and mixer
2022-05-10 16:23:20 -04:00
Daniel Agar
61c5d11375
ROMFS: delete 3034_fx79 airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
f1a1ed4958
ROMFS: delete 3030_io_camflyer airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
b00d0720cd
ROMFS: delete 13010_claire airframe
2022-05-10 16:23:20 -04:00
Daniel Agar
451cc5058d
ROMFS: delete minimal DJI airframes
2022-05-10 16:23:20 -04:00
Daniel Agar
fa1891ace2
ROMFS: delete steadidrone airframes
2022-05-10 16:23:20 -04:00
Peter van der Perk
b1ad4e8864
Upgrade libcanard to 3.0 and rename uavcan_v1 to cyphal
...
Did some prep work for redundant interfaces by introducing CanardHandle class to decouple physical interfaces from cyphal.cpp
2022-05-10 09:46:18 -04:00
achim
fc887a23af
boards: matek h743 mini
2022-05-06 10:09:14 -04:00
Silvan Fuhrer
20400cbb74
ROMFS: reduce FW_SPOILERS_LND to 0.4 to leave ailerons enough control authority
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2022-05-06 16:05:03 +02:00
Silvan Fuhrer
4b8f93de5c
FW: rework spoiler/flap control logic
...
- remove separate flaperon controls input to mixer instead enable spoiler support
- add slew rate limiting on both flap and spoiler controls
- add spoiler configuration for Landing and Descend
- add trimming from spoiler deflection
- FW Attitude control: remove FW_FLAPS_SCL param -->
The flap settings for takeoff and landing are now specified relative to full range.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2022-05-03 15:11:21 +02:00
Silvan Fuhrer
21a2892f47
use actuator_controls[8] for collective tilt for tiltrotor VTOL, instead of [4]
...
[4] is reserved for Flaps, so also having the tilt on it was preventing us from
using flaps on tiltrotors, and other ripple effects.
By using [8] the tilt is separated from all other channels - it requires to increase the size of
actuator_controls by 1 to 9.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2022-05-03 15:11:21 +02:00
Daniel Agar
f390f52058
drivers/differential_pressure: remove lib/drivers/airspeed dependency and cleanup
...
- split ms4525_airspeed into separate ms4515 and ms4525 drivers
2022-04-26 08:39:19 -04:00
Silvan Fuhrer
ae5725e71a
ROMFS: fix typo in convergence and clair configs
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2022-04-23 10:29:57 -04:00
Daniel Agar
9073f3ccdf
px4flow allow delayed background startup
2022-04-22 21:11:02 -04:00
Hamish Willee
e1d3728208
13004_quad+_tailsitter - outputs mixed up
2022-04-22 07:34:05 +02:00
alexklimaj
6e0ac66c3c
drivers/optical_flow: new PixArt PAA3905 optical flow driver
2022-04-14 16:47:53 -04:00
Daniel Agar
0a0987a6e0
ROMFS: move px4flow start to rc.sensors
2022-04-12 21:22:41 -04:00
Silvan Fuhrer
6096620828
ROMFS: remove duplicate setting of NAV_LOITER_RAD to 80
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2022-04-09 14:31:17 -04:00
Daniel Agar
98623f69a3
update mavlink submodule to latest
...
- update MAV_TYPE VTOL usage for current mavlink
2022-04-07 20:35:41 +02:00
alessandro
8af0eeae46
1011_iris_irlock: require precland ( #19431 )
2022-04-04 08:27:31 +02:00
Daniel Agar
f4c3084c26
init adjustments to ensure used topics are advertised early (primarily for logging)
...
- multi-EKF create each instance as soon as IMU & mag are advertised (before device id populated)
2022-03-23 16:51:16 -04:00
Matthias Grob
eee4aaee4f
Commander: remove dynamic position velocity probation period
2022-03-23 15:04:48 -04:00
Daniel Agar
36e6527013
ROMFS: MAV_TYPE cleanup
...
- set MAV_TYPE as a parameter default per vehicle type, or airframe if necessary
- cleanup MAV_TYPE param metadata and commander helper to only include
what's currently used in PX4
2022-03-17 09:28:10 -04:00
Ncerzzk
cb23179c50
Add Goertek SPL06 barometer driver ( #19229 )
...
Signed-off-by: ncer <huangzzk@bupt.edu.cn>
2022-03-15 10:13:03 -04:00
Konrad
963f6a91d9
exclude Mixer for Tailsitter with x motor configuration and elevons for fmu-v2 and omnibus to avoid flash size issues
2022-03-15 10:44:27 +01:00
JunwooHWANG
35af604a82
Added RTL Switch Setting for ATL Mantis Edu ( #19267 )
...
Co-authored-by: Junwoo Hwang <junwoo@auterion.com>
2022-03-02 16:57:20 +01:00
Beat Küng
76d8d8cae6
control_allocator: generic motor configuration for standard vtols
...
This adds the pusher/puller to the standard motors and makes the axis
configurable.
2022-02-25 08:30:58 +01:00
Beat Küng
dce2968470
ROMFS: set CA_* + HIL_ACT_* params for hitl+sih airframes
2022-02-25 08:30:58 +01:00
Roman Dvořák
976c994156
Extend the PCF8583 driver to support multiple instances ( #19232 )
...
* Add some restart events into pcf8583 driver
Co-authored-by: Vít Hanousek <vithanousek@seznam.cz>
2022-02-21 16:47:16 -05:00
Daniel Agar
fca886e05a
drivers/irlock: add SENS_EN_IRLOCK parameter to start driver
2022-02-11 22:57:56 -05:00
alessandro
1febba315a
mantis: disable optical flow fusion in EKF2
...
Above grass fields I can frequently observe position
instabilities with the mantis due to the optical flow fusion.
Let's disable flow fusion for now.
2022-02-11 15:33:34 +01:00
Beat Küng
86860808e3
ROMFS: set CA_* geometry params for some of the generic airframes
...
Not enabled, makes it easier to switch.
2022-02-09 10:08:59 +01:00
Beat Küng
a2ba613254
ROMFS: remove 4018 + 6003 ctrlalloc airframes
2022-02-09 10:08:59 +01:00
Julian Oes
490a0c473b
Rename vmount to gimbal
2022-02-07 19:21:15 -05:00
Julian Oes
853047c643
Mantis: use gimbal auto input
...
This allows RC and mavlink gimbal v2 input.
2022-02-07 19:21:15 -05:00
Jaeyoung Lim
3dd5c1fbaf
Enable NPFG by default on the believer
2022-02-02 17:16:19 +01:00
Roman Dvořák
2b1229786e
Multi instance SHT3x driver support
2022-01-31 21:38:26 -05:00
Roman Dvořák
ed475ca324
SHT3x driver
...
SHT3x driver, clean code
changes leading to merge TFHT with CUAV hygrometer
Delete humidity_temperature.msg
Update CMakeLists.txt
rename 'atmosphefir_quantities' to 'hygrometers'
fix logging
removed cmake files
fix PR issues
2022-01-31 21:38:26 -05:00
Daniel Agar
0104b84289
logger: PX4_SITL log all ekf2 publications at full rate for replay
2022-01-28 07:46:54 +01:00
Daniel Agar
d2ce9a8560
ROMFS: rc.replay fix ulog_params argument
2022-01-28 07:46:54 +01:00
FARHANG
fe44e281e5
ROMFS: Holybro X500 v2 airframe addition
2022-01-18 15:11:41 -05:00
Beat Küng
4cbee44220
rc.mc_defaults: only set IMU_GYRO_RATEMAX if default
...
Allows boards to set a higher rate.
2022-01-17 10:41:33 -05:00
romain-chiap
4e06b40e2b
sih: add tailsitter support, disable UAVCAN
2022-01-11 08:29:19 +01:00
Julian Oes
6ed48ad0c0
ROMFS: Remove now unused variable
2022-01-10 23:04:10 -05:00
Julian Oes
b52972f3f8
ROMFS: remove duplicate startup tune
...
This must have come back in a rebase.
2022-01-10 23:04:10 -05:00
Julian Oes
1baecf07ad
Mantis: remove startup tune volume
...
Let's just leave it at the default like the rest of the beeps.
2022-01-10 23:04:10 -05:00
Julian Oes
38439256e5
Mantis: move MIXER vars to airframe init
...
The two were actually conflicting and are now consolidated.
2022-01-10 23:04:10 -05:00
Julian Oes
14fb019821
Mantis: move SYS_DM_BACKEND to board_defaults
...
Otherwise it is set too late and not used during startup.
2022-01-10 23:04:10 -05:00
Julian Oes
a061d7a02a
Mantis: use dataman in RAM
2022-01-10 23:04:10 -05:00
Julian Oes
b1a1e4913b
Mantis: rotate flow by 180 degrees
...
This seemed to be exactly inverted.
2022-01-10 23:04:10 -05:00
Julian Oes
28d69d3285
Mantis: fix throttle RC calibration
2022-01-10 23:04:10 -05:00
Julian Oes
b92aa92bec
Mantis: fix mixer loading
...
The ordering before did not work out, and without the sleep it fails.
2022-01-10 23:04:10 -05:00
Julian Oes
24bdf79180
ROMFS: fix debug output
2022-01-10 23:04:10 -05:00
Julian Oes
e4763f15f6
Mantis: add RC hacks
...
This changes the way RC is handled for the Mantis:
- The RC values are re-written when arriving over MAVLink. They are
rescaled from 0..4095 to 1000..2000 and the channel bits added to
separate channels. This makes the downstream handling easier.
- Gimbal pitch is moved from Aux1 to Aux2 as that should be the default.
- Aux3 and Aux4 are used for the photo and video trigger.
- The speed button is used as the FLTMODE channel and set to switch
between POSCTL and ALTCTL.
2022-01-10 23:04:10 -05:00
Julian Oes
1754e25920
vmount: add param to use RC input for angular rate
...
Until now RC input was translated to angles only. I added the param
MNT_RC_IN_MODE which allows the RC input to be used for angular rate.
2022-01-10 23:04:10 -05:00
Julian Oes
7d09635fb6
ROMFS: add option for dataman args
...
This is required for boards requiring dataman in RAM.
2022-01-10 23:04:10 -05:00
Julian Oes
bb09646b41
ROMFS: allow the output config to be skipped
...
This is required for the ATL Mantis-EDU.
2022-01-10 23:04:10 -05:00
Julian Oes
0fbb03dee1
ROMFS: add option for startup tune volume
...
Otherwise the CBRK_BUZZER param does not work as it should.
2022-01-10 23:04:10 -05:00
Julian Oes
fa282cfe86
Mantis: make startup less loud
2022-01-10 23:04:10 -05:00
Julian Oes
2b4b87571c
Mantis: adapt RC calibration
...
This is with a newer RC firmware.
2022-01-10 23:04:10 -05:00
Julian Oes
856e229482
ROMFS: reset the startup sound for Mantis
2022-01-10 23:04:10 -05:00
Julian Oes
1be4e35ed4
ROMFS: move startup sound further down
...
This way it works for the Mantis where the tap_esc driver needs to be
running before beeping is posssible.
2022-01-10 23:04:10 -05:00
Julian Oes
185e4cfd48
Mantis: set range finder limits, and min quality
...
The limits might somewhat match the sensor, guessed based on the
original driver.
The quality is set so that spikes when sitting on the ground are not
used.
2022-01-10 23:04:10 -05:00
Daniel Agar
2e2ac36cab
drivers/uavcan: make firmware server available on both CAN1/CAN2 always (if enabled)
...
- uavcan firmware server no longer shuts down when arming (nodes might restart in flight)
- always handle UAVCAN parameters with or without the FW server active
- remove legacy ESC enumeration in FW server
2022-01-10 11:13:02 -05:00
Daniel Agar
daa925137c
boards: move default battery calibration defines to parameter defaults
2022-01-10 09:49:36 -05:00
romain-chiap
4264ec992d
Update 1101_rc_plane_sih.hil
...
This bugged me for a while, the sih FW would not takeoff from the ground. Now, I found it!
2022-01-05 16:18:53 -05:00
Matthias Grob
bbb04ab4b8
Remove relaying of maximum altitude through land detector
2022-01-05 14:54:59 +01:00
Daniel Agar
7df1721d32
ROMFS: rcS disable simplistic SD I/O test
...
- this was added when trying to identify SD card issues at boot and
trigger a format, but didn't provide any value
2022-01-01 18:43:27 -05:00
Daniel Agar
990d7c159d
pwm_out: cleanup and prep for linux compatibility
2021-12-28 11:04:00 -05:00
Silvan Fuhrer
1ad66e606b
ControlAllocation: introduce convention for control surface deflection sign
...
- horizontal control surfaces: up=positive deflection
- vertical control surfaces (rudder): right=positive deflection
- mixed (V-Tail): up=positive deflection
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-12-24 20:06:13 -05:00
Beat Küng
203e253dfe
airframes: sitl boat: switch to dynamic control allocation
2021-12-24 20:06:13 -05:00
Beat Küng
8486ca5766
airframes: sitl cloudship: switch to dynamic control allocation
2021-12-24 20:06:13 -05:00
Silvan Fuhrer
07306c4be3
control_allocator: add support for Tailsitter VTOL
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-12-24 20:06:13 -05:00
Beat Küng
d688e5dee4
sitl airframes: add control allocation config to some airframes (not enabled)
...
To use them, manually set SYS_CTRL_ALLOC
2021-12-24 20:06:13 -05:00
Beat Küng
2362feddac
airframes/uuv_bluerov2_heavy: switch over to control allocation
2021-12-24 20:06:13 -05:00
Beat Küng
43e15148f6
rover: switch sitl configs to control allocation
2021-12-24 20:06:13 -05:00
Beat Küng
70e46a194f
control_allocator: major refactoring & additions
...
- allow effectiveness matrix to select control allocator method
(desaturation algorithm)
- add actuator_servos publication
- add support for multiple matrices (for vtol)
- add updateSetpoint callback method to actuator effectiveness to allow it
to manipulate the actuator setpoint after allocation
- handle motor stopping & reversal
- add control surfaces & tilt servos
- handle standard vtol + tiltrotor
- rename MC rotors params & class to be more generically usable
- fixes and enables ActuatorEffectivenessRotorsTest
2021-12-24 20:06:13 -05:00
Beat Küng
230aae580f
ROMFS: add control_allocator to all types
2021-12-24 20:06:13 -05:00
Daniel Agar
14c2225b1c
ROMFS: rcS dump parameter backup contents before using
...
- this is mainly for debug comparion
2021-12-23 17:45:50 -05:00
Thomas Debrunner
43bc6db99e
PPS capture: Add a param to enable / disable PPS capture module. This is important, since it takes over an FMU pin which can no longer be used for actuator output.
2021-12-17 07:56:08 +01:00
Igor Mišić
298a8c4637
boards/fmu-v5x: allocating PPS pin
...
- start pps_capture before pwm_out
2021-12-17 07:56:08 +01:00
Daniel Agar
ca3f6f59f9
dataman: add SYS_DM_BACKEND parameter
2021-12-10 09:10:02 -05:00
Daniel Agar
1f6acd0171
parameters: add simple backup and restore mechanism
2021-12-06 09:37:08 -05:00
Daniel Agar
e692f4ca01
ROMFS: rcS param import fail try to gather data
...
- startup tune and console message to notify user
- save dmesg and param bson copy to microsd
- run param dump to show full contents of bson
2021-12-06 09:37:08 -05:00
Julian Oes
7c0165ea0c
ROMFS: avoid setting none params
2021-12-02 11:40:26 -05:00
Julian Oes
f537b30c86
init.d-posix: exit on error
...
This fixes a case where the px4 startup is not stopped when the
px4 process is killled using -SIGKILL against the px4 deamon.
In that case, the currently executing command/client is killed
and properly shutting down with result -1, however, the next command
is started anyway.
This means that the next time we try to run the simulation we get a
"PX4 daemon already running for instance 0" error and PX4 doesn't start
properly.
By adding exit on error, we properly exit in the case where the startup
script gets stopped/killed.
2021-12-02 11:40:26 -05:00
Silvan Fuhrer
42845d6c6e
SITL configs VTOL/plane: improve SITL tuning a bit
...
remvoe some tecs params from configs that acutally lead to worse performance than defaults
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-26 09:24:23 -05:00
Daniel Agar
c049c26ac5
ROMFS: rcS attempt to format SD if .format file exists
2021-11-25 13:11:45 -05:00
Beat Küng
2809dd8944
control_allocator: remove min/max/scale params
2021-11-23 12:40:22 -05:00
Beat Küng
f99c2617ad
control_allocator: add module.yaml, add CA_MC_R_COUNT param & update defaults
2021-11-23 12:40:22 -05:00
Beat Küng
dbc889a2ae
rc.mc_apps: remove 'param set MPC_USE_HTE 0' for control allocation
...
this is working now
2021-11-23 12:40:22 -05:00
Silvan Fuhrer
e596607e2e
minor comments update
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2021-11-23 14:48:51 +01:00
Daniel Agar
f5d9b01f5c
NuttX build in place
...
- cmake NuttX build wrapper compile in place instead of copying source tree to build directory
- slightly faster skipping necessary copying (depending on system)
- allows debugging in place
- easier to work directly in NuttX following official documentation
- simplifies overall build which should make it easier to resolve any remaining NuttX dependency issues in the build system
- the downside is switching back and forth between different builds always require rebuilding NuttX, but I think this is worth the improved developer experience
- also no longer builds px4io and bootloader in every single build, for most users these rarely change and we're wasting a lot of build time
2021-11-15 18:47:38 -05:00
Julian Oes
4a5ef1c81e
ROMFS: whitespace
2021-11-09 16:05:25 +01:00
Julian Oes
eeb7682fd9
ROMFS: start manual_control for SITL
2021-11-09 16:05:25 +01:00
Daniel Agar
2d816e0b3e
[WIP] manual_control selector hacks
2021-11-09 16:05:25 +01:00
Daniel Agar
9c15be22d6
mc_autotune_attitude_control: add new MC_AT_EN parameter to enable
...
- only enabled by default on boards that aren't memory constrained
2021-11-05 09:52:07 -04:00