Commit Graph

43016 Commits

Author SHA1 Message Date
Thomas Stastny 28fe15d829 FixedwingPositionControl: initialize the airspeed slew rate controller with trim airspeed in the constructor 2023-09-13 16:18:16 -04:00
Thomas Stastny a1cd4fd5df Commander: make sure unsupported do reposition command result is published
todo: need to consolidate the command ack strategy in this function
2023-09-13 15:29:31 -04:00
Thomas Stastny bec0d83cf4 Commander: dont accept reposition commands without the mode switch bit
avoids erroneous (unexpected) position setpoints when switching into hold from another mode
2023-09-13 15:29:31 -04:00
Thomas Stastny 2d80291b43 loiter: only accept reposition setpoint if commanded within last 0.5 sec
guards against left over reposition commands (potentially set via geofence) from previous flights
2023-09-13 15:29:31 -04:00
David Sidrane e5f4a6b074 NuttX backports acculated prio to V1.14 release
c23b72dffe [BACKPORT] sched/semaphore: Remove restriction to use nxsem_trywait from ISR
fd47cd20a2 [BACKPORT] imxrt:Serial Preserve all but W1C bit in SR
c55f0fd3ac [BACKPORT] imxrt: lpspi dma invalidate cache after exchange
198c7caecb [BACKPORT] imxrt:lpi2c fix status handeling & race
cbd2e44c10 [BACKPORT] s32k3xx: lpspi dma invalidate cache after exchange
e71618d60e [BACKPORT] s32k3xx:lpi2c fix status handeling & race
6f59cc3659 [BACKPORT] s32k1xx:lpi2c fix status handeling & race
1e316d7e32 [BACKPORT] imxrt: flexcan use hpwork for receiving frames
67c1c59865 [BACKPORT] net/can can_readahead_timestamp always free iob
8be831a4ff [BACKPORT] imxrt: fix txdeadline add ecc/fd support
00a68b7668 [BACKPORT] fs/cromfs: Fix faulty DEBUGASSERT() check
d5cf545d6e [BACKPORT] S32K3XX EMAC MCAST support Fix compile warning when ioctl is not enabled
4265c830fa [BACKPORT] imxrt:edma {s|d}last needs to be total xfer size
24b4d44896 [BACKPORT] s32k3xx:edma {s|d}last needs to be total xfer size
eed0482f64 [BACKPORT] s32k1xx:edma {s|d}last needs to be total xfer size
36aab4146a [BACKPORT] kinetis:edma {s|d}last needs to be total xfer size
a0faf31f6f [BACKPORT] arch/stm32f7: fixes for pinmap
eb8255121d [BACKPORT] stm32h7:sdmmc It is not an error if no wait was needed
062044fe41 [BACKPORT] board nucleo-h743zi:Rework board.h not use CONFIG_STM32_USE_LEGACY_PINMAP
e03f9d3917 [BACKPORT] board olimexino-stm32:Rework board.h not use CONFIG_STM32_USE_LEGACY_PINMAP
4c3a467415 [BACKPORT] stm32l5:pinmap Add suffix to all pins and add legacy pinmap
153069ed40 [BACKPORT] stm32wb:pinmap Add suffix to all pins and add legacy pinmap
d84d737f89 [BACKPORT] stm32f0l0g0:stm32f0{3|5|7|9}x_pinmap & stm32g0_pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
5fc7071ac1 [BACKPORT] stm32l4:stm32l4x{3|4|5|6|r}xx_pinmap pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
20061c2aab [BACKPORT] stm32:stm32f10{0|2|3{c|r|v|z}|5{r|v}|7v}_pinmap refactor
4d1f83d484 [BACKPORT] stm32:stm32l15xxx pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
2dfa3f2601 [BACKPORT] stm32:stm32g4xx{c|k|r|m|v|q} pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
d206327809 [BACKPORT] stm32:stm32f3{0|3|7}xxx pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
95e66ab508 [BACKPORT] stm32:stm32f20xxx pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
d2fd9178ad [BACKPORT] stm32:f4/f412 pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
a9df45166d [BACKPORT] stm32f7:pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
07dd2b424e [BACKPORT] stm32h7:pinmap Remove GPIO_SPEED_xxx and add legacy pinmap
1e3065344f [BACKPORT] stm32u5:stm32u585xx_pinmap Fix typo
0a05365a90 [BACKPORT] stm32wl5:pinmap Fix typo
e3834138dc [BACKPORT] tools:Add STM32 Pin migration tool
df851a8768 [BACKPORT] stm32h7/rcc: make VOS0 configurable from board.h also for stm32h7x7xx
d75dfcf1e9 [BACKPORT] stm32h7/rcc: make VOS0 configurable from board.h
963f35f4fc [BACKPORT] {stm32,stm32f7,stm32h7,stm32l4,efm32}/otg: rasie an assertion if IN request is not possible to transfer
de2fcc6668 [BACKPORT] {stm32f7,stm32h7,stm32l4}/sdmmc: callback support requires HPWORK
6929144fc2 [BACKPORT] stm32h7/otgdev: FS transceiver must be enabled if OTGFS enabled
a2078afaea [BACKPORT] stm32h7/otg: add support for external ULPI
26e1246c86 [BACKPORT] stm32h7/rcc: OTGHS ULPI works only in VOS0
cd6daa185e [BACKPORT] stm32h7: update ULPI pins
c73c261ae3 [BACKPORT] arch/boards: fix stm32f411-mininum:nsh compilation failure after enabling IRQMONITOR
8078f134ef [BACKPORT] arch/stm32/stm32.h: do not include stm32_usbdev.h if not supported
60e884fa92 [BACKPORT] {stm32,stm32l4,stm32f0l0g0}/otg: move STM32_NENDPOINTS definitions to header files
dda297cb78 [BACKPORT] arch/arm/src/stm32/hardware: Fix register define
362b976b0e [BACKPORT] arch/arm/src/stm32/hardware: Add stm32g4 rcc apb1 timer enable compatibility
434fd71f2c [BACKPORT] {stm32/stm32l4/stm32f7/stm32h7/efm32}/otgdev: remove invalid use of the priv field for EP
2476d24e8c [BACKPORT] {stm32f7,stm32h7}/otg: fix compilation for USBDEV when USB_DEBUG=y
eb43c582ea [BACKPORT] drivers/mtd/ramtron: change nsectors size to uint32
20f61ff0d5 [BACKPORT] fs/littlefs: add full support for LittleFS block device cfg in Kconfig
60471fbf8c [BACKPORT] drivers/mtd: add Kconfig options for RAMTRON emulated page & sector size
2023-09-13 13:14:18 -04:00
Daniel Agar 36010a9a7c ROMFS: rc.fw_defaults set more conservative range finder requirements
- for FW the primary range finder usage is estimating the distance to
   the ground (terrain estimate) to guide the landing approach and initiate flare
 - increase EKF2_RNG_QLTY_T default 1->3 seconds
