Commit Graph

240 Commits

Author SHA1 Message Date
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
Don Gagne 08123df83a Remove PX4_PARAM_DEFINE_* usage to get better meta data 2015-04-21 12:32:01 -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
Mark Charlebois bba26c3430 Linux: enabled commander module
The commander module now compiles for Linux.

state_machine_helper_linux.cpp iterates over the virtual devices vs
all devices under /dev as per NuttX when disabling publishing.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:37:50 -07:00
Mark Charlebois ec1b77c9e1 Linux: GCC static data is 16byte aligned, messes up param
GCC 4.8 and higher implement 16 byte static data alignment on 64-bit.
This means that the 24-byte param_info_s variables are 16 byte aligned
by GCC and that messes up the assumption that the address of the second
parameter is at &param[0]+sizeof(param[0]).
When compiled with clang it is true, with gcc is is not true.

See https://llvm.org/bugs/show_bug.cgi?format=multiple&id=18006

The fix is needed for GCC >=4.8 only. Clang works fine without this.

Added __attribute__((aligned(16))) to first member of param_info_s.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:35:48 -07:00
Mark Charlebois 2cd44a24ea Linux: Added linker script support for param and added mc_att_control
Added linker script to resolve __param_start and __param_end.

Added mc_att_control to list of supported builtins.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:16:26 -07:00
Mark Charlebois 7b0783a070 Added MuORB based on virtual CDev implementation
uORB module now compiles and runs for Linux using the
virtual CDev implementation.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:18 -07:00
Mark Charlebois 5084a61f0e Abstractions to compile systemlib for Linux and Nuttx
Modified uint32_t casts of pointers to unsigned long for portability.
It otherwise breaks on x86_64.

Added _PX4_IOC to handle the conflice between _IOC on Linux and NuttX.

Removed use of px4::ok() because it cannot be used in a thread based
implementation. Changed to use px4::AppMgr which uses ok() on ROS.

Removed up_cxxinitialize.c from Linux build.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -07:00
Mark Charlebois e3f152b5c1 Changed main_t to px4_main_t in systemlib.h
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:55:41 -07:00
Mark Charlebois 9758112e31 Use px4_config.h instead of nuttx/config.h
Modified code to use OS independent header file for config settings.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:55:41 -07:00
Lorenz Meier 5264eb23b4 Revert "Removed usage of PX4_PARAM_DEFINE_* macros"
This reverts commit 5fe7f76691.
2015-04-18 11:39:13 +02:00
Don Gagne 5fe7f76691 Removed usage of PX4_PARAM_DEFINE_* macros
This way the meta data parser can pick up default values. There was no
usage of the default value defines in any of the code.
2015-04-18 11:13:04 +02:00
Roman Bapst 555e96a37a fixed publication of mixer limit flags 2015-04-10 20:26:38 +02:00
Lorenz Meier d6f7c9b8b4 systemlib: Implement active param list fully 2015-03-28 13:07:01 -07:00
Lorenz Meier fe12bffefa param subsystem: Only send the instantiated parameters via telemetry 2015-03-28 13:07:01 -07:00
Daniel Agar 8aae66b893 trivial code style cleanup round 2 2015-03-27 23:38:58 -04:00
Anton Babushkin 95be7c2289 Fix limiting in mc mixer 2015-03-21 16:12:33 +01:00
Daniel Agar c2abb0f82a fix code style if trivial one line difference 2015-03-19 23:49:36 +01:00
Lorenz Meier daab64f9e4 Param system: Introduce global parameter version param 2015-03-08 19:17:56 +01:00
Lorenz Meier aef041e032 Syslib: Add support for setting parameters without global notification 2015-02-15 19:52:01 +01:00
Andreas Antener a7580a1eae added actual tests and fixed reset-exclude funtction 2015-02-10 08:39:46 +01:00
Andreas Antener 5cccc01cd4 added unit test directive to switch out parameter storage 2015-02-10 08:39:46 +01:00
Andreas Antener 13039f9e69 hard-code parameter array for verification 2015-02-10 08:39:46 +01:00
Andreas Antener a73a095c1d added test and stub 2015-02-10 08:39:46 +01:00
Andreas Antener f8ff5b617b updated comparison 2015-02-10 08:39:46 +01:00
Andreas Antener f2c1d6d66d implemented reset excludes in systemcmd "param", updated autoconfig parameter doc 2015-02-10 08:39:46 +01:00
Andreas Antener 7c63be7450 implemented reset with excludes 2015-02-10 08:38:13 +01:00
Lorenz Meier f7b79bfaf2 Param interface: Allow to check return value of param_reset. Reset test param prior to running test 2015-02-08 16:39:37 +01:00
Trent Lukaczyk 531eaa2314 Merge remote-tracking branch 'upstream/master' 2015-02-05 20:19:04 -08:00
Trent Lukaczyk af8e76ee7e tricopter initial commit 2015-02-05 20:18:00 -08:00
Lorenz Meier dc46736ead Merge ROS into master 2015-02-03 20:07:55 +01:00
Lorenz Meier 5a12688ebe Make mcu version header C++ safe 2015-02-03 08:55:16 +01:00
Lorenz Meier d441d38677 Merged master into ros 2015-02-02 21:21:51 +01:00
Lorenz Meier e6a7dc7a3f Fixed unit test usage of visibility macros 2015-02-02 21:03:19 +01:00
Thomas Gubler 2728889f78 Merge remote-tracking branch 'upstream/master' into ros_messagelayer_merge_attctlposctl 2015-01-28 16:29:14 +01:00
hauptmech 5444972347 Add call to access the mcu unique id. Expose via the 'ver' command.
This is prep for verifying calibration parameters against the hardware they were gathered on.
2015-01-28 10:20:19 +01:00
Thomas Gubler dcdde8ea88 Merge remote-tracking branch 'upstream/master' into ros_messagelayer_merge
Conflicts:
	src/modules/attitude_estimator_ekf/attitude_estimator_ekf_main.cpp
	src/modules/uORB/topics/vehicle_attitude.h
