- matrix in PX4/Firmware (478a27ee8843a9bd91a0254f6b01a6a9c01946a4): a8009a36a3
- matrix current upstream: 4f3565da94
- Changes: a8009a36a3...4f3565da94
4f3565d 2019-12-09 kritz - Add asserts (#115)
2f63981 2019-12-06 kritz - Add several functions that are useful for coavriance matrices: (#114)
5cbcf60 2019-12-05 kritz - Set Matrix's col amd row to single value (#113)
ef442fa 2019-12-05 kritz - Getter function for the diag elements of slice (#112)
de6a2d3 2019-12-04 kritz - Slice assign value (#111)
This fixes a corner case for VTOL RTL with RTL_TYPE 1.
RTL_TYPE 1 means that the VTOL skips all waypoints on RTL and jumps to
the land waypoint at the end.
During a mission in fixedwing mode it will continue to fly in fixedwing
mode and then do a transition before landing.
However, if RTL is engaged right at the moment of the front transition,
the transition waypoint is not inserted and the VTOL will try to land in
fixedwing mode at the mission land location.
This corner case is fixed in this patch by also considering the
"transition after takeoff" state.
Open the UART after adding the instance: mavlink_open_uart() might block,
and in that case the parent task waiting for mavlink to be started times
out.
And while waiting for the USB UART device to come up:
- check for _task_should_exit
- check for check_requested_subscriptions()
Side-effects when USB is not plugged in during boot:
- reduces boot duration by 100ms
- fixes duplicate instance name in 'top':
201 mavlink_if0 1 0.000 1328/ 2572 100 (100) w:sig 3
204 mavlink_if0 572 4.221 1632/ 2540 100 (100) w:sig 4
- 'mavlink stop-all' now stops the usb instance as well
- uses the FIFO and SPI DMA to transfer full raw data (8 kHz gyro, 4 kHz accel)
- new sensor messages for better visibility
- sensor_{accel, gyro}_fifo: full raw data for optional logging and analysis
- sensor_{accel, gyro}_status: metadata, clipping, etc
- currently not enabled by default
ISM330DLC uses 4096 of memory allocated from DMA pool.
This depleted the pool to the point the next allocation
for FAT would fail. Unfortuanly this is the logger
on a later open.
- instead of resetting existing calibration on start and having to wait
until the estimator converges, keep existing calibration applied and
subtract it.
- reduce calibration time from 5s to 500ms, and check for motion during
that time.
- repeat if there was motion
- fix an uorb resource leak