Commit Graph

182 Commits

Author SHA1 Message Date
Roman 3faaeb06d1 attitude setpoint topic: cleanup of matrix class usage
Signed-off-by: Roman <bapstroman@gmail.com>
2016-10-18 20:46:08 +02:00
Lorenz Meier f1e5fe9b39 Fix isfinite compilation for fixed wing example 2016-10-18 20:46:08 +02:00
Lorenz Meier 57f193174c Fix mc att control multiplatform 2016-10-18 20:46:08 +02:00
Lorenz Meier 5d9c91dece Convert fixed wing example to quaternions 2016-10-18 20:46:08 +02:00
Lorenz Meier 526fb8f515 Remove q_valid flag from attitude topic 2016-10-18 20:46:08 +02:00
Beat Küng d349bd570f ekf examples: remove unused variable 2016-10-18 20:46:08 +02:00
Lorenz Meier ac936a28dd Update examples 2016-10-18 20:46:08 +02:00
tumbili 56b2fd0257 fixed rover example 2016-10-18 20:46:08 +02:00
tumbili 0d0fa133e6 remove comments 2016-10-18 20:46:08 +02:00
Roman eb18622d85 added old ekf attitude estimator back to config and made changes so it compiles 2016-10-18 20:46:08 +02:00
Roman b8a219d351 removed comments and fixed some euler bugs 2016-10-18 20:46:08 +02:00
tumbili 5e0e522903 adapted to new vehicle attitude message 2016-10-18 20:46:08 +02:00
Beat Küng ce0d31b7d9 mavlink log: ensure all critical & emergency msgs are also logged to console & ulog
Critical messages that the user sees should also go to the log file, so
that the exact error (with time) can later be analyzed from the log file.
2016-09-30 13:50:51 +02:00
Beat Küng 241fd629ce ERROR macro: get rid of the many 'oddly, ERROR is not defined for c++', use PX4_ERROR 2016-09-30 13:50:51 +02:00
Julian Oes 8ff237c69f Remove size optimization for individual modules
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
Beat Küng e6391189bc px4_simple_app: update printf to latest format version 2016-09-06 10:41:46 +02:00
Lorenz Meier cf776aeb0a Fix compilation of examples 2016-08-07 10:40:17 +02:00
Lorenz Meier cba4bcd2fb Multiplatform controllers: Move to examples and fix code style 2016-08-07 10:40:17 +02:00
Lorenz Meier ee5cdab963 Move old estimators to examples 2016-08-07 10:40:17 +02:00
Beat Küng 9c73eae941 sensor_combined: replace accel & gyro integral with value, use float for dt
Reason: the value is easier to read & handle (for example plotting). In
most places the value is needed, not the integral.

Note that this breaks the replay format for sdlog2 replay
2016-07-07 11:35:50 +02:00
Beat Küng d846ad5dac sensors: move voting into sensors module
- voting is now at a central place instead of duplicated within the
  estimators
  -> this also means that estimators that did not do voting so far,
     now have voting, like ekf2
- estimators requiring more than that can still subscribe to the raw
  sensors
- allows sensors_combined to be 3 times smaller
  - reduces logger, memcpy (cache) & RAM overhead
- all modules requiring only 1 or 2 sensor values now automatically get
  the voted result
- this also adds voting to baro
2016-07-07 11:35:50 +02:00
Beat Küng b4ecc5a8d9 sensor_combined cleanup: remove many unneeded fields
Decreases the message size from 780 to 280 bytes.
In particular, all modules using sensor_combined must use the integral now.
The sensor value can easily be reconstructed by dividing with dt.

Voters now need to be moved into sensors module, because error count and
priority is removed from the topic.

Any module that requires additional data from a sensor can subscribe to
the raw sensor topics.