2023-09-13 12:14:13 -04:00
Konrad 679a532e61 failsafe: When rtl_time_estimate failsafe is triggered, only disable it when the user changes the mode, or it is disarmed. 2023-09-13 16:19:08 +02:00
Niklas Hauser 98a35971af camera_capture: disable timer callback on stop
Otherwise the capture_trampoline is called while g_camera_capture is a
nullptr, which leads to a hardfault since the this pointer is invalid.
2023-09-13 10:16:08 -04:00
Daniel Agar 016db84d69
ekf2: covariance update use IMU sample dt (#22032)
- usually the delta angle and delta velocity dt is the same, but they can be slightly different
2023-09-13 09:58:56 -04:00
Jukka Laitinen 9bcfd1a7f7 cmake/kconfig.cmake: Don't populate config_kernel_list in nuttx flat builds
This passes __KERNEL__ compilation flag to all modules, which may break some NuttX headers

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2023-09-13 21:00:07 +12:00
Thomas Stastny 4ec4ce5fa9 FixedwingPositionControl: rework airspeed slew controller handling
- force initialize takeoff airspeed setpoint at start of takeoff modes
- force set airspeed constraints if slewed value is out of bounds
- always slew airspeed setpoints as long as inside constraints
- move target airspeed setpoint calculation into mode specific logic regions (hand vs runway)
2023-09-13 09:50:41 +02:00
Silvan Fuhrer 78ddf41aa2 ROMFS: SITL plane_catapult: reduce FW_LAUN_AC_THLD to 10m/s/s to detect every throw
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-13 09:50:41 +02:00
Silvan Fuhrer f1b47b14b8 FW Pos Control: add in_takeoff_situation argument to adapt_airspeed_setpoint()
when we're in a takeoff situation, we only want to adapt the airspeed to
avoid accelerated stall due to load factor changes. Disable othre logic
like minimum ground speed, wind based adaption and airspeed slew rating.

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2023-09-13 09:50:41 +02:00
bresch 78eb0cdb72 opt flow: fix msg naming
optical_flow got replaced by sensor_optical_flow and vehicle_optical_flow
2023-09-11 10:12:16 -04:00
Julian Oes f2bb548b27 6x: fix internal mag rotation
From looking at the history the BMM150 rotation was initially 0. Then,
this was changed to 6 when the intent was to only change it for Skynode.

A bit later, the rotation was changed back to 0, but only for Skynode.

This tells me that rotation 0 was correct for all 6X including Skynode
all along.

Signed-off-by: Julian Oes <julian@oes.ch>
2023-09-11 15:03:33 +12:00
Fermi-4 9fe8bd698b
Update ina228.h comment typo (#22018)
Update comment wording to "Charge Result" from "Energy Result" as this is reading from the charge register
2023-09-10 01:12:57 +02:00
duartecdias efe0db5725
uavcan_drivers: stm32h7_can fix filter memory initialization bug
Co-authored-by: Duarte Dias <duarte@uaventure.com>
2023-09-08 15:29:41 -04:00
Daniel Agar 7d497d4959 msg: set all ORB_QUEUE_LENGTH to actual rounded value 2023-09-08 15:28:16 -04:00
Daniel Agar 892d507ca7
integrationtests: MAVROS mission_test.py relax yaw estimate STD check for now (#22061)
- ekf2 heading first initializes to 0 degrees, then immediately resets to mag heading once a few samples are accumulated
 - the yaw standard deviation check could be adjusted to exclude this brief (<1s) initial period
2023-09-08 15:27:39 -04:00
Daniel Agar 3476831246
dataman: explicitly check file existence to init
- on NuttX if the SD card was just cleared (quick format) it's possible for the newly created uninitialized dataman file to still have the previous compatibility key, which causes the initialization to be skipped
2023-09-08 10:16:24 -04:00
Thomas Stastny def4ce6ba8 FixedwingPositionControl: slightly simplify manual position control (use navigateLine() to be sure no turnaround)
make notes on odd things that are likely still wrong
2023-09-08 16:08:38 +02:00
Thomas Stastny 16bd0a2ba0 FixedwingPositionControl: revise navigateLine(), navigateBearing() and naivgatePathTangent() briefs 2023-09-08 16:08:38 +02:00
Thomas Stastny 7b7d762582 FixedwingPositionControl: forgot to rename input args in navigateWaypoints() declaration 2023-09-08 16:08:38 +02:00
Thomas Stastny e71804d976 FixedwingPositionControl: reuse line() and waypoint() methods in navigateWaypoints() method 2023-09-08 16:08:38 +02:00
Thomas Stastny ad9e3d72d9 FixedwingPositionControl: split out single waypoint following method
makes more clearly defined interfaces and behaviors. also cleaned up the controlAutoPosition() method
2023-09-08 16:08:38 +02:00
Thomas Stastny c3012a551f FixedwingPositionControl: track single point when no prev point exists for waypoint following
make sure correct local position setpoint output is logged
2023-09-08 16:08:38 +02:00
Thomas Stastny f90783547f FixedwingPositionControl: correct navigation method param description typos 2023-09-08 16:08:38 +02:00
Thomas Stastny 3047cad05d FixedwingPositionControl: follow (infinite) lines instead of waypoints during takeoff and landing 2023-09-08 16:08:38 +02:00
Thomas Stastny 3ffb57bcce FixedwingPositionControl: handle degenerate tangent setpoint in navigatePathTangent() 2023-09-08 16:08:38 +02:00
Thomas Stastny 413f66549d npfg: update signed track error state 2023-09-08 16:08:38 +02:00
Thomas Stastny b11ff06798 FixedwingPositionControl: fix / clarify navigate waypoint logic 2023-09-08 16:08:38 +02:00
Daniel Agar 14ef376721 drivers/uwb/uwb_sr150: don't enable by default 2023-09-08 09:20:01 -04:00
Daniel Agar de9dfb6b74 .vscode: settings.json default ros.distro 2023-09-07 18:57:37 -04:00
Niklas Hauser ad1d72df6f
uORB: fix hardfault in uORB calloc implementation
When running out-of-memory, the malloc returns NULL and the memset then tries to write to address 0 which results in a hardfault.
2023-09-07 14:22:58 -04:00
Julian Oes 35c1d5d9b1 asp5033: fix K value
As QioTek told me via email.

Signed-off-by: Julian Oes <julian@oes.ch>
2023-09-06 10:25:48 -04:00
Matthias Grob 38b0de94c1 system_params: improve distance sensor check description 2023-09-05 13:11:20 -04:00
alexklimaj 10ac10cb33 ARK CANnode disable OPT_WAIT_FOR_GETNODEINFO_JUMPER_GPIO 2023-09-05 13:10:23 -04:00
Jukka Laitinen 2d4d824a98 src/drivers/adc/ads1115: Change adc_report type to PublicationMulti
To support several ads1115 modules publishing to different adc_report instances

Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2023-09-05 13:09:26 -04:00
Julian Oes 70b48dd41c cubepilot: Add support for 4. variant of Orange+
This adds support for the 4. hardware variant of the CubeOrange+
featuring 3 ICM45686.

Signed-off-by: Julian Oes <julian@oes.ch>
2023-09-05 11:07:09 -04:00
Denislav Petrov ece338ceef
Adding a new differential pressure sensor ASP5033 (#21568)
* added a new driver ASP5033 for measuring the differential pressure and airspeed

---------

Co-authored-by: nano <nanobotzhe@abv.bg>
Co-authored-by: Denislav Petrov <you@example.com>
2023-09-05 10:21:05 +12:00
Julian Oes fb30b4d288 control_allocator: Clarify position description
I'm assuming that the rotor positions are given relative to the center
of gravity (CG).

Signed-off-by: Julian Oes <julian@oes.ch>
2023-09-04 08:02:15 +02:00
Matthias Grob d2819ca754 FunctionsMotors: include motors instead of servos topic 2023-08-31 16:56:08 -04:00
Matthias Grob 2b78431566 PositionControl: use float literals for sqrtf sign check 2023-08-31 16:56:08 -04:00
alexklimaj 3d61ab84c4 Cannode add ability to get node ID after boot. Fix ARK CAN OPT_WAIT_FOR_GETNODEINFO_JUMPER_GPIO_INVERT 2023-08-30 11:40:01 -04:00
bresch 23b31cc5fd manual_yaw: compensate for yaw estimate convergence
When the yaw estimate is converging, the controller makes the drone yaw
in order to follow the current setpoint. This is unintuitive for the
pilot and it is preferable if the drone continues to fly towards the
same physical direction.
2023-08-30 09:56:19 +02:00
bresch 0aa4afdbce ekf2: add unaided_yaw for more resilient yaw control
This estimate doesn't converge to the true yaw but can be used as a
more consistent but drifting heading source.
It can be used by a setpoint generator to adjust its heading setpoint
while the true yaw estimate is converging in order to keep a constant
course over ground.
2023-08-30 09:56:19 +02:00
Julian Oes 329a2d0e98 gps: request Unicore HEADINGA message
This updates the gps/devices submodule which includes a fix that
requests the Unicore HEADINGA message in case the message is not enabled
by default.

Signed-off-by: Julian Oes <julian@oes.ch>
2023-08-30 11:31:22 +12:00
comla-x b47fa81633
boards: added SIYI N7 flight controller config 2023-08-29 11:31:33 -04:00
bresch 52bcf1e0c2 update change indicator
The yaw variance is now initially zero
2023-08-29 10:57:49 -04:00
bresch 71f12b2c4d ekf2: do not initially increase yaw variance
Yaw variance is automatically increased as soon as a yaw aiding source
is activated
2023-08-29 10:57:49 -04:00