2015-01-21 14:41:03 +01:00
Lorenz Meier 76e84e017f VA_ARGS fixes from coverity 2015-01-21 08:58:47 +01:00
Thomas Gubler 96db9e8188 Merge remote-tracking branch 'upstream/master' into ros
Conflicts:
	src/platforms/px4_middleware.h
2015-01-15 12:42:28 +01:00
Lorenz Meier 6203c73ccc Perf counter fixes 2015-01-11 11:03:56 +01:00
Lorenz Meier 172dbf3707 Performance counters: Add option to set otherwise estimated time interval 2015-01-11 11:03:56 +01:00
Lorenz Meier a3bce71b97 Performance counters: Estimate RMS for elapsed counters. Allow to use a perf counter across processes, deal with overruns and other resulting inconsistencies from cross-process use. 2015-01-11 11:03:55 +01:00
Thomas Gubler b2366aaa22 Merge remote-tracking branch 'upstream/master' into ros 2015-01-09 08:07:00 +01:00
Anton Matosov 7d528330d5 Implemented SK450 DeadCat frame support
Implemented the way to specify motor output scale which is required for SK450 DeadCat as it has asymetrical arms (front arms are longer than back ones)
2015-01-08 13:58:46 +02:00
Thomas Gubler 94b9251a69 Merge remote-tracking branch 'upstream/multitablespython3' into dev_ros 2015-01-06 10:34:53 +01:00
Thomas Gubler a42febc993 remove output of multi_tables script 2015-01-06 10:29:36 +01:00
Thomas Gubler 0d571458f5 improve multi_tables makefile 2015-01-06 10:27:40 +01:00
Thomas Gubler cd11c4d81c make multi_tables script python3 compatible
The script still works with python2, I also added a file ending
2015-01-06 10:26:17 +01:00
Thomas Gubler 462a5fae90 Merge remote-tracking branch 'upstream/master' into dev_ros 2015-01-06 08:56:39 +01:00
Anton Matosov fbf51360b3 Merged with px4/multitables
Conflicts:
	src/modules/systemlib/mixer/multi_tables
2015-01-06 00:30:23 +02:00