At two places, values are set to zero instead of subscribing to the raw
sensors (with the assumption that no one reads them):
- mavlink mavlink_highres_imu_t::abs_pressure
- sdlog2: sensor temperatures
2016-07-07 11:35:50 +02:00
Beat Küng 8a12dee125 cmake: remove all module.mk files & cmake conversion script (#4918)
It seems these files are leftovers.
2016-06-28 09:26:36 +02:00
Daniel Agar 76387b1693 uorb autogeneration 2016-05-14 11:27:07 +02:00
James Goppert 967e4dd127 Modified cmake to use STACK_MAX and STACK_MAIN 2016-04-14 13:36:36 -04:00
Daniel Agar 51cd8ce1ff subscriber example param @unit 2016-03-14 09:10:29 +01:00
Lorenz Meier 2e9cec5b06 Simple app: Use enough stack 2016-01-05 19:01:16 +01:00
Lorenz Meier 669f8bf098 Matlab example: Use enough stack 2016-01-05 19:01:16 +01:00
Lorenz Meier 7c8a2a1e18 HW test example: Use enough stack 2016-01-05 19:01:16 +01:00
Lorenz Meier 977aee9f62 Simple app: fix code style 2015-12-23 09:38:21 +01:00
Lorenz Meier 8b76d5e941 Update simple app example to use multiplatform API 2015-12-23 09:12:29 +01:00
Lorenz Meier 7ce0cbd8cb Complete HW test instructions 2015-10-16 09:51:31 +02:00
Lorenz Meier a1d6cfcfb7 Remove old module.mk files to not confuse new users 2015-10-08 10:58:34 +02:00
Lorenz Meier 75dfa5a420 Remove outdated flow position estimator 2015-09-12 09:53:36 +02:00
James Goppert bf18c84652 Cleanup of module building. 2015-09-09 23:00:58 -04:00
James Goppert 1d6b31d196 Switch to cmake build system. 2015-09-07 20:37:45 -04:00
Daniel Agar 0a4a1fc991 format src/examples/subscriber 2015-09-05 12:21:10 -04:00
Daniel Agar 9dd8864a1b format src/examples/rover_steering_control 2015-09-05 12:21:10 -04:00
Daniel Agar 293739ce20 format src/examples/px4_daemon_app 2015-09-05 12:21:10 -04:00
Daniel Agar ad456bb7f2 format src/examples/publisher 2015-09-05 12:21:10 -04:00
Daniel Agar a7056892f3 format src/examples/matlab_csv_serial 2015-09-05 12:21:09 -04:00
Daniel Agar d2db6855ad format src/examples/flow_position_estimator 2015-09-05 12:21:09 -04:00
Daniel Agar 50d74e00ec format src/examples/fixedwing_control 2015-09-05 12:21:09 -04:00
Lorenz Meier 53d4c5473f Merge beta in master 2015-08-23 11:21:38 +02:00
Lorenz Meier 0d44510f67 Examples: Fix copyright 2015-08-23 10:12:40 +02:00
Mark Charlebois a734fc96d1 extensive orb_advert_t fixes
The calls to orb_advertise were being mishandled throughout the code.
There were ::close() calls on memory pointers, there were checks
against < 0 when it is a pointer to a object and values larger than
0x7ffffffff are valid. Some places orb_advert_t variables were
being initialized as 0 other places as -1.

The orb_advert_t type was changed to uintptr_t so the pointer value
would not be wrapped as a negative number. This was causing a failure
on ARM.

Tests for < 0 were changed to == 0 since a null pointer is the valid
representation for error, or uninitialized.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-27 14:41:33 -07:00
Mark Charlebois 95de7c2e94 ROS: Fixes for print of uint64_t type
Changed printf to use PRIu64

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-19 11:14:40 -07:00
Mark Charlebois ce96329f95 Resolve printing uint64 types
Using %llu or %lu will break one of the build targets. The "right way"
to print a uint64_t is via the PRIU64 macro defined in C99.

This wasn't defined for the NuttX compiler so it was added to px4_defines.h
for NuttX.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-19 11:04:39 -07:00
Mark Charlebois 0f5cb75692 ROS: Fixes for ROS build
The ROS build included some files that used isfinite vs PX4_ISFINITE.

The AppState class also needed to be supported for ROS.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-05-19 10:41:15 -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