Mark Charlebois
2abfb7a5be
Linux: added queue files for dataman support
...
The dataman module now works under linux using /tmp/dataman as the
file path. Two files from NuttX were added to the Linux impl for
single linked queue handling.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:18 -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
f3596e555b
Added
...
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -07:00
Mark Charlebois
a25ae71f99
Linux: support ld.gold
...
The -Ur option is not supported in gold
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -07:00
Mark Charlebois
aeb65702a2
Fixed support for clang 3.5
...
"clang-3.5 -dumpversion" returns 4.2.1 as the GCC version.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -07:00
Mark Charlebois
a68f025ff9
Added support for other clang on Ubuntu 12.04
...
A Ubuntu 12.04 compatible version of clang-3.4.1 can be downloaded from
http://llvm.org/releases/3.4.1/clang+llvm-3.4.1-x86_64-unknown-ubuntu12.04.tar.xz
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -07:00
Mark Charlebois
672ba1a43b
Linux: support gcc-4.6 and c++0x
...
GCC 4.6 is too old for -std=c++11 but it supports -std=c++0x
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -07:00
Mark Charlebois
35e00f0ba1
Added missing _PX4_IOC substitutions
...
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:00:16 -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
89e1b454af
Linux: added support for gcc 4.6
...
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:57:01 -07:00
Mark Charlebois
566c3ed3c3
Linux: Autodetect clang-3.5 toolchain
...
Use clang-3.5 if found, otherwise gcc
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:57:01 -07:00
Mark Charlebois
62f8bd6679
Linux build support for some libs
...
The following libs can now be built under Linux:
lib/mathlib
lib/geo
lib/geo_lookup
The constants used for ROS are now shared with Linux in
px4_defines.h
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:57:01 -07:00
Mark Charlebois
51a71d54c6
checksubmodules target needed for Linux build
...
Moved checksubmodules target back to Makefile.
NuttX download still done for Linux as it would require
too much surgery to remove it.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:46:44 -07:00
Mark Charlebois
520459062d
Initial Linux support including execution shell
...
Uncomment the following line in setup.mk and comment out the line above
to enable the Linux build.
export PX4_TARGET_OS = linux
The build uses the clang compiler by default. The final bundled executable
is mainapp located in:
Build/linux_default.build/mainapp
When you run mainapp it will provide a list of the built-in apps. You can
type in the commands to run such as:
hello_main start
Because the Linux build is threaded and does not support tasks or processes,
it cannot call errx, exit() _exit(), etc. It also requires unique scoped
variables to test if a thread is running or if an application should exit.
The px4::AppMgr class was added in px4_app.h for this purpose. The
hello sample app demonstrates how this is used.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:46:43 -07:00
Mark Charlebois
838e9fc769
Refactoring for multiplatform support
...
Moved the NuttX specific board files to makefiles/nuttx and added
a makfiles/linux directory with sample config and board files.
Created a makefiles/toolchain_native.mk file for building for Linux
with the native system compiler. GCC or clang can be used by setting
a flag in the file.
The Linux build creates an archive file and will build the tasks as
threads. Other code changes are required to support both task based
and thread based builds.
The NuttX source should not be required for the Linux build. The
target OS (NuttX or Linux) is selected by commenting out the desired
line in setup.mk
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:46:43 -07:00
Johan Jansen
a6c57afabd
Make: Remove deprecated preflight check
2015-04-20 09:14:13 +02:00
Johan Jansen
ba25f7a290
Make: Disable build of preflight check (pending removal)
2015-04-20 09:14:13 +02:00
Lorenz Meier
f8cf495494
Revert "Added ability for board specific meta data generation"
...
This reverts commit 9ac350a7d1
.
2015-04-18 11:38:23 +02:00
Don Gagne
9ac350a7d1
Added ability for board specific meta data generation
...
Use new @board meta data attribute for board specific ifdef support
2015-04-18 11:14:12 +02:00
Daniel Agar
207b57869d
only define GIT_VERSION where it's used
...
-when the git revision is passed to every file as a define it causes
unnecessary ccache cache misses
2015-04-18 01:25:54 -04:00
Lorenz Meier
3ee9b441c6
Add STM32F4 discovery config.
2015-04-16 22:51:08 +02:00
Lorenz Meier
49834b11cb
Merge pull request #1938 from Grawp/master
...
Fix generating $3_len in BIN_TO_OBJ makefile function
2015-03-21 08:10:32 +01:00
Michal Ulianko
631e518c45
BIN_TO_OBJ: Change NM radix back to hex so multiple leading zeros in NM output won't generate octal constant in C.
2015-03-21 00:31:52 +01:00
Michal Ulianko
354809bff4
BIN_TO_OBJ: Switch egrep and cut to $(GREP). Use posix format and decimal radix with $(NM).
2015-03-20 23:22:42 +01:00
Lorenz Meier
6b494ee0f0
Remove boardinfo ccommand
2015-03-20 09:43:45 +01:00
Michal Ulianko
c5ae02deda
Fix generating $3_len in BIN_TO_OBJ makefile function
2015-03-19 19:50:05 +01:00
Lorenz Meier
6aba6a4f88
FMUv1: Disabled RAM-hogging apps
2015-03-07 14:16:46 +01:00
Anton Matosov
72274062c1
Renamed servo_gimbal to simply 'gimbal' as HW is behind the scene and doesn't really matter here
2015-03-06 18:57:37 -08:00
Lorenz Meier
8a6698b6e6
drivers/servo_gimbal: Added servo gimbal
2015-03-06 18:57:37 -08:00
Randy Mackay
9a3ea61569
build: add oreoled to px4fmu-v2_default
2015-02-25 15:10:11 +01:00
Lorenz Meier
e59aaa771c
Rover: Add simple steering controller.
2015-02-19 21:51:53 +01:00
James Goppert
d736311982
Added flow position estimator to default apps.
2015-02-11 21:11:23 -05:00
Lorenz Meier
769df2ff47
Toolchain: Add more compiler options, add note about -Wfloat-conversion warning (available with GCC 4.9). Needs work.
2015-02-08 12:17:35 +01:00
Lorenz Meier
d441d38677
Merged master into ros
2015-02-02 21:21:51 +01:00
Lorenz Meier
344e969428
FMUv2 test: Enable sensors module
2015-02-01 13:11:24 +01:00
Lorenz Meier
a3f577e642
FMUv2: Re-enable missing sensors
2015-02-01 13:11:05 +01:00
Lorenz Meier
f51dd7556e
FMUv1: Re-enable missing sensors
2015-02-01 13:10:45 +01:00
Thomas Gubler
0dc511a76b
remove unintended/leftover changes in fmu2 default makefile
2015-02-01 12:20:54 +01:00
Thomas Gubler
68e35ef0fd
remove unintended/leftover changes in test makefile
2015-02-01 12:19:42 +01:00
Thomas Gubler
84ff3c671d
Merge remote-tracking branch 'upstream/master' into ros_messagelayer_merge2_attctrl_posctrl
...
Conflicts:
src/drivers/px4fmu/fmu.cpp
2015-02-01 11:06:47 +01:00
Lorenz Meier
1cc4c808a8
Upgrade UAVCAN to multi pub/sub A API
2015-01-29 16:33:53 +01:00
Lorenz Meier
cc7a00b96e
Disable UAVCAN build until sensors use all new-style API and UAVCAN sensors base class can be reworked to use it consistently
2015-01-29 16:33:53 +01:00
Lorenz Meier
7932e2eda2
Add top to test build
2015-01-29 16:33:52 +01:00
David Sidrane
6606b56364
Updated NuttX submodule with memcpy fix, disabled run time stack checking and added modules back in
2015-01-29 04:49:39 -10:00
Thomas Gubler
1915537281
initial port of multiplatform version of mc_pos_control
2015-01-28 16:32:20 +01:00
Thomas Gubler
856b10cc1a
Revert "temporarily re-enable stack checking, disable some modules to make firmware fit"
...
This reverts commit 27b2701340
.
2015-01-28 16:29:25 +01:00
Thomas Gubler
2728889f78
Merge remote-tracking branch 'upstream/master' into ros_messagelayer_merge_attctlposctl
2015-01-28 16:29:14 +01:00
Thomas Gubler
27b2701340
temporarily re-enable stack checking, disable some modules to make firmware fit
2015-01-28 10:21:42 +01:00
Thomas Gubler
ee6395c502
enable mc att multiplatform in makefile
2015-01-25 13:38:47 +01:00
Simon Wilks
f5a1680fd6
Add landing detector for V1 boards as well.
2015-01-24 14:18:28 +01:00
Thomas Gubler
1ad6e00234
re-enable warnings/errors
2015-01-23 07:16:07 +01:00
Thomas Gubler
8c4fce3654
multiplatform: better publisher base class
2015-01-22 09:30:43 +01:00
Thomas Gubler
52a2a23cc7
Merge remote-tracking branch 'upstream/ros' into ros_messagelayer_merge
2015-01-21 15:50:54 +01:00
Thomas Gubler
1628999361
Revert "Fixes to make GCC 4.9 link"
...
This reverts commit 85b6907e1d
.
2015-01-21 15:44:15 +01:00
David Sidrane
517e1e8d48
Fixed permissions
2015-01-21 14:54:25 +01:00
David Sidrane
4b8feb03cf
Match the OS build's CONFIG_ARMV7M_STACKCHECK setting by using actual setting in the exported nuttx config.h file to control each board build setting of ENABLE_STACK_CHECKS in toolchain_gnu-arm-eabi.mk
2015-01-21 14:54:24 +01:00
Pavel Kirienko
f6786d0be9
Removing -ffixed-r10 when stack checks aren't enabled
2015-01-21 14:54:24 +01:00
Pavel Kirienko
2ebd7099de
Globally configurable stack checks, R10 is always fixed
2015-01-21 14:54:24 +01:00
Pavel Kirienko
4b1782174c
INSTRUMENTATIONDEFINES assignment made non-optional
2015-01-21 14:54:24 +01:00
Pavel Kirienko
1d13edcf92
Stack checks made optional: ENABLE_STACK_CHECKS
2015-01-21 14:54:24 +01:00
Pavel Kirienko
c2bc298409
Disable instrumentation for the uavcan module
2015-01-21 14:54:24 +01:00
Pavel Kirienko
569c3b7d37
Using -g3 flag instead of -g
2015-01-21 14:54:23 +01:00
Pavel Kirienko
d87bb4dfcb
Revert "Intrusive changes made for UAVCAN profiling. Will be reverted in the next commit (this one is needed to keep the changes in history)"
...
This reverts commit 4c301d9dcf180e39186fa6753c7a3d3215b3cfa7.
2015-01-21 14:54:23 +01:00
Pavel Kirienko
6bbacc4271
Intrusive changes made for UAVCAN profiling. Will be reverted in the next commit (this one is needed to keep the changes in history)
2015-01-21 14:54:23 +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
Thomas Gubler
cadcad6ffb
messagelayer prototype for nuttx
2015-01-21 14:27:01 +01:00
Thomas Gubler
7c3223b860
added a messageplayer prototype for ros
2015-01-21 14:26:22 +01:00
Lorenz Meier
d1eac3510b
DELETE DURING REBASE: Remove some apps to make space
2015-01-21 13:40:10 +01:00
Lorenz Meier
85b6907e1d
Fixes to make GCC 4.9 link
2015-01-21 13:39:36 +01:00
Lorenz Meier
f176147d2a
Allow GCC 4.9.3
2015-01-21 11:06:57 +01:00
Lorenz Meier
e8e4a3b5da
Allow GCC 4.9.3
2015-01-21 11:04:56 +01:00
Johan Jansen
9ea086bf2d
Astyle: Run astyle to fix code formatting
2015-01-15 14:37:51 +01:00
Johan Jansen
10a2dd8a34
LandDetector: Merged fixedwing and multicopter into one module handling both algorithms
2015-01-15 14:37:51 +01:00
Johan Jansen
642063c3b8
LandDetector: Added crude land detectors for multicopter and fixedwing
2015-01-15 14:37:50 +01:00
Thomas Gubler
b2366aaa22
Merge remote-tracking branch 'upstream/master' into ros
2015-01-09 08:07:00 +01:00
Lorenz Meier
adbe7246b7
Temporarily disable HoTT support
2015-01-09 07:09:58 +01:00
Thomas Gubler
0893f9fd96
remove uavcan from multiplatform build, problems with linking
2015-01-06 19:13:39 +01:00
Thomas Gubler
3436abdf0b
add multiplatform makefile to work around flash size issues
2015-01-06 11:10:52 +01:00
Thomas Gubler
87650e49e1
Revert "turn off werror for now"
...
This reverts commit 1fe70a845d
.
2015-01-05 16:50:14 +01:00
Thomas Gubler
683b06321c
Revert "uavcan gives compile errors, disable for now"
...
This reverts commit 941ff05720
.
2015-01-05 16:33:57 +01:00
Thomas Gubler
5876ff11ec
mc att control multiplatform alongside normal mc att control
2015-01-05 16:12:22 +01:00
Thomas Gubler
941ff05720
uavcan gives compile errors, disable for now
2015-01-05 15:58:38 +01:00
Thomas Gubler
1fe70a845d
turn off werror for now
2015-01-05 15:22:43 +01:00
Thomas Gubler
16b9f666e7
Merge remote-tracking branch 'upstream/master' into dev_ros
...
Conflicts:
src/lib/mathlib/math/Matrix.hpp
src/modules/mc_att_control/mc_att_control_main.cpp
src/modules/uORB/topics/vehicle_status.h
src/platforms/px4_includes.h
2015-01-05 10:02:07 +01:00
Andrew Tridgell
c9e795156f
makefiles: make it easier to use ccache for build on windows
2014-12-31 11:43:32 +01:00
Andrew Tridgell
6bc6739676
makefiles: removed stray spaces
2014-12-31 11:43:21 +01:00
Thomas Gubler
f4e0dc2857
Merge remote-tracking branch 'upstream/master' into dev_ros
...
Conflicts:
.gitmodules
2014-12-29 08:00:12 +01:00
Lorenz Meier
e952324fbf
Rework HoTT into a proper library, which fixes parallel build breakage
2014-12-26 20:25:31 +01:00
Thomas Gubler
25af4b266c
Merge remote-tracking branch 'upstream/master' into dev_ros
...
Conflicts:
.gitignore
src/lib/uavcan
2014-12-25 09:48:15 +01:00
Daniel Agar
d511e39ea7
turn on -Werror and fix resulting errors
2014-12-22 17:56:59 -05:00
James Goppert
97fdc69473
Added aerocore upload target.
2014-12-18 15:21:29 -05:00
Thomas Gubler
16618f1ada
Merge remote-tracking branch 'upstream/master' into dev_ros
...
Conflicts:
src/examples/subscriber/subscriber_params.c
src/modules/mc_att_control/mc_att_control_main.cpp
src/modules/uORB/topics/vehicle_attitude.h
src/modules/uORB/topics/vehicle_attitude_setpoint.h
src/platforms/px4_middleware.h
2014-12-18 12:11:05 +01:00
Thomas Gubler
851415e48e
Merge commit 'aa40c69853be0dc7e79bc3084472b77f9667c1f1' into dev_ros_mcatt
...
Conflicts:
makefiles/config_px4fmu-v2_test.mk
2014-12-16 10:23:41 +01:00
Thomas Gubler
e1ff89ad61
add nuttx platform to fmuv1 makefile
2014-12-16 10:11:59 +01:00
Thomas Gubler
9520983e08
lots' of header juggling and small changes to make mc att control compile for NuttX and ROS
2014-12-16 08:24:51 +01:00
tumbili
736f57f436
Merge branch 'master' of https://github.com/PX4/Firmware into vtol_merge
2014-12-15 22:34:01 +01:00
Lorenz Meier
ef450cc447
Enable examples by default to ensure they get maintained on API changes
2014-12-12 14:08:41 +01:00
Thomas Gubler
76457e63c5
add nuttx platform to default makefile
2014-12-10 12:38:54 +01:00
Thomas Gubler
52c35a8e20
solve conflict for definiton of FILE
2014-12-06 15:36:58 +01:00
Thomas Gubler
c2e2b3d52f
make param wrapper macros compatible for px4 and ros, needs cleanup
2014-12-03 17:04:15 +01:00