Lorenz Meier
5b70522541
Mixer: Make reset operation more robust
...
This change makes the operation more robust as it flags the whole group invalid in the first step. This should not be confused with being thread-safe - to be thread-safe, all accesses to _first and the following linked list need to be guarded by a mutex. This should be done outside of the mixer in the driver though, as the method depends on the board architecture.
2016-12-26 13:41:36 +01:00
Lorenz Meier
66b9ee2d24
UAVCAN: Make GPS module use the multi-topic facility so that a normal GPS and an UAVCAN GPS can co-exist and do not write on top of each other.
2016-12-26 12:12:44 +01:00
Lorenz Meier
8a58cf0daa
Fix usage of CRTSCTS define from termios.h
...
NuttX had the CRTSCTS define incorrectly set for only output flow control, which broke our flow control logic. This commit patches NuttX and puts in addition a guard in place to prevent any future issue with the non-POSIX define being incorrect.
This has been debugged and identified by @ecmnet, which was the main contribution for this patch.
2016-12-26 12:08:05 +01:00
Lorenz Meier
0b6e0c020e
MAVLink stream: Guard against an interval value of zero
2016-12-25 21:34:19 +01:00
Lorenz Meier
9b97e0358b
MAVLink: Send correct home heading
2016-12-25 21:30:31 +01:00
Lorenz Meier
6444988392
MAVLink app: Send messages on average at a more correct rate and send on first call
...
This patch fixes two issues:
* It sends the message on the first call, making sure that the first update gets sent out.
* It improves the rate scheduling. In an experiment with 0.5, 50 and 250 Hz all rates were correct within 0.3% of the intended rate.
2016-12-25 21:30:31 +01:00
Lorenz Meier
d6ef137e59
VTOL att control: Fix status reporting
...
The transition state reporting was inverted because of a typo. Code analysis suggests this will only have an effect in manual transition.
2016-12-25 18:15:51 +01:00
Lorenz Meier
1141079a3b
Fix Simulator: Set correct rotor count for standard VTOL
...
The rotor count was incorrect which meant that control surfaces like elevons were scaled incorrectly. This was the main reason for really bad SITL performance
2016-12-25 18:15:51 +01:00
Lorenz Meier
b7f5a33c90
EKF2: Code style and efficiency
...
Its sufficient to use sqrtf() with floating point resolution and its better to use the Matrix library call for local and global position yaw
2016-12-25 18:15:51 +01:00
Lorenz Meier
737e18dccb
MAVLink app: Fix VTOL reporting and prevent mission reached spam
...
The VTOL status reporting and the mission status reporting were both suboptimal. VTOL was too slow, mission reporting too fast
2016-12-25 18:15:51 +01:00
James Goppert
c28cd76e5f
LPE fault relaxation and sitl fix ( #6146 )
...
* Set LPE FUSE for standard iris sitl config.
* Relax fault detection handling.
* Always correct lidar.
2016-12-23 15:08:37 -05:00
Lorenz Meier
661fda2b2a
MAVLink app: Acknowledge all commands that are not sent off to other components
2016-12-23 17:40:11 +01:00
Lorenz Meier
5d7d26531c
Commander: Acknowledge pair commands
2016-12-23 17:40:11 +01:00
Dennis Mannhart
ccc909f346
uORBFastRpcChannel: fixed include for snapdragon
2016-12-23 10:43:06 +01:00
Lorenz Meier
e6cea82b21
Better default values for UAVCAN params
2016-12-22 15:33:21 +01:00
Lorenz Meier
54ab5cde2f
Fix unused variable in LPE
2016-12-21 22:28:42 +01:00
Beat Küng
db2efa79da
fix commander: remove unused variable rtl_on
2016-12-21 14:09:41 +01:00
Julian Oes
8aede5d32b
mavlink: add 500000 baudrate
2016-12-21 11:44:47 +01:00
Lorenz Meier
9ae2376d1c
Commander: Indicate overload on the ground only if not transient. Adjust max CPU load to 80%. Indicate overload in air immediatley
2016-12-21 11:44:47 +01:00
Lorenz Meier
6b9d95648f
MAVLink app: Fix flow control handling flags
2016-12-21 11:44:47 +01:00
Beat Küng
7d8553ecd8
uavcan: remove assert() for git name check
2016-12-21 11:35:10 +01:00
Beat Küng
5e9bdff205
version: remove FW_GIT & FW_BUILD_URI, use the correct methods instead
...
This is cleanup after rebasing
2016-12-21 11:35:10 +01:00
Beat Küng
3d0f1e4a4f
logger: use better variable names for chip name description
2016-12-21 11:35:10 +01:00
Beat Küng
5ad2595f43
logger: add more version info & uuid
...
in particular:
- SW release version (in addition to the git hash)
- OS version (tag + git hash if exists)
- mcu version & revision & UUID
- toolchain version
The uuid can be disabled via parameter, it's enabled by default.
2016-12-21 11:35:10 +01:00
Beat Küng
41dc34204c
version cleanup: move all version information into version.c and use a common API
...
The provided versioning information is the same, except for some additions,
like OS version (which still need to be implemented on NuttX).
2016-12-21 11:35:10 +01:00
Beat Küng
08dc3decb1
mavlink: avoid sending uninitialized data
...
_global_pos_sub->update(&_global_pos_time, &global_pos); could return
false and in that case global_pos was not set but still accessed.
This is prevented by checking if timestamp == 0.
2016-12-21 11:35:10 +01:00
Beat Küng
c662113527
board_name.c: remove the file and HW_ARCH macro, use px4_board_name() instead
...
boards define BOARD_NAME, so board_name() is not necessary. HW_ARCH was
just a wrapper around board_name().
This patch simplifies to having only one common method px4_board_name().
2016-12-21 11:35:10 +01:00
Mark Whitehorn
8962eaa944
add new asymmetric airframe for Spedix S250AQ
2016-12-21 11:00:29 +01:00
James Goppert
6ff85fb927
LPE land bug fix and switch to fusion bit mask.
2016-12-21 08:43:18 +01:00
Matthias Grob
eda7848e16
mc_pos_control small refactoring while studying
2016-12-21 08:40:16 +01:00
David Sidrane
cc0a4248f8
PX4 System changes for new Boards
2016-12-21 08:34:22 +01:00
David Sidrane
f5a0c04ae8
Upstream NuttX irq{save|restor} -> {enter/leave}_critical_section
2016-12-21 08:34:22 +01:00
David Sidrane
3eee469fbc
Display the irq stack usage on the for the init thread (pid = 0)
2016-12-21 08:34:22 +01:00
David Sidrane
1781801151
Scope irq_state to function using it
2016-12-21 08:34:22 +01:00
David Sidrane
056bd5527d
New NuttX debug API
2016-12-21 08:34:21 +01:00
David Sidrane
5661370944
Changed to Upstream NuttX Instrumentation changes
2016-12-21 08:34:21 +01:00
David Sidrane
b7d7b567c0
Changes to px4iofirmware for Upstrem Nuttx c++ init and logging changes
2016-12-21 08:34:21 +01:00
David Sidrane
ff0e810b55
Nuttx changed CONFIG_DRAM_SIZE to CONFIG_RAM_SIZE
2016-12-21 08:34:21 +01:00
David Sidrane
3ed0bfe0d8
Nuttx added FIONSPACE and fixed FIONWRITE: had retuned the space and should have returned enqueued count
2016-12-21 08:34:21 +01:00
David Sidrane
81d00e730a
Portable fsync call
2016-12-21 08:34:21 +01:00
David Sidrane
dc8c6ea5e5
White space fixes
2016-12-21 08:34:21 +01:00
David Sidrane
c9f10107c0
Nuttx Upgrade:Adds sem_setprotocol
2016-12-21 08:34:21 +01:00
David Sidrane
24e8c213ee
Adding px4esc-v1 board and bootloader
2016-12-21 08:34:21 +01:00
David Sidrane
bba8371b0f
Adding px4cannode-v1 board and bootloader
2016-12-21 08:34:21 +01:00
David Sidrane
d09cd77777
Adding hardfault logging application
2016-12-21 08:34:20 +01:00
David Sidrane
0177e250f4
STM32 Serial Number location is defined in NuttX
2016-12-21 08:34:20 +01:00
David Sidrane
fd7d399958
Upstream Nuttx restructured directories use micro_hal
2016-12-21 08:34:20 +01:00
David Sidrane
d6098c8226
Adding Nuttx Build infrastructure
2016-12-21 08:34:20 +01:00
David Sidrane
cb9517486d
Upgrade to uavcan to support Nuttx 7.18+ {enter/leave}_critical_section
2016-12-21 08:34:20 +01:00
Matthias Grob
f9da41fcf2
fixed rebase errors in arm switch implementation
2016-12-20 09:46:36 +01:00