Commit Graph

574 Commits

Author SHA1 Message Date
Lorenz Meier cc499fcc29 Enable Q attitude estimator and INAV 2015-06-21 17:20:31 -07:00
Mark Charlebois 84bf4bb6bb Use ?= for MK_DIR in firmware.mk
APU requires the use of ?= for MK_DIR but the use of lastword was
causing MK_DIR to be a subdir of makefiles. Changed lastword to
firstword (which is always the path to firmware.mk) which fixed
the problem.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-16 09:58:48 -07:00
Mark Charlebois 26d2589e97 makefile cleanup
Moved nuttx specific make rules to files in makefiles/nuttx.

All target specific makefiles are in their target sub directories.

To minimize file duplication, targets that share rules include a
common file. For example the posix and posix-arm targets both use
makefiles/posix/posix_elf.mk

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-16 09:58:48 -07:00
Mark Charlebois 729653ba71 SITL: changed posix_default to posix_sitl
The SITL build is now the default posix build.

The linker script for posix was moved to makefiles/posix.
The rc.S file was moved to posix-configs/SITL/init/
The POSIXTEST board definition is now SITL

To run the SITL test run:

make sitlrun

This replaces the make posixrun target.

The build directory is now Build/posix_sitl.build/

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-15 09:51:07 -07:00
David Sidrane 447b93c090 Add size Makefile target for elf 2015-06-13 06:07:57 -10:00
Lorenz Meier b06a533555 OS X porting: Make unit tests compile on OS X 2015-06-13 11:07:17 +02:00
Lorenz Meier c9fefe236b Merged release into master 2015-06-13 11:06:01 +02:00
David Sidrane 428611119f Merged GIT version changes 2015-06-12 19:32:55 +02:00
David Sidrane 5acc4ee43b Back Port of Git Versioning - without side effects Part 2 2015-06-12 06:54:04 -10:00
David Sidrane 17fddb1556 Back Port of Git Versioning - without side effects Part 1 2015-06-12 06:49:15 -10:00
Mark Charlebois e4a8f32f1b QuRT: Added HRT workqueues as per POSIX
A high rate workqueue is required that acts like an interrupt handler
for a HW timer.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-11 18:13:36 -07:00
Mark Charlebois 83bcb95999 POSIX: Added sleep command
The baro was not fully initialized when the sensors module tried to
open it. Added a sleep command and a sleep 2 to rc.S so the baro
is initialized by the time the sensors module tried to read it.

Fixed other noisy errors

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-11 17:28:46 -07:00
Mark Charlebois 4d28126e0a Nuttx: remove use of std::string, std::map, std::set
Nuttx complains about an unresolved _impure_ptr at link time.
This is a known issue when using STL templates in NuttX on ARM.

Created new ORBMap and ORBSet classes for NuttX.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-09 18:56:28 -07:00
Mark Charlebois cb231e89f6 QuRT: Changes to enable qurt target to build
QuRT doesn't support unlink and does not provide getpid().
The DSPAL layer provides access to usleep so an implementation is
no longer needed.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-08 22:22:00 -07:00
Mark Charlebois 58e263d534 Added posix-arm target and refactored toolchain_* files
The toolchain_* files are target OS specific so they were moved to
the target OS subdir.

The gcc_version.* files are only cleared once per make instantiation so
a build that creates multiple HW targets will try to link with an
incompatible .o file (i.e. x86 build linking ARM .o).  I created
posix-arm as a separate target to fix this problem.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-08 22:21:59 -07:00
Mark Charlebois 6cb26de74c Multi-uORB support changes - part 1
This adds support for a dynamic build for QuRT and initial
Multi-uORB changes to enable communication between the DSP and
the application processor.

This part of the changes do not affect the POSIX build. This is
enablement for the QuRT build using Multi-uORB. The second part
of the changes will be added in a new module under src/modules.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-06-08 22:21:59 -07:00
tumbili dc2dc9920f build gpssim 2015-06-08 22:21:59 -07:00
David Sidrane 68276ff345 Back Port from Master - Changes to build on latest uavcan master with FW upload and Node ID 2015-06-05 06:43:10 -10:00
Roman e6ec33787f build navigator and controllib for posix 2015-06-01 11:12:59 +02:00
Lorenz Meier 4565f57468 Merged release_v1.0.0 into master 2015-05-27 15:28:41 -07:00
Ban Siesta 9eb7409f46 makefiles: getting rid of gpio_tool again, this was a leftover from debugging 2015-05-24 09:53:21 +01:00
Ban Siesta bd48ef0386 Merge remote-tracking branch 'px4/pr/2196' into lidar_tests 2015-05-24 09:40:03 +01:00
Mark Whitehorn 71e40c2e16 compile in ekf_att_pos and Q att estimators 2015-05-21 10:28:35 -06:00
Mark Whitehorn aa4bdd2af3 change fmuv1 default config to INAV and att_estimator_q 2015-05-21 10:28:35 -06:00
Mark Charlebois 43345e29dc Makefile multi-target support
NuttX is still the default target and all NuttX configs can still
be built with:

make

Individual NuttX, POSIX, and QuRT configs can now be built more
easily by specifying the target and configs:

make posix posix_default
make qurt qurt_hello
make nuttx aerocore_default

Running make with just the target will make all the configs for
that target:

make nuttx
make qurt
make posix

The help is also target specific:
make nuttx help
make qurt help
make posix help

