Commit Graph

850 Commits

Author SHA1 Message Date
Lorenz Meier d906fb8f31 Merged master into linux 2015-05-19 21:00:02 +02:00
Lorenz Meier d9d25363b4 mavlink FTP: Remove workaround after QGC side fix 2015-05-19 07:08:19 +02:00
Lorenz Meier e5fad077df Merge master into linux 2015-05-18 23:28:57 +02:00
Lorenz Meier 83fdb9931a commander / mavlink: Add battery status to output BATTERY_STATUS MAVLink message 2015-05-17 17:44:51 +02:00
Erik Jähne fcb1bb2bb6 FIX HIL GPS conversion 2015-05-17 14:50:17 +02:00
Lorenz Meier 3032afb803 mavlink FTP: Fix build system error for unit test 2015-05-17 10:48:37 +02:00
Mark Charlebois 36f5d47ed9 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	src/modules/commander/gyro_calibration.cpp
	src/modules/mavlink/mavlink_ftp.cpp
2015-05-16 15:04:38 -07:00
Lorenz Meier 2432418751 FTP: Better error reporting, ignore hidden directories 2015-05-16 11:37:41 +02:00
Lorenz Meier 97b8e7a20e mavlink FTP: Speed up transfers by longer bursts 2015-05-15 21:14:40 +02:00
Lorenz Meier dabcf63c50 mavlink FTP: Drop rate to realistic value 2015-05-15 11:16:48 +02:00
Lorenz Meier f154f6e5e7 MAVLink transmission: Allow faster overall transmissions. 2015-05-15 11:16:11 +02:00
Lorenz Meier 4fb91f47cd Fix mavlink FTP list stack overflow. Fixes #2180, not flight-critical 2015-05-15 11:15:04 +02:00
Lorenz Meier fa8dc57236 mavlink app: Only send params if the system has booted. 2015-05-15 08:31:45 +02:00
Nate Weibley b4e7b041ca Fix potential null pointer deref if Mavlink start fails before task_main loop
LL_APPEND is called just before the loop spins up but various error conditions can cause the task to exit before then.
When that happens Mavlink::start_helper calls delete on the instance which tries to prune it from the global list.
If this is the first Mavlink instance to attempt starting the list head is null and we hardfault in the Mavlink dtor.

Only call LL_DELETE after checking the list head for a null pointer.
2015-05-13 11:33:11 -04:00
Lorenz Meier 66b87ac761 Fix state-level HIL. Reported by @s3erjaeh 2015-05-13 16:04:33 +02:00
Mark Charlebois 2002d4e774 POSIX: disable UART in mavlink
Most of the current POSIX builds will not use the UART and it
is just a unnecessary dependency to satisfy when running in a
test environment.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-07 10:07:18 -07:00
Thomas Gubler cc62033190 improve mavlink set_attitude_target handling
port #1920 to mavlink_receiver
fixes #1921
2015-05-07 16:44:54 +02:00
Mark Charlebois db52227409 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	src/modules/commander/accelerometer_calibration.cpp
2015-05-06 15:51:39 -07:00
Lorenz Meier 0d1d92484b MAVLink app: Parameter docs and new test parameter 2015-05-06 19:39:17 +02:00
Mark Charlebois 12a25e4b63 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	makefiles/firmware.mk
	src/modules/commander/module.mk
	src/modules/mavlink/mavlink_ftp.h
	src/modules/mavlink/mavlink_tests/module.mk
2015-05-04 16:36:59 -07:00
Don Gagne 46da294ffb New bust mode ftp file download 2015-05-03 19:26:54 -07:00
Mark Charlebois b408983d4c mavlink: added back MODULE_COMMAND
The MODULE_COMMAND was inadvertently removed during merge of master

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-28 17:27:14 -07:00
Mark Charlebois 190814bc97 Merge remote-tracking branch 'upstream/master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	src/drivers/rgbled/rgbled.cpp
	src/modules/commander/PreflightCheck.cpp
	src/modules/commander/airspeed_calibration.cpp
	src/modules/commander/calibration_routines.cpp
	src/modules/commander/gyro_calibration.cpp
	src/modules/commander/mag_calibration.cpp
	src/modules/mc_att_control/mc_att_control_main.cpp
