Commit Graph

21494 Commits

Author SHA1 Message Date
Lorenz Meier
bbc5186e2a GPS driver: Improve GPS "fake" mode init and code style 2017-02-17 22:28:55 +01:00
Lorenz Meier
495e16d510 Uploader script: Fix Python 2 issue and timing corner case on Mac OS, both in a robust fashion 2017-02-17 22:28:14 +01:00
James Goppert
7659402fdb WIP: valgrind runtime analysis and fixes (#6521)
* Fix several valgrind identified mem leaks

* Added callgrind target.

* px4_posix_tasks use nullptr
2017-02-17 12:36:52 -05:00
Beat Küng
a0f00f84f3 param show command: add -c to show only changed, do case insensitive comparison 2017-02-17 11:27:08 +01:00
Beat Küng
a4050db766 param: comment what the lock is needed for 2017-02-17 11:27:08 +01:00
Beat Küng
b4b5c987a6 unittests: add setup code to call param_init() 2017-02-17 11:27:08 +01:00
Beat Küng
df8f0da70c param & param_shmem: enable locking
We need to protect access to the param_values array. This is dynamically
allocated and resized (utarray_reserve() calls realloc). If some thread
was iterating the array while another was resizing the array, the first one
would iterate on a freed array, thus accessing invalid memory.

On NuttX this could lead to hardfaults in rare conditions.

Unfortunately we need to initialize the semaphore on startup, by calling
sem_init(). This adds a param_init() method called by every board/config
that uses the params (at least I think I've found all of them)
2017-02-17 11:27:08 +01:00
Beat Küng
fa3a6b890c param & flashparam param_export: use value directly instead of calling param_get
This call is not needed, and will avoid deadlocks when locking is enabled.
2017-02-17 11:27:08 +01:00
Beat Küng
42967df63f param command: use param_* calls even if flash-based params are enabled
This will ensure proper locking.
2017-02-17 11:27:08 +01:00
Beat Küng
68bee1b847 flashparams: remove the locking stubs
locking will be done in the params module
2017-02-17 11:27:08 +01:00
James Goppert
85f62f5da0 Fix param scoping to use cmake for parsing. 2017-02-17 11:26:46 +01:00
Lorenz Meier
44c8857354 MAVLink app: Update incorrect comment 2017-02-17 10:00:11 +01:00
Phillip Kocmoud
e4afce8b1b Add the 20602 start command for the AUAV x2.1 to the ROMFS rc.sensors file 2017-02-17 09:18:22 +01:00
Phillip Kocmoud
36e2bc8ae7 Fix AUAV X2.1 Board Config for 20608
These changes were required to fix support for the ICM-20608 after this commit:

f746141afe

This has been tested!
2017-02-17 09:17:41 +01:00
klopezal
6baf6fc666 Board config : correct GPIO init for px4fmu-v4pro 2017-02-17 09:16:23 +01:00
Michael Schaeuble
0d61e22d9b mavlink: Buffer UAVCAN parameter re-requests
We buffer the mavlink messages and don't forward them directly
via uORB. This solves an issue where many requests are dropped and
QGC does not start properly in combination with UAVCAN devices.
2017-02-17 09:15:56 +01:00
José Roberto de Souza
172e218dbd Commander: Use leds to show PX4 status on AeroFC 2017-02-17 09:13:33 +01:00
José Roberto de Souza
aa8fa2ae05 drivers: AeroFC: Add more leds
Also change the initial state of the leds to off.
2017-02-17 09:13:33 +01:00
José Roberto de Souza
83a387a553 drivers: Led: Do not initialize twice 2017-02-17 09:13:33 +01:00
Lorenz Meier
d66d7a4932 Navigator: Fix code style 2017-02-17 09:13:13 +01:00
Lorenz Meier
798a7ed8cd Commander: Fall back to GPS enabled modes once GPS becomes available 2017-02-17 09:13:13 +01:00
Lorenz Meier
070a73ad63 Commander: Switch into right mode in various corner conditions
* If you move in LAND, AUTO or HOLD the sticks the system will give control back to the pilot
  * If you do not connect any RC the system will default to HOLD and will allow you tablet control
  * If you gain position lock for the first time the system will re-evaluate the mode switch (so if you dropped down to alt hold it will now go into position)
  * If the system breaches the Geofence it will now always drop back to POSCTRL if the sticks are moved
2017-02-17 09:13:13 +01:00
Lorenz Meier
c8fb21e73e Navigator: Enforce a minimum altitude for RTL 2017-02-17 09:13:13 +01:00
Paul Riseborough
72633ad4c8 events: update documentation for polyfit algorithm 2017-02-16 22:17:47 +01:00
Lorenz Meier
7bd8514697 PWM out sim: Do not obey hardware lockdown flag 2017-02-16 12:34:51 +01:00
Kabir Mohammed
ea5caf258f mavlink : fix vision debug stream attitude update 2017-02-16 09:53:15 +01:00
Lucas De Marchi
47411b052c aerofc: test 115200 and 460800 baud rates
We still want to be able to program the flight stack if the user changes
the baudrate of that UART.
2017-02-16 09:35:23 +01:00
Lucas De Marchi
f9795ccbab px_uploader: support multiple baud rates
We may need to change the baud rate from one version to the other.
Allowing the script to try multiple baud rates makes the transition a
little bit less painful.

This also fixes a bug in which it would go the next port before trying
to identify the board after asking it to reboot.
2017-02-16 09:35:23 +01:00
Lucas De Marchi
6121119631 ROMFS: allow to use 460800 baudrate for onboard mode 2017-02-16 09:35:23 +01:00
Siddharth Bharat Purohit
ab465744f1 temp_cal: add math explanation for polynomil fit algo 2017-02-16 09:34:19 +01:00
yaoling
0e34de08fb Update send_event.cpp
do same as command module
2017-02-16 09:33:16 +01:00
Daniel Agar
9bc5da6d2d update matrix and fix test_matrix (#6524) 2017-02-16 00:31:06 -05:00
aivian
7a77e27a79 fixed wing offboard attitude setpoint fix (#6112) 2017-02-15 23:51:50 -05:00
Daniel Agar
a84dc2e3d2 clang-tidy disable cert-msc50-cpp rand() check 2017-02-15 22:29:24 -05:00
Daniel Agar
fd11c3f7b1 clang-tidy disable cert-msc30-c rand() check 2017-02-15 22:29:24 -05:00
Daniel Agar
1bbca3bf1d test_dataman add to SITL with minor updates 2017-02-15 22:29:24 -05:00
Julian Oes
9369262e63 navigator: allow more mission items
Since using more than 256 mission items has been tested and fixed, the
limit can now be raised to more than 256 (but smaller than UINT16_MAX).

Since the whole file is allocated in advance on NuttX, the limit there
is (arbitrarily) set to 2000. For POSIX archs such as SITL, we don't
really need to constrain ourselves any longer.
2017-02-15 22:29:24 -05:00
Julian Oes
8c1e85a65f dataman: don't wrap around at 256
The dataman started overwriting contents after 256 items because the
item index were only uint8_t. This fix allows for more than 256
waypoints.
2017-02-15 22:29:24 -05:00
Lorenz Meier
081c40c6fa Commander: Fix level cal command 2017-02-15 22:16:20 +01:00
Kabir Mohammed
e63747ec2f lpe : changes to allow hybrid GPS-denied navigation 2017-02-15 21:48:33 +01:00
Kabir Mohammed
0f91378eeb lpe : use vision timestamps to compute measurement delay 2017-02-15 21:48:33 +01:00
Kabir Mohammed
85df00d2da lpe : use per-measurement variance for vision 2017-02-15 21:48:33 +01:00
Kabir Mohammed
48e7b94162 mavlink : track time offset faster 2017-02-15 21:48:33 +01:00
Kabir Mohammed
d831c262d0 mavlink : fix code style 2017-02-15 21:48:33 +01:00
Kabir Mohammed
444005f290 logger : Log new vision topics 2017-02-15 21:48:33 +01:00
Kabir Mohammed
3653d64b31 att_ekf : move to new vision topics 2017-02-15 21:48:33 +01:00
Kabir Mohammed
c65b8fffd3 sdlog2 : log new vision topic 2017-02-15 21:48:33 +01:00
Kabir Mohammed
a158d7f124 att_q : move to new vision attitude topic 2017-02-15 21:48:33 +01:00
Kabir Mohammed
bdcc626f29 mavlink : correct stream name for vision message 2017-02-15 21:48:33 +01:00
Kabir Mohammed
f43ee3a0f5 mavlink : use new vision estimate topic and fix stream name 2017-02-15 21:48:33 +01:00