"make help" will still assume you want help for the NuttX target

Added a new QuRT config called qurt_hello as a sample config to
test buiding in different commands for separate configs.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-20 19:19:08 -07:00
Mark Charlebois eaef0db7d6 Logging fixes and enhancements
Made the logging macros generic so they can be used for multiple targets.

Fixed toolchain_native.mk so err.h is included from src/systemlib for posix.

Reduced debug output for uORB.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-19 11:53:19 -07:00
Max Shvetsov dbe58d6165 [pwm_input] reset feature added
publication to range_finder topic added
2015-05-19 12:40:42 +03:00
Mark Charlebois 466db74d29 QuRT: Added define so pthread functions are enabled
Added -D__QDSP6_DINKUM_PTHREAD_TYPES__ to makefiles/toolchain_hexagon.mk
so the pthreads functions are properly defined.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-18 12:21:53 -07:00
Mark Charlebois 9f391b1867 NuttX: fixes for NuttX build
In the upstream tree ringbuffer.h includes the method implementations
in the header file which causes multiple definitions in the link for
other targets. Changed so ringbuffer.cpp is build separately for other
platforms and is included by ringbuffer.h on NuttX.

uORB changes do not link without uORBTest_UnitTest.cpp enabled for
the NuttX build.

px4_getopt was not exported and wasn't visible in NuttX build.

The makefiles were restored to be as close as possible to upstream
so the NuttX build builtin's work again. The code will have to be
refactored after the merge.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-15 12:56:18 -07:00
Mark Charlebois a3a0d0612c QuRT: enabled more modules
rgbled is now enabled.

Saving parameters causes a crash so those commands are not enabled.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-14 09:45:03 -07:00
tumbili cfa0073c35 build mc_pos_control 2015-05-14 14:58:46 +02:00
Mark Charlebois b2c12ff522 QuRT: added stub for inclusion of libdspal.a
libdspal.a is still incomplete and so is not yet used

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-13 18:49:00 -07:00
Mark Charlebois 8e346a06fb QuRT: enable uORB, and simulator
uORB, the simulator and simulated devices now run

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-13 18:03:08 -07:00
Mark Charlebois 884f62878d QuRT: pthread API now working
The use of std::map and static initialization was an issue.

The code was refactored to not use static initialization.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-13 16:21:52 -07:00
Mark Charlebois 3db5f3bb3b QuRT: toolchain changes
Reworking toolchain and main.cpp for QuRT to a final link can be
done and the apps.h file is autogenerated.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-12 11:37:28 -07:00
Mark Charlebois 84ca66dcf7 QuRT: updated task support based on posix fixes
The posix layer implementations should work on QuRT.

QuRT needs to provide a way for getting the current time.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-07 22:58:51 -07:00
Mark Charlebois 8caefc183d QuRT: updated toolchain file to link against libdspal.a
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-07 13:23:45 -07:00
Mark Charlebois 632f77df49 QuRT: add drivers/led
The drivers/led module was missing from the QuRT config

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-07 11:55:24 -07: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
Mark Charlebois 04b564920f POSIX: Make binutils BDF linker the default
ld.gold does not support the -Ur flags and it seems some people have
ld as a link to ld.gold.

Made LD = ld.bfd to avoid confusion.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 15:44:37 -07:00
Mark Charlebois 872e1ebda0 GCC fixes for warnings
GCC was more picky about prototypes for inlines being required.

The generate_listener.py script used incorrect printf formats and
was casting %f params to float, but printf casts all %f params to
double per the spec.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-06 11:45:23 -07:00
Mark Charlebois b7918ee45a Nuttx: remove -Wframe-larger-than=1024
The build fails when modules override this flag with a larger value,
and this lower value is still checked. The new flag seems to be in
addition to the old flag, not a replacement.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-05 12:16:23 -07:00
Mark Charlebois 0cea93a55c POSIX and QuRT: fixed calls needing px4_ prefix
There were some missed calls to open and ioctl that need to be
px4_open and px4_ioctl.

QuRT also does not provide usleep() so px4_time.h has to be included
in files calling usleep.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-05 12:13:39 -07:00
Lorenz Meier 6c859245e2 Merge pull request #2013 from PX4/attitude_estimator_q
attitude_estimator_q added
2015-05-05 20:29:51 +02:00
Mark Charlebois 7ac9fc38e4 Commented out 1st definition of MAVLINK_SRC
The variable MAVLINK_SRC was defined and then redefined.
Commented out the first definition and moved beside that overriding
definition for visibility.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-04 15:48:06 -07:00
Mark Charlebois cfd96a8ab4 POSIX: Added missing include path and -Wno-packed flag
The changes to the simulator added an include of

mavlink/include/v1.0/... to simulator.h which was not in the included paths.

The included header file also causes clang to issue a -Wpacked warning that
had to be silenced.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-04 15:33:08 -07:00
Thomas Gubler 07f6165290 make parameter parser work with python3 2015-05-04 14:04:09 +02:00
Mark Charlebois 1a8bd15d98 Minor cleanup of mixer changes
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-03 11:20:07 -07:00
Mark Charlebois 5557ecf3d7 POSIX: Added airspeed simulator
This seems to be a dependency for the system to start up.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-30 13:16:03 -07:00
Mark Charlebois 58595e2e78 QuRT: fixed hard coded path in toolchain_hexagon.mk
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-27 16:21:30 -07:00