2015-04-28 11:48:26 -07:00
Lorenz Meier 965e7cce03 mavlink app: Robustify param handling 2015-04-27 09:03:49 +02:00
Lorenz Meier 1d283bf3c1 MAVLink app: Fix usage of static struct, make streams list const 2015-04-26 14:33:57 +02:00
Lorenz Meier 0ebf626632 MAVLink app: Allow higher max data rate 2015-04-26 14:24:01 +02:00
Lorenz Meier 76ce611e84 MAVLink app: Use right lookup function 2015-04-26 14:02:06 +02:00
Lorenz Meier af22c49497 MAVLink app: send correct value when not estimating battery charge level 2015-04-25 09:45:16 +02:00
Mark Charlebois d913ec8dc9 Changed device::px4_device_handle_t to device::file_t
This change allowed the _posix.cpp file changes to be merged
back into the original files.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-24 17:49:35 -07:00
Mark Charlebois 20d35e33da Platform header file cleanup and consolidation
Removed obsolete porting cruft from px4_XXX.h files and merged the
POSIX changes in PreflightCheck_posix.cpp back to PreflightCheck.cpp

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-24 11:45:14 -07:00
Mark Charlebois 58a73a5392 Fixed list of SRCS in mavlink_tests/module.mk
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-24 01:56:09 -07:00
Mark Charlebois a1332e699c QuRT and POSIX changes - part 5
Last part of the main QuRT related changes

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-24 01:39:25 -07:00
Mark Charlebois c802beb3d7 QuRT and POSIX changes - part 3
More staged changes to support QuRT and related POSIX changes

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-24 01:13:08 -07:00
Mark Charlebois e764c68d0a mavlink: consolidated nuttx and posix changes
Removed nuttx and posix specific files for mavlink_ftp and mavlink_receiver.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-22 11:08:19 -07:00
Mark Charlebois d63d2f7a61 Posix: removed obsolete file mavlink_main_posix.h
The changes for __PX4_POSIX are in mavlink_main.h

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-22 10:41:32 -07:00
Mark Charlebois f63ab3d5e3 Merge branch 'master' into linux
Signed-off-by: Mark Charlebois <charlebm@gmail.com>

Conflicts:
	makefiles/firmware.mk
2015-04-22 10:38:46 -07:00
Mark Charlebois 8e500f543e Combined nuttx and posix mavlink_main headers
Removed the separate implementations of mavlink_main_X.h

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-22 09:39:02 -07:00
Mark Charlebois f3b5076d70 Linux to posix conversion
Changed "linux" target to "posix". Most of the changes are shared with
QuRT and with OSX. The Linux specific parts are in for i2c which uses
<linux/i2c.h> and <linux/i2c-dev.h>.

There is also a check for __PX4_LINUX in mavlink for a tty ioctl that is
not supported.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-21 09:53:09 -07:00
Lorenz Meier 8279de5a0b MAVLink app: Cleanup RC channel messages / handling 2015-04-21 06:58:03 +02:00
Mark Charlebois 260bbcb64a Nuttx: fixups after rebase on Linux
Seems that mavlink_receiver_linux.cpp inherited the history
from mavlink_receiver.cpp so updates went to it vs mavlink_receiver_nuttx.cpp

Two module.mk files used ifdef instead of ifeq.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 12:57:02 -07:00
Mark Charlebois 36d17a061e Linux: Update mavlink files to track nuttx upstream
Modified LInux impl to track changes to nuttx impl.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 12:09:54 -07:00
Mark Charlebois eab32572f4 Linux: Added thread safe getopt
The getopt command uses global variables and is not thread safe.

Created a minimal px4_getopt version that supports options with
or without an arg, and random placement of options on the command line.

This version modifies the order of the args in argv as does the
POSIX version of getopt.

This assumes that argv[0] is the program name. Nuttx may not support
that properly in task_spawn.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:35:47 -07:00
Mark Charlebois ccd18929fc Linux: changed CDev to VDev for virtual device implementation
To avoid confusion when a real device and a virtual device is
being used, changed CDev to VDev for Linux.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:34:12 -07:00
Mark Charlebois 3ab76caa78 Linux: Changed non-fatal px4_errx to warnx
px4_errx kills the process, so if possible we want to end the thread
but not the process. Using warnx and return exits gracefully.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:17:21 -07:00
Mark Charlebois 526b0e68eb Linux: modified shell to not show _main suffix
The builtin commands all have _main suffix by convention so
no need to show _main. Also nsh calls the commmands without the
_main suffix.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:15:13 -07:00
Mark Charlebois 1f84c348fc fix for segv if topic has not been published
If the topic has not been published, orb_copy returns a
negative number which causes update() to memset the data
contents to zero.

In some instances data is a null pointer. This causes a
segment violation crash.

Added a check for data != 0

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:15:12 -07:00
Mark Charlebois 1b4b8bb856 Linux: in printf cast uint64_t to unsigned long long
When printing a uint64_t type using %llu, this works on a 32bit
system, but on a 64bit machine uint64_t is an unsigned long.

The compiler complains about unmatching types.

The time times in PX4 should likely have been unsigned long long
and not uint64_t as that type changes per architecture.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:15:12 -07:00
Mark Charlebois 62eb403e4d Linus: print format fixes to build with clang on IFC6410
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:15:12 -07:00
Mark Charlebois 90818363eb Linux: fix for undefined BO in mavlink_main_linux.cpp
if termios.h is included before mathlib.h then BO is undefined.
Since mathlib.h is not needed it was removed but I still don't
know why this error occurs.

Also added -lrt to link flags for clock_gettime

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:13:24 -07:00
Mark Charlebois 2feeecdab1 Linux: Added config and stubs to compile I2C device for Linux
Not yet functional. Full implementation will provide an IOCTL interface to
do bi-directional transfer. will model the interface after Linux.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:13:24 